Skip to content

Commit

Permalink
Marking simplifications that preserve definedness (#4662)
Browse files Browse the repository at this point in the history
For the booster-with-remainders to be fully operational and therefore
the dependency on Kore be reduced, the simplifications that contain
partial functions but which we know preserve definedness must be marked
as such.
  • Loading branch information
PetarMax authored Oct 17, 2024
1 parent 6b2534d commit 2d26b93
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions k-distribution/include/kframework/builtin/domains.md
Original file line number Diff line number Diff line change
Expand Up @@ -1366,10 +1366,10 @@ module INT-SYMBOLIC [symbolic]
rule X %Int N => X requires 0 <=Int X andBool X <Int N [simplification]
// Bit-shifts
rule X <<Int 0 => X [simplification]
rule 0 <<Int _ => 0 [simplification]
rule X >>Int 0 => X [simplification]
rule 0 >>Int _ => 0 [simplification]
rule X <<Int 0 => X [simplification, preserves-definedness]
rule 0 <<Int Y => 0 requires 0 <=Int Y [simplification, preserves-definedness]
rule X >>Int 0 => X [simplification, preserves-definedness]
rule 0 >>Int Y => 0 requires 0 <=Int Y [simplification, preserves-definedness]
endmodule
module INT-SYMBOLIC-KORE [symbolic, haskell]
Expand Down

0 comments on commit 2d26b93

Please sign in to comment.