Skip to content

Commit 508d58b

Browse files
committed
test/check-implication/issue-1665-spec.k
1 parent 2a7f0e0 commit 508d58b

File tree

4 files changed

+23
-4
lines changed

4 files changed

+23
-4
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
module VERIFICATION
2+
import TEST
3+
4+
rule begin X => end fun(X)
5+
6+
endmodule
7+
8+
module ISSUE-1665-SPEC
9+
import VERIFICATION
10+
11+
// Proving this claim requires recognizing that #Not(#Ceil(fun(_))) makes the
12+
// left-hand side #False.
13+
//
14+
rule <k> begin X => end ?_ </k>
15+
16+
endmodule
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
#True
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
module VERIFICATION
22
import TEST
3+
4+
rule begin _ => end 0
5+
36
endmodule
47

58
module ISSUE-1916-SPEC
@@ -8,5 +11,5 @@ module ISSUE-1916-SPEC
811
// Proving this claim requires that the right-hand side is simplified using
912
// the conditions from the left-hand side.
1013
//
11-
rule <k> begin => end </k> requires isFun(X) ensures true #And #Ceil(fun(X))
14+
rule <k> begin _ => end ?_ </k> requires isFun(X) ensures true #And #Ceil(fun(X))
1215
endmodule

test/check-implication/test.k

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
module TEST-SYNTAX
22
import INT
33

4-
syntax Pgm ::= "begin" | "end"
4+
syntax Pgm ::= "begin" Int [unused]
5+
syntax Pgm ::= "end" Int [unused]
56
syntax Int ::= fun(Int) [function, no-evaluators]
67
syntax Bool ::= isFun(Int) [function, functional, no-evaluators]
78

@@ -12,8 +13,6 @@ module TEST
1213

1314
configuration <k> $PGM:Pgm </k>
1415

15-
rule begin => end
16-
1716
rule [ceil-fun]: #Ceil(fun(X:Int)) => #True requires isFun(X) [anywhere, simplification]
1817

1918
endmodule

0 commit comments

Comments
 (0)