diff options
Diffstat (limited to 'Test/test0/PrettyPrint.bpl')
-rw-r--r-- | Test/test0/PrettyPrint.bpl | 134 |
1 files changed, 67 insertions, 67 deletions
diff --git a/Test/test0/PrettyPrint.bpl b/Test/test0/PrettyPrint.bpl index c79eff80..faa6bfd1 100644 --- a/Test/test0/PrettyPrint.bpl +++ b/Test/test0/PrettyPrint.bpl @@ -1,67 +1,67 @@ -// RUN: %boogie -pretty:0 -noVerify -printInstrumented "%s" > "%t"
-// RUN: %diff "%s.expect" "%t"
-const x: int;
-const y: int;
-const z: int;
-const r: real;
-const s: real;
-const t: real;
-const P: bool;
-const Q: bool;
-const R: bool;
-
-axiom x * (y + z) == x + (y * z);
-axiom (x * y) + z == (x + y) * z;
-
-axiom x * y * z == (x * (y * z));
-axiom (x * y) * (z * x) == (x * y) * z;
-
-axiom x div y div z == (x div (y div z));
-axiom (x div y) div (z div x) == (x div y) div z;
-
-axiom x + y mod z == ((y mod z) + x);
-axiom (x + y) mod z == (x mod z) + (y mod z);
-
-axiom x / y / z == (x / (y / z));
-axiom (x / y) / (z / x) == (x / y) / z;
-axiom x / s / z == (x / (s / z));
-axiom (x / s) / (z / x) == (x / s) / z;
-axiom r / s / t == (r / (s / t));
-axiom (r / s) / (t / r) == (r / s) / t;
-
-axiom ((r * s) / t) == r * s / t;
-axiom ((r / s) * t) == (r / s) * t;
-
-axiom (r * s) ** t == (r ** t) * (s ** t);
-axiom r ** (s + t) == r ** s * r ** t;
-
-axiom int(real(x)) == x;
-axiom r >= 0.0 ==> real(int(r)) <= r;
-axiom int(0e-3 - 0.02) == 0;
-axiom int(0e2 - 3.5e1) == -35;
-axiom int(27e-1) == 2;
-
-axiom x - y - z == (x - (y - z));
-axiom (x - y) - (z - x) == (x - y) - z;
-
-axiom x + y - z - x + y == 0;
-axiom ((((x + y) - z) - x) + y) == (x + (y - (z - (x + y))));
-
-axiom P ==> Q ==> R <==> (P ==> (Q ==> R));
-axiom ((P ==> Q) ==> (R ==> P)) == ((P ==> Q) ==> R);
-
-axiom P <==> Q <==> R;
-axiom P ==> Q <==> Q ==> R <==> R ==> P;
-
-axiom (P && Q) || (Q && R);
-axiom (P || Q) && (Q || R);
-axiom (P || Q) || (Q || R);
-axiom (P && Q) && (Q && R);
-
-// -------------- quantifier key-value decorations
-
-function f(int) returns (int);
-
-axiom (forall x: int :: {:xname "hello"}
- { :weight 5} {f(x+x)} {:ValueFunc f(x+1) } {f(x)*f(x)} {:nopats f(x+x+x)}
- f(f(x)) < 200);
+// RUN: %boogie -pretty:0 -noVerify -printInstrumented "%s" > "%t" +// RUN: %diff "%s.expect" "%t" +const x: int; +const y: int; +const z: int; +const r: real; +const s: real; +const t: real; +const P: bool; +const Q: bool; +const R: bool; + +axiom x * (y + z) == x + (y * z); +axiom (x * y) + z == (x + y) * z; + +axiom x * y * z == (x * (y * z)); +axiom (x * y) * (z * x) == (x * y) * z; + +axiom x div y div z == (x div (y div z)); +axiom (x div y) div (z div x) == (x div y) div z; + +axiom x + y mod z == ((y mod z) + x); +axiom (x + y) mod z == (x mod z) + (y mod z); + +axiom x / y / z == (x / (y / z)); +axiom (x / y) / (z / x) == (x / y) / z; +axiom x / s / z == (x / (s / z)); +axiom (x / s) / (z / x) == (x / s) / z; +axiom r / s / t == (r / (s / t)); +axiom (r / s) / (t / r) == (r / s) / t; + +axiom ((r * s) / t) == r * s / t; +axiom ((r / s) * t) == (r / s) * t; + +axiom (r * s) ** t == (r ** t) * (s ** t); +axiom r ** (s + t) == r ** s * r ** t; + +axiom int(real(x)) == x; +axiom r >= 0.0 ==> real(int(r)) <= r; +axiom int(0e-3 - 0.02) == 0; +axiom int(0e2 - 3.5e1) == -35; +axiom int(27e-1) == 2; + +axiom x - y - z == (x - (y - z)); +axiom (x - y) - (z - x) == (x - y) - z; + +axiom x + y - z - x + y == 0; +axiom ((((x + y) - z) - x) + y) == (x + (y - (z - (x + y)))); + +axiom P ==> Q ==> R <==> (P ==> (Q ==> R)); +axiom ((P ==> Q) ==> (R ==> P)) == ((P ==> Q) ==> R); + +axiom P <==> Q <==> R; +axiom P ==> Q <==> Q ==> R <==> R ==> P; + +axiom (P && Q) || (Q && R); +axiom (P || Q) && (Q || R); +axiom (P || Q) || (Q || R); +axiom (P && Q) && (Q && R); + +// -------------- quantifier key-value decorations + +function f(int) returns (int); + +axiom (forall x: int :: {:xname "hello"} + { :weight 5} {f(x+x)} {:ValueFunc f(x+1) } {f(x)*f(x)} {:nopats f(x+x+x)} + f(f(x)) < 200); |