| author | wenzelm |
| Tue, 08 Apr 2014 12:19:33 +0200 | |
| changeset 56462 | b64b0cb845fe |
| parent 56111 | 5b76e1790c38 |
| child 56727 | 75f4fdafb285 |
| permissions | -rw-r--r-- |
| 56111 | 1 |
7a16ef230bca5702aa346494226903ec25809d32 6 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4 |
(proof |
| 56111 | 5 |
(let ((@x28 (rewrite (= (not true) false)))) |
6 |
(mp (asserted (not true)) @x28 false)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
7 |
|
| 56111 | 8 |
27731fc512042f0ea1785a47796a8bfd64c4a8cf 7 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
9 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
10 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
11 |
(proof |
| 56111 | 12 |
(let ((@x34 (monotonicity (rewrite (= (or |p$| (not |p$|)) true)) (= (not (or |p$| (not |p$|))) (not true))))) |
13 |
(let ((@x38 (trans @x34 (rewrite (= (not true) false)) (= (not (or |p$| (not |p$|))) false)))) |
|
14 |
(mp (asserted (not (or |p$| (not |p$|)))) @x38 false))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
15 |
|
| 56111 | 16 |
5330fb77bfecb903300c8a50f577df102088abaa 9 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
17 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
18 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
19 |
(proof |
| 56111 | 20 |
(let ((@x34 (monotonicity (rewrite (= (and |p$| true) |p$|)) (= (= (and |p$| true) |p$|) (= |p$| |p$|))))) |
21 |
(let ((@x38 (trans @x34 (rewrite (= (= |p$| |p$|) true)) (= (= (and |p$| true) |p$|) true)))) |
|
22 |
(let ((@x41 (monotonicity @x38 (= (not (= (and |p$| true) |p$|)) (not true))))) |
|
23 |
(let ((@x45 (trans @x41 (rewrite (= (not true) false)) (= (not (= (and |p$| true) |p$|)) false)))) |
|
24 |
(mp (asserted (not (= (and |p$| true) |p$|))) @x45 false))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
25 |
|
| 56111 | 26 |
c2e74b12f4c731d0ea3ac811d94ac5a723029e93 13 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
27 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
28 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
29 |
(proof |
| 56111 | 30 |
(let (($x8 (not |p$|))) |
| 56109 | 31 |
(let (($x7 (or |p$| |q$|))) |
| 56111 | 32 |
(let (($x9 (and $x7 $x8))) |
33 |
(let ((@x39 (monotonicity (rewrite (= (=> $x9 |q$|) (or (not $x9) |q$|))) (= (not (=> $x9 |q$|)) (not (or (not $x9) |q$|)))))) |
|
34 |
(let ((@x40 (|not-or-elim| (mp (asserted (not (=> $x9 |q$|))) @x39 (not (or (not $x9) |q$|))) $x9))) |
|
35 |
(let ((@x43 (|and-elim| @x40 $x8))) |
|
36 |
(let ((@x45 (|not-or-elim| (mp (asserted (not (=> $x9 |q$|))) @x39 (not (or (not $x9) |q$|))) (not |q$|)))) |
|
37 |
(let ((@x41 (|and-elim| @x40 $x7))) |
|
38 |
(|unit-resolution| @x41 @x45 @x43 false))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
39 |
|
| 56111 | 40 |
800409db22b453674c1b66520bda2d5bafbf81b4 11 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
41 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
42 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
43 |
(proof |
| 56109 | 44 |
(let (($x10 (and |c$| |d$|))) |
45 |
(let (($x7 (and |a$| |b$|))) |
|
| 56111 | 46 |
(let (($x11 (or $x7 $x10))) |
47 |
(let (($x12 (=> $x11 $x11))) |
|
48 |
(let (($x13 (not $x12))) |
|
49 |
(let ((@x43 (trans (monotonicity (rewrite (= $x12 true)) (= $x13 (not true))) (rewrite (= (not true) false)) (= $x13 false)))) |
|
50 |
(mp (asserted $x13) @x43 false))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
51 |
|
| 56111 | 52 |
8ba22a36afac456bfdc7db71e8b371143686dc86 23 0 |
| 56109 | 53 |
unsat |
54 |
((set-logic AUFLIA) |
|
55 |
(proof |
|
| 56111 | 56 |
(let (($x11 (and |p1$| |p3$|))) |
57 |
(let (($x10 (and |p3$| |p2$|))) |
|
58 |
(let (($x12 (or $x10 $x11))) |
|
59 |
(let (($x13 (=> |p1$| $x12))) |
|
60 |
(let (($x14 (or $x13 |p1$|))) |
|
61 |
(let (($x7 (and |p1$| |p2$|))) |
|
62 |
(let (($x9 (or $x7 |p3$|))) |
|
63 |
(let (($x15 (=> $x9 $x14))) |
|
| 56109 | 64 |
(let (($x16 (not $x15))) |
| 56111 | 65 |
(let (($x38 (not |p1$|))) |
66 |
(let (($x39 (or $x38 $x12))) |
|
67 |
(let (($x42 (or $x39 |p1$|))) |
|
68 |
(let (($x48 (not $x9))) |
|
69 |
(let (($x49 (or $x48 $x42))) |
|
70 |
(let (($x54 (not $x49))) |
|
71 |
(let ((@x65 (trans (monotonicity (rewrite (= $x49 true)) (= $x54 (not true))) (rewrite (= (not true) false)) (= $x54 false)))) |
|
72 |
(let ((@x47 (monotonicity (monotonicity (rewrite (= $x13 $x39)) (= $x14 $x42)) (= $x15 (=> $x9 $x42))))) |
|
73 |
(let ((@x56 (monotonicity (trans @x47 (rewrite (= (=> $x9 $x42) $x49)) (= $x15 $x49)) (= $x16 $x54)))) |
|
74 |
(mp (asserted $x16) (trans @x56 @x65 (= $x16 false)) false))))))))))))))))))))) |
|
| 56109 | 75 |
|
| 56111 | 76 |
9d0d2643780c0052a3bf06c1fd96112084da5890 24 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
77 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
78 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
79 |
(proof |
| 56109 | 80 |
(let (($x6 (= |p$| |p$|))) |
81 |
(let (($x7 (= $x6 |p$|))) |
|
82 |
(let (($x8 (= $x7 |p$|))) |
|
83 |
(let (($x9 (= $x8 |p$|))) |
|
84 |
(let (($x10 (= $x9 |p$|))) |
|
85 |
(let (($x11 (= $x10 |p$|))) |
|
86 |
(let (($x12 (= $x11 |p$|))) |
|
87 |
(let (($x13 (= $x12 |p$|))) |
|
88 |
(let (($x14 (= $x13 |p$|))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
89 |
(let (($x15 (not $x14))) |
| 56111 | 90 |
(let ((@x38 (rewrite (= $x6 true)))) |
91 |
(let ((@x43 (rewrite (= (= true |p$|) |p$|)))) |
|
92 |
(let ((@x45 (trans (monotonicity @x38 (= $x7 (= true |p$|))) @x43 (= $x7 |p$|)))) |
|
93 |
(let ((@x51 (monotonicity (trans (monotonicity @x45 (= $x8 $x6)) @x38 (= $x8 true)) (= $x9 (= true |p$|))))) |
|
94 |
(let ((@x57 (trans (monotonicity (trans @x51 @x43 (= $x9 |p$|)) (= $x10 $x6)) @x38 (= $x10 true)))) |
|
95 |
(let ((@x61 (trans (monotonicity @x57 (= $x11 (= true |p$|))) @x43 (= $x11 |p$|)))) |
|
96 |
(let ((@x67 (monotonicity (trans (monotonicity @x61 (= $x12 $x6)) @x38 (= $x12 true)) (= $x13 (= true |p$|))))) |
|
97 |
(let ((@x73 (trans (monotonicity (trans @x67 @x43 (= $x13 |p$|)) (= $x14 $x6)) @x38 (= $x14 true)))) |
|
98 |
(let ((@x80 (trans (monotonicity @x73 (= $x15 (not true))) (rewrite (= (not true) false)) (= $x15 false)))) |
|
99 |
(mp (asserted $x15) @x80 false)))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
100 |
|
| 56111 | 101 |
63439e1fd6656fc5a2376d7e5f00d0dd92c536a2 34 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
102 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
103 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
104 |
(proof |
| 56111 | 105 |
(let (($x98 (not |b$|))) |
106 |
(let (($x17 (not |c$|))) |
|
107 |
(let (($x36 (or |p$| (and |q$| (not |q$|))))) |
|
108 |
(let (($x37 (and (not |p$|) $x36))) |
|
109 |
(let (($x38 (or |c$| $x37))) |
|
110 |
(let (($x39 (not $x38))) |
|
111 |
(let ((@x120 (monotonicity (rewrite (= (and |q$| (not |q$|)) false)) (= $x36 (or |p$| false))))) |
|
112 |
(let ((@x127 (monotonicity (trans @x120 (rewrite (= (or |p$| false) |p$|)) (= $x36 |p$|)) (= $x37 (and (not |p$|) |p$|))))) |
|
113 |
(let ((@x131 (trans @x127 (rewrite (= (and (not |p$|) |p$|) false)) (= $x37 false)))) |
|
114 |
(let ((@x138 (trans (monotonicity @x131 (= $x38 (or |c$| false))) (rewrite (= (or |c$| false) |c$|)) (= $x38 |c$|)))) |
|
115 |
(let ((@x143 (mp (asserted $x39) (monotonicity @x138 (= $x39 $x17)) $x17))) |
|
116 |
(let (($x101 (or $x98 |c$|))) |
|
117 |
(let ((@x93 (monotonicity (rewrite (= (or |x$| (not |x$|)) true)) (= (and |b$| (or |x$| (not |x$|))) (and |b$| true))))) |
|
118 |
(let ((@x97 (trans @x93 (rewrite (= (and |b$| true) |b$|)) (= (and |b$| (or |x$| (not |x$|))) |b$|)))) |
|
119 |
(let ((@x103 (monotonicity (monotonicity @x97 (= (not (and |b$| (or |x$| (not |x$|)))) $x98)) (= (or (not (and |b$| (or |x$| (not |x$|)))) |c$|) $x101)))) |
|
120 |
(let ((@x106 (mp (asserted (or (not (and |b$| (or |x$| (not |x$|)))) |c$|)) @x103 $x101))) |
|
121 |
(let (($x108 (not |d$|))) |
|
122 |
(let (($x111 (or $x108 |c$|))) |
|
123 |
(let ((@x110 (monotonicity (rewrite (= (or |d$| false) |d$|)) (= (not (or |d$| false)) $x108)))) |
|
124 |
(let ((@x116 (mp (asserted (or (not (or |d$| false)) |c$|)) (monotonicity @x110 (= (or (not (or |d$| false)) |c$|) $x111)) $x111))) |
|
125 |
(let (($x64 (or |a$| |b$| |c$| |d$|))) |
|
126 |
(let ((@x67 (mp (asserted (or |a$| (or |b$| (or |c$| |d$|)))) (rewrite (= (or |a$| (or |b$| (or |c$| |d$|))) $x64)) $x64))) |
|
127 |
(let ((@x160 (|unit-resolution| @x67 (|unit-resolution| @x106 @x143 $x98) @x143 (|unit-resolution| @x116 @x143 $x108) |a$|))) |
|
128 |
(let (($x81 (not |a$|))) |
|
129 |
(let (($x84 (or $x81 |b$|))) |
|
130 |
(let ((@x76 (monotonicity (rewrite (= (and |c$| $x17) false)) (= (or |a$| (and |c$| $x17)) (or |a$| false))))) |
|
131 |
(let ((@x80 (trans @x76 (rewrite (= (or |a$| false) |a$|)) (= (or |a$| (and |c$| $x17)) |a$|)))) |
|
132 |
(let ((@x86 (monotonicity (monotonicity @x80 (= (not (or |a$| (and |c$| $x17))) $x81)) (= (or (not (or |a$| (and |c$| $x17))) |b$|) $x84)))) |
|
133 |
(let ((@x89 (mp (asserted (or (not (or |a$| (and |c$| $x17))) |b$|)) @x86 $x84))) |
|
134 |
(|unit-resolution| @x89 @x160 (|unit-resolution| @x106 @x143 $x98) false)))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
135 |
|
| 56111 | 136 |
c1a1d5a3f58100ecdaa72705a063eeccc5044c46 27 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
137 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
138 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
139 |
(proof |
| 56111 | 140 |
(let ((?x15 (|symm_f$| |b$| |a$|))) |
141 |
(let ((?x14 (|symm_f$| |a$| |b$|))) |
|
142 |
(let (($x16 (= ?x14 ?x15))) |
|
143 |
(let (($x50 (not $x16))) |
|
144 |
(let ((@x45 (monotonicity (rewrite (= (= |a$| |a$|) true)) (= (and (= |a$| |a$|) $x16) (and true $x16))))) |
|
145 |
(let ((@x49 (trans @x45 (rewrite (= (and true $x16) $x16)) (= (and (= |a$| |a$|) $x16) $x16)))) |
|
146 |
(let ((@x55 (mp (asserted (not (and (= |a$| |a$|) $x16))) (monotonicity @x49 (= (not (and (= |a$| |a$|) $x16)) $x50)) $x50))) |
|
147 |
(let (($x59 (forall ((?v0 |A$|) (?v1 |A$|) )(!(let ((?x8 (|symm_f$| ?v1 ?v0))) |
|
148 |
(let ((?x7 (|symm_f$| ?v0 ?v1))) |
|
149 |
(= ?x7 ?x8))) :pattern ( (|symm_f$| ?v0 ?v1) ) :pattern ( (|symm_f$| ?v1 ?v0) ))) |
|
| 56109 | 150 |
)) |
| 56111 | 151 |
(let (($x10 (forall ((?v0 |A$|) (?v1 |A$|) )(let ((?x8 (|symm_f$| ?v1 ?v0))) |
152 |
(let ((?x7 (|symm_f$| ?v0 ?v1))) |
|
153 |
(= ?x7 ?x8)))) |
|
| 56109 | 154 |
)) |
| 56111 | 155 |
(let ((?x8 (|symm_f$| ?0 ?1))) |
156 |
(let ((?x7 (|symm_f$| ?1 ?0))) |
|
157 |
(let (($x9 (= ?x7 ?x8))) |
|
158 |
(let ((@x58 (|mp~| (asserted $x10) (|nnf-pos| (refl (|~| $x9 $x9)) (|~| $x10 $x10)) $x10))) |
|
159 |
(let ((@x66 (mp @x58 (|quant-intro| (refl (= $x9 $x9)) (= $x10 $x59)) $x59))) |
|
160 |
(let (($x70 (or (not $x59) $x16))) |
|
161 |
(let ((@x71 ((_ |quant-inst| |a$| |b$|) $x70))) |
|
162 |
(|unit-resolution| @x71 @x66 @x55 false))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
163 |
|
| 56111 | 164 |
d1ba851b4b433507a4e12ae0555630bd23204076 38 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
165 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
166 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
167 |
(declare-fun ?v0!0 () Int) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
168 |
(declare-fun ?v1!1 () Int) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
169 |
(proof |
| 56111 | 170 |
(let (($x46 (|p$| ?v0!0))) |
171 |
(let (($x48 (not $x46))) |
|
172 |
(let (($x61 (not (or $x46 (|p$| ?v1!1))))) |
|
173 |
(let ((@x77 (monotonicity (rewrite (= (not $x48) $x46)) (= (and (not $x48) $x61) (and $x46 $x61))))) |
|
174 |
(let (($x55 (not $x48))) |
|
175 |
(let (($x65 (and $x55 $x61))) |
|
176 |
(let (($x39 (forall ((?v0 Int) )(let (($x10 (forall ((?v1 Int) )(let (($x6 (|p$| ?v1))) |
|
| 56109 | 177 |
(or (|p$| ?v0) $x6))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
178 |
)) |
| 56109 | 179 |
(or (not (|p$| ?v0)) $x10))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
180 |
)) |
| 56111 | 181 |
(let (($x42 (not $x39))) |
182 |
(let (($x50 (forall ((?v1 Int) )(let (($x6 (|p$| ?v1))) |
|
183 |
(let (($x46 (|p$| ?v0!0))) |
|
184 |
(or $x46 $x6)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
185 |
)) |
| 56111 | 186 |
(let ((@x67 (|nnf-neg| (refl (|~| $x55 $x55)) (sk (|~| (not $x50) $x61)) (|~| (not (or $x48 $x50)) $x65)))) |
| 56109 | 187 |
(let (($x12 (forall ((?v0 Int) )(let (($x10 (forall ((?v1 Int) )(let (($x6 (|p$| ?v1))) |
188 |
(or (|p$| ?v0) $x6))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
189 |
)) |
| 56109 | 190 |
(let (($x6 (|p$| ?v0))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
191 |
(=> $x6 $x10)))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
192 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
193 |
(let (($x13 (not $x12))) |
| 56109 | 194 |
(let (($x10 (forall ((?v1 Int) )(let (($x6 (|p$| ?v1))) |
195 |
(or (|p$| ?0) $x6))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
196 |
)) |
| 56111 | 197 |
(let ((@x41 (|quant-intro| (rewrite (= (=> (|p$| ?0) $x10) (or (not (|p$| ?0)) $x10))) (= $x12 $x39)))) |
198 |
(let ((@x70 (|mp~| (mp (asserted $x13) (monotonicity @x41 (= $x13 $x42)) $x42) (trans (sk (|~| $x42 (not (or $x48 $x50)))) @x67 (|~| $x42 $x65)) $x65))) |
|
199 |
(let ((@x79 (|not-or-elim| (|and-elim| (mp @x70 @x77 (and $x46 $x61)) $x61) $x48))) |
|
200 |
(let ((@x72 (|and-elim| (mp @x70 @x77 (and $x46 $x61)) $x46))) |
|
201 |
(|unit-resolution| @x72 @x79 false)))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
202 |
|
| 56111 | 203 |
19f6b54cdb476573f91d167cec6fca10e0e66fc7 27 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
204 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
205 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
206 |
(proof |
| 56111 | 207 |
(let (($x72 (forall ((?v0 |A$|) )(!(let (($x8 (|p$| ?v0))) |
| 56109 | 208 |
(not $x8)) :pattern ( (|p$| ?v0) ))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
209 |
)) |
| 56111 | 210 |
(let (($x6 (|p$| |x$|))) |
211 |
(let ((@x46 (monotonicity (rewrite (= (=> $x6 (|p$| |y$|)) (or (not $x6) (|p$| |y$|)))) (= (not (=> $x6 (|p$| |y$|))) (not (or (not $x6) (|p$| |y$|))))))) |
|
212 |
(let ((@x49 (mp (asserted (not (=> $x6 (|p$| |y$|)))) @x46 (not (or (not $x6) (|p$| |y$|)))))) |
|
213 |
(let ((@x47 (|not-or-elim| @x49 $x6))) |
|
214 |
(let (($x40 (not $x6))) |
|
215 |
(let (($x75 (or $x40 $x72))) |
|
| 56109 | 216 |
(let (($x12 (forall ((?v0 |A$|) )(let (($x8 (|p$| ?v0))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
217 |
(not $x8))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
218 |
)) |
| 56111 | 219 |
(let (($x62 (or $x40 $x12))) |
220 |
(let ((@x74 (|quant-intro| (refl (= (not (|p$| ?0)) (not (|p$| ?0)))) (= $x12 $x72)))) |
|
| 56109 | 221 |
(let (($x9 (exists ((?v0 |A$|) )(|p$| ?v0)) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
222 |
)) |
| 56111 | 223 |
(let (($x13 (ite $x6 (not $x9) $x12))) |
224 |
(let ((@x58 (|nnf-neg| (refl (|~| (not (|p$| ?0)) (not (|p$| ?0)))) (|~| (not $x9) $x12)))) |
|
225 |
(let ((@x65 (|nnf-pos| (refl (|~| $x6 $x6)) (refl (|~| $x40 $x40)) @x58 (|nnf-pos| (refl (|~| (not (|p$| ?0)) (not (|p$| ?0)))) (|~| $x12 $x12)) (|~| $x13 (and $x62 (or $x6 $x12)))))) |
|
226 |
(let ((@x78 (mp (|and-elim| (|mp~| (asserted $x13) @x65 (and $x62 (or $x6 $x12))) $x62) (monotonicity @x74 (= $x62 $x75)) $x75))) |
|
227 |
(let (($x86 (or (not $x72) $x40))) |
|
228 |
(let ((@x87 ((_ |quant-inst| |x$|) $x86))) |
|
229 |
(|unit-resolution| @x87 @x47 (|unit-resolution| @x78 @x47 $x72) false)))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
230 |
|
| 56111 | 231 |
e86ca8427589ec8e24e5a85d218331bfb59ff385 7 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
232 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
233 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
234 |
(proof |
| 56111 | 235 |
(let ((@x33 (monotonicity (rewrite (= (= 3 3) true)) (= (not (= 3 3)) (not true))))) |
236 |
(let ((@x37 (trans @x33 (rewrite (= (not true) false)) (= (not (= 3 3)) false)))) |
|
237 |
(mp (asserted (not (= 3 3))) @x37 false))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
238 |
|
| 56111 | 239 |
77108fa1aa6a8a356ebdd1a376316f26d90399cb 7 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
240 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
241 |
((set-logic AUFLIRA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
242 |
(proof |
| 56111 | 243 |
(let ((@x33 (monotonicity (rewrite (= (= 3.0 3.0) true)) (= (not (= 3.0 3.0)) (not true))))) |
244 |
(let ((@x37 (trans @x33 (rewrite (= (not true) false)) (= (not (= 3.0 3.0)) false)))) |
|
245 |
(mp (asserted (not (= 3.0 3.0))) @x37 false))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
246 |
|
| 56111 | 247 |
98abe835b7d13273c58720c5dadf713cd8637495 9 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
248 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
249 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
250 |
(proof |
| 56111 | 251 |
(let ((@x35 (monotonicity (rewrite (= (+ 3 1) 4)) (= (= (+ 3 1) 4) (= 4 4))))) |
252 |
(let ((@x39 (trans @x35 (rewrite (= (= 4 4) true)) (= (= (+ 3 1) 4) true)))) |
|
253 |
(let ((@x42 (monotonicity @x39 (= (not (= (+ 3 1) 4)) (not true))))) |
|
254 |
(let ((@x46 (trans @x42 (rewrite (= (not true) false)) (= (not (= (+ 3 1) 4)) false)))) |
|
255 |
(mp (asserted (not (= (+ 3 1) 4))) @x46 false))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
256 |
|
| 56111 | 257 |
0382c7d04a37d9ca60cac3282bc80f6b329ab12f 16 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
258 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
259 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
260 |
(proof |
| 56111 | 261 |
(let ((?x10 (+ |z$| |x$|))) |
262 |
(let ((?x11 (+ |y$| ?x10))) |
|
263 |
(let ((?x8 (+ |y$| |z$|))) |
|
264 |
(let ((?x9 (+ |x$| ?x8))) |
|
265 |
(let (($x12 (= ?x9 ?x11))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
266 |
(let (($x13 (not $x12))) |
| 56111 | 267 |
(let ((@x43 (monotonicity (rewrite (= ?x10 (+ |x$| |z$|))) (= ?x11 (+ |y$| (+ |x$| |z$|)))))) |
268 |
(let ((@x47 (trans @x43 (rewrite (= (+ |y$| (+ |x$| |z$|)) (+ |x$| |y$| |z$|))) (= ?x11 (+ |x$| |y$| |z$|))))) |
|
269 |
(let ((@x50 (monotonicity (rewrite (= ?x9 (+ |x$| |y$| |z$|))) @x47 (= $x12 (= (+ |x$| |y$| |z$|) (+ |x$| |y$| |z$|)))))) |
|
270 |
(let ((@x54 (trans @x50 (rewrite (= (= (+ |x$| |y$| |z$|) (+ |x$| |y$| |z$|)) true)) (= $x12 true)))) |
|
271 |
(let ((@x61 (trans (monotonicity @x54 (= $x13 (not true))) (rewrite (= (not true) false)) (= $x13 false)))) |
|
272 |
(mp (asserted $x13) @x61 false)))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
273 |
|
| 56111 | 274 |
c608fc7154ce1246a30c68f4d20c1d35cedba663 11 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
275 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
276 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
277 |
(proof |
| 56111 | 278 |
(let ((@x39 (monotonicity (rewrite (= (<= 3 8) true)) (= (ite (<= 3 8) 8 3) (ite true 8 3))))) |
279 |
(let ((@x43 (trans @x39 (rewrite (= (ite true 8 3) 8)) (= (ite (<= 3 8) 8 3) 8)))) |
|
280 |
(let ((@x46 (monotonicity @x43 (= (< 5 (ite (<= 3 8) 8 3)) (< 5 8))))) |
|
281 |
(let ((@x50 (trans @x46 (rewrite (= (< 5 8) true)) (= (< 5 (ite (<= 3 8) 8 3)) true)))) |
|
282 |
(let ((@x53 (monotonicity @x50 (= (not (< 5 (ite (<= 3 8) 8 3))) (not true))))) |
|
283 |
(let ((@x57 (trans @x53 (rewrite (= (not true) false)) (= (not (< 5 (ite (<= 3 8) 8 3))) false)))) |
|
284 |
(mp (asserted (not (< 5 (ite (<= 3 8) 8 3)))) @x57 false))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
285 |
|
| 56111 | 286 |
4bdd1f2f245666e5db75e9d320ea9e892060d851 88 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
287 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
288 |
((set-logic AUFLIRA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
289 |
(proof |
| 56111 | 290 |
(let ((?x42 (* (~ 1.0) |x$|))) |
291 |
(let (($x81 (>= |x$| 0.0))) |
|
292 |
(let ((?x88 (ite $x81 |x$| ?x42))) |
|
293 |
(let ((?x111 (* (~ 1.0) ?x88))) |
|
294 |
(let ((?x146 (+ |x$| ?x111))) |
|
295 |
(let (($x147 (<= ?x146 0.0))) |
|
296 |
(let (($x131 (= |x$| ?x88))) |
|
297 |
(let ((?x43 (* (~ 1.0) |y$|))) |
|
298 |
(let ((?x44 (+ ?x42 ?x43))) |
|
| 56109 | 299 |
(let ((?x7 (+ |x$| |y$|))) |
| 56111 | 300 |
(let (($x69 (>= ?x7 0.0))) |
301 |
(let ((?x76 (ite $x69 ?x7 ?x44))) |
|
302 |
(let ((?x149 (* (~ 1.0) ?x76))) |
|
303 |
(let ((?x177 (+ ?x44 ?x149))) |
|
304 |
(let (($x179 (>= ?x177 0.0))) |
|
305 |
(let (($x128 (= ?x44 ?x76))) |
|
306 |
(let (($x70 (not $x69))) |
|
307 |
(let (($x93 (>= |y$| 0.0))) |
|
308 |
(let (($x94 (not $x93))) |
|
309 |
(let (($x152 (>= (+ ?x7 ?x149) 0.0))) |
|
310 |
(let (($x127 (= ?x7 ?x76))) |
|
311 |
(let (($x188 (not $x179))) |
|
312 |
(let ((@x159 (hypothesis $x93))) |
|
313 |
(let ((?x100 (ite $x93 |y$| ?x43))) |
|
314 |
(let ((?x112 (* (~ 1.0) ?x100))) |
|
315 |
(let ((?x113 (+ ?x76 ?x111 ?x112))) |
|
316 |
(let (($x114 (<= ?x113 0.0))) |
|
317 |
(let (($x119 (not $x114))) |
|
318 |
(let ((?x18 (+ (ite (< |x$| 0.0) (- |x$|) |x$|) (ite (< |y$| 0.0) (- |y$|) |y$|)))) |
|
319 |
(let (($x20 (not (<= (ite (< ?x7 0.0) (- ?x7) ?x7) ?x18)))) |
|
320 |
(let (($x15 (< |y$| 0.0))) |
|
321 |
(let ((?x57 (ite $x15 ?x43 |y$|))) |
|
322 |
(let (($x12 (< |x$| 0.0))) |
|
323 |
(let ((?x52 (ite $x12 ?x42 |x$|))) |
|
324 |
(let ((?x60 (+ ?x52 ?x57))) |
|
325 |
(let (($x9 (< ?x7 0.0))) |
|
326 |
(let ((?x47 (ite $x9 ?x44 ?x7))) |
|
327 |
(let (($x63 (<= ?x47 ?x60))) |
|
328 |
(let ((@x104 (trans (monotonicity (rewrite (= $x15 $x94)) (= ?x57 (ite $x94 ?x43 |y$|))) (rewrite (= (ite $x94 ?x43 |y$|) ?x100)) (= ?x57 ?x100)))) |
|
329 |
(let ((@x87 (monotonicity (rewrite (= $x12 (not $x81))) (= ?x52 (ite (not $x81) ?x42 |x$|))))) |
|
330 |
(let ((@x92 (trans @x87 (rewrite (= (ite (not $x81) ?x42 |x$|) ?x88)) (= ?x52 ?x88)))) |
|
331 |
(let ((@x80 (trans (monotonicity (rewrite (= $x9 $x70)) (= ?x47 (ite $x70 ?x44 ?x7))) (rewrite (= (ite $x70 ?x44 ?x7) ?x76)) (= ?x47 ?x76)))) |
|
332 |
(let ((@x110 (monotonicity @x80 (monotonicity @x92 @x104 (= ?x60 (+ ?x88 ?x100))) (= $x63 (<= ?x76 (+ ?x88 ?x100)))))) |
|
333 |
(let ((@x118 (trans @x110 (rewrite (= (<= ?x76 (+ ?x88 ?x100)) $x114)) (= $x63 $x114)))) |
|
334 |
(let ((@x59 (monotonicity (rewrite (= (- |y$|) ?x43)) (= (ite $x15 (- |y$|) |y$|) ?x57)))) |
|
335 |
(let ((@x54 (monotonicity (rewrite (= (- |x$|) ?x42)) (= (ite $x12 (- |x$|) |x$|) ?x52)))) |
|
336 |
(let ((@x49 (monotonicity (rewrite (= (- ?x7) ?x44)) (= (ite $x9 (- ?x7) ?x7) ?x47)))) |
|
337 |
(let ((@x65 (monotonicity @x49 (monotonicity @x54 @x59 (= ?x18 ?x60)) (= (<= (ite $x9 (- ?x7) ?x7) ?x18) $x63)))) |
|
338 |
(let ((@x123 (trans (monotonicity @x65 (= $x20 (not $x63))) (monotonicity @x118 (= (not $x63) $x119)) (= $x20 $x119)))) |
|
339 |
(let ((@x124 (mp (asserted $x20) @x123 $x119))) |
|
340 |
(let (($x137 (= |y$| ?x100))) |
|
341 |
(let ((@x172 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x137) (<= (+ |y$| ?x112) 0.0))) (|unit-resolution| (|def-axiom| (or $x94 $x137)) @x159 $x137) (<= (+ |y$| ?x112) 0.0)))) |
|
342 |
(let ((?x148 (+ ?x42 ?x111))) |
|
343 |
(let (($x151 (<= ?x148 0.0))) |
|
344 |
(let (($x132 (= ?x42 ?x88))) |
|
345 |
(let (($x82 (not $x81))) |
|
346 |
(let ((@x157 ((_ |th-lemma| arith triangle-eq) (or (not $x131) $x147)))) |
|
347 |
(let ((@x158 (|unit-resolution| @x157 (|unit-resolution| (|def-axiom| (or $x82 $x131)) (hypothesis $x81) $x131) $x147))) |
|
348 |
(let ((@x162 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 -1) (or $x69 $x82 $x94)) (hypothesis $x81) @x159 $x69))) |
|
349 |
(let ((@x126 (|def-axiom| (or $x70 $x127)))) |
|
350 |
(let ((@x166 ((_ |th-lemma| arith triangle-eq) (or (not $x127) $x152)))) |
|
351 |
(let ((@x173 ((_ |th-lemma| arith farkas 1 -1 -1 1) @x172 (|unit-resolution| @x166 (|unit-resolution| @x126 @x162 $x127) $x152) @x124 @x158 false))) |
|
352 |
(let ((@x136 (|def-axiom| (or $x81 $x132)))) |
|
353 |
(let ((@x182 (|unit-resolution| @x136 (|unit-resolution| (lemma @x173 (or $x82 $x94)) @x159 $x82) $x132))) |
|
354 |
(let ((@x187 ((_ |th-lemma| arith farkas 2 -1 -1 1 1) @x159 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x132) $x151)) @x182 $x151) @x172 @x124 (hypothesis $x179) false))) |
|
355 |
(let ((@x196 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x128) $x179)) (hypothesis $x128) (hypothesis $x188) false))) |
|
356 |
(let ((@x197 (lemma @x196 (or (not $x128) $x179)))) |
|
357 |
(let ((@x199 (|unit-resolution| @x197 (|unit-resolution| (lemma @x187 (or $x188 $x94)) @x159 $x188) (not $x128)))) |
|
358 |
(let ((@x130 (|def-axiom| (or $x69 $x128)))) |
|
359 |
(let ((@x202 (|unit-resolution| @x166 (|unit-resolution| @x126 (|unit-resolution| @x130 @x199 $x69) $x127) $x152))) |
|
360 |
(let ((@x203 ((_ |th-lemma| arith farkas 2 1 1 1 1) (|unit-resolution| (lemma @x173 (or $x82 $x94)) @x159 $x82) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x132) $x151)) @x182 $x151) @x172 @x124 @x202 false))) |
|
361 |
(let ((@x204 (lemma @x203 $x94))) |
|
362 |
(let ((@x210 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1) (or $x81 $x93 $x70)) (hypothesis $x69) @x204 $x81))) |
|
363 |
(let ((@x134 (|def-axiom| (or $x82 $x131)))) |
|
364 |
(let ((@x214 (|unit-resolution| @x166 (|unit-resolution| @x126 (hypothesis $x69) $x127) $x152))) |
|
365 |
(let ((?x145 (+ ?x43 ?x112))) |
|
366 |
(let (($x176 (<= ?x145 0.0))) |
|
367 |
(let (($x138 (= ?x43 ?x100))) |
|
368 |
(let ((@x219 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x138) $x176)) (|unit-resolution| (|def-axiom| (or $x93 $x138)) @x204 $x138) $x176))) |
|
369 |
(let ((@x220 ((_ |th-lemma| arith farkas 2 1 1 1 1) @x204 @x219 @x124 @x214 (|unit-resolution| @x157 (|unit-resolution| @x134 @x210 $x131) $x147) false))) |
|
370 |
(let ((@x224 (|unit-resolution| @x197 (|unit-resolution| @x130 (lemma @x220 $x70) $x128) $x179))) |
|
371 |
(let ((@x229 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x132) $x151)) (hypothesis $x132) (lemma ((_ |th-lemma| arith farkas 1 -1 -1 1) @x219 @x124 @x224 (hypothesis $x151) false) (not $x151)) false))) |
|
372 |
(let ((@x232 (|unit-resolution| @x134 (|unit-resolution| @x136 (lemma @x229 (not $x132)) $x81) $x131))) |
|
373 |
((_ |th-lemma| arith farkas -2 1 -1 -1 1) (|unit-resolution| @x136 (lemma @x229 (not $x132)) $x81) @x219 @x124 @x224 (|unit-resolution| @x157 @x232 $x147) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
374 |
|
| 56111 | 375 |
f8d266138153a7b5a745c746bbb489254a734ae0 16 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
376 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
377 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
378 |
(proof |
| 56109 | 379 |
(let ((?x10 (|p$| true))) |
| 56111 | 380 |
(let (($x7 (< 2 3))) |
381 |
(let (($x8 (ite $x7 true false))) |
|
382 |
(let ((?x9 (|p$| $x8))) |
|
383 |
(let (($x11 (= ?x9 ?x10))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
384 |
(let (($x12 (not $x11))) |
| 56111 | 385 |
(let ((@x50 (monotonicity (monotonicity (rewrite (= $x7 true)) (= (|p$| $x7) ?x10)) (= (= (|p$| $x7) ?x10) (= ?x10 ?x10))))) |
386 |
(let ((@x54 (trans @x50 (rewrite (= (= ?x10 ?x10) true)) (= (= (|p$| $x7) ?x10) true)))) |
|
387 |
(let ((@x61 (trans (monotonicity @x54 (= (not (= (|p$| $x7) ?x10)) (not true))) (rewrite (= (not true) false)) (= (not (= (|p$| $x7) ?x10)) false)))) |
|
388 |
(let ((@x41 (monotonicity (monotonicity (rewrite (= $x8 $x7)) (= ?x9 (|p$| $x7))) (= $x11 (= (|p$| $x7) ?x10))))) |
|
389 |
(let ((@x44 (monotonicity @x41 (= $x12 (not (= (|p$| $x7) ?x10)))))) |
|
390 |
(mp (asserted $x12) (trans @x44 @x61 (= $x12 false)) false)))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
391 |
|
| 56111 | 392 |
81a816463ea508b010daafde9e601b0b985afe71 16 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
393 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
394 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
395 |
(proof |
| 56109 | 396 |
(let (($x11 (< |x$| 1))) |
| 56111 | 397 |
(let ((?x35 (+ 3 |x$|))) |
398 |
(let (($x38 (<= 4 ?x35))) |
|
399 |
(let (($x41 (or $x38 $x11))) |
|
400 |
(let (($x44 (not $x41))) |
|
401 |
(let ((@x55 (monotonicity (rewrite (= $x38 (>= |x$| 1))) (rewrite (= $x11 (not (>= |x$| 1)))) (= $x41 (or (>= |x$| 1) (not (>= |x$| 1))))))) |
|
402 |
(let ((@x59 (trans @x55 (rewrite (= (or (>= |x$| 1) (not (>= |x$| 1))) true)) (= $x41 true)))) |
|
403 |
(let ((@x66 (trans (monotonicity @x59 (= $x44 (not true))) (rewrite (= (not true) false)) (= $x44 false)))) |
|
404 |
(let ((@x40 (monotonicity (rewrite (= (+ |x$| 3) ?x35)) (= (<= 4 (+ |x$| 3)) $x38)))) |
|
405 |
(let ((@x46 (monotonicity (monotonicity @x40 (= (or (<= 4 (+ |x$| 3)) $x11) $x41)) (= (not (or (<= 4 (+ |x$| 3)) $x11)) $x44)))) |
|
406 |
(let ((@x68 (trans @x46 @x66 (= (not (or (<= 4 (+ |x$| 3)) $x11)) false)))) |
|
407 |
(mp (asserted (not (or (<= 4 (+ |x$| 3)) $x11))) @x68 false)))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
408 |
|
| 56111 | 409 |
3da41aa632fdaf484d160ab8b5a2c83b931d3de7 18 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
410 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
411 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
412 |
(proof |
| 56111 | 413 |
(let (($x52 (= (+ |x$| (* (~ 1) |y$|)) (~ 4)))) |
414 |
(let ((@x46 (monotonicity (rewrite (= (+ |x$| 4) (+ 4 |x$|))) (= (= |y$| (+ |x$| 4)) (= |y$| (+ 4 |x$|)))))) |
|
415 |
(let ((@x55 (trans @x46 (rewrite (= (= |y$| (+ 4 |x$|)) $x52)) (= (= |y$| (+ |x$| 4)) $x52)))) |
|
416 |
(let ((@x84 (monotonicity (mp (asserted (= |y$| (+ |x$| 4))) @x55 $x52) (= (>= (+ |x$| (* (~ 1) |y$|)) 0) (>= (~ 4) 0))))) |
|
417 |
(let ((@x88 (trans @x84 (rewrite (= (>= (~ 4) 0) false)) (= (>= (+ |x$| (* (~ 1) |y$|)) 0) false)))) |
|
418 |
(let (($x68 (>= (+ |x$| (* (~ 1) |y$|)) 0))) |
|
419 |
(let ((@x74 (monotonicity (rewrite (= (< 0 (+ (* (~ 1) |x$|) |y$|)) (not $x68))) (= (not (< 0 (+ (* (~ 1) |x$|) |y$|))) (not (not $x68)))))) |
|
420 |
(let ((@x78 (trans @x74 (rewrite (= (not (not $x68)) $x68)) (= (not (< 0 (+ (* (~ 1) |x$|) |y$|))) $x68)))) |
|
421 |
(let (($x62 (< 0 (+ (* (~ 1) |x$|) |y$|)))) |
|
422 |
(let (($x65 (not $x62))) |
|
423 |
(let (($x15 (not (< 0 (- |y$| |x$|))))) |
|
424 |
(let ((@x64 (monotonicity (rewrite (= (- |y$| |x$|) (+ (* (~ 1) |x$|) |y$|))) (= (< 0 (- |y$| |x$|)) $x62)))) |
|
425 |
(let ((@x81 (mp (asserted $x15) (trans (monotonicity @x64 (= $x15 $x65)) @x78 (= $x15 $x68)) $x68))) |
|
426 |
(mp @x81 @x88 false)))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
427 |
|
| 56111 | 428 |
e43b05132d28d45640c9d0131930806093dbb0e2 11 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
429 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
430 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
431 |
(proof |
| 56111 | 432 |
(let ((@x37 (monotonicity (rewrite (= (+ 2 2) 4)) (= (= (+ 2 2) 5) (= 4 5))))) |
433 |
(let ((@x41 (trans @x37 (rewrite (= (= 4 5) false)) (= (= (+ 2 2) 5) false)))) |
|
434 |
(let ((@x44 (monotonicity @x41 (= (not (= (+ 2 2) 5)) (not false))))) |
|
435 |
(let ((@x48 (trans @x44 (rewrite (= (not false) true)) (= (not (= (+ 2 2) 5)) true)))) |
|
436 |
(let ((@x51 (monotonicity @x48 (= (not (not (= (+ 2 2) 5))) (not true))))) |
|
437 |
(let ((@x55 (trans @x51 (rewrite (= (not true) false)) (= (not (not (= (+ 2 2) 5))) false)))) |
|
438 |
(mp (asserted (not (not (= (+ 2 2) 5)))) @x55 false))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
439 |
|
| 56111 | 440 |
135df42816691c806246099ddf6fc7f6b81a2f42 19 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
441 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
442 |
((set-logic AUFLIRA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
443 |
(proof |
| 56111 | 444 |
(let ((?x10 (* 7.0 |a$|))) |
445 |
(let ((?x7 (* 3.0 |x$|))) |
|
446 |
(let ((?x11 (+ ?x7 ?x10))) |
|
447 |
(let (($x46 (>= ?x11 4.0))) |
|
448 |
(let (($x44 (not $x46))) |
|
449 |
(let ((@x43 (mp (asserted (< ?x11 4.0)) (rewrite (= (< ?x11 4.0) $x44)) $x44))) |
|
450 |
(let ((?x15 (* 2.0 |x$|))) |
|
451 |
(let (($x48 (<= ?x15 3.0))) |
|
452 |
(let (($x49 (not $x48))) |
|
453 |
(let ((@x52 (mp (asserted (< 3.0 ?x15)) (rewrite (= (< 3.0 ?x15) $x49)) $x49))) |
|
454 |
(let (($x56 (>= |a$| 0.0))) |
|
455 |
(let ((@x60 (monotonicity (rewrite (= (< |a$| 0.0) (not $x56))) (= (not (< |a$| 0.0)) (not (not $x56)))))) |
|
456 |
(let ((@x64 (trans @x60 (rewrite (= (not (not $x56)) $x56)) (= (not (< |a$| 0.0)) $x56)))) |
|
457 |
(let ((@x65 (mp (asserted (not (< |a$| 0.0))) @x64 $x56))) |
|
458 |
((_ |th-lemma| arith farkas 7 3/2 1) @x65 @x52 @x43 false))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
459 |
|
| 56111 | 460 |
de926642fcc1657dfaa079f1656df9cc74f3caaf 22 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
461 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
462 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
463 |
(proof |
| 56111 | 464 |
(let (($x17 (not false))) |
| 56109 | 465 |
(let (($x13 (<= 0 |x$|))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
466 |
(let (($x14 (not $x13))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
467 |
(let (($x15 (or $x14 $x13))) |
| 56111 | 468 |
(let ((?x8 (- 1))) |
469 |
(let ((?x10 (* ?x8 |x$|))) |
|
470 |
(let ((?x11 (+ |y$| ?x10))) |
|
471 |
(let (($x12 (<= 0 ?x11))) |
|
472 |
(let (($x16 (or $x12 $x15))) |
|
473 |
(let (($x18 (= $x16 $x17))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
474 |
(let (($x19 (not $x18))) |
| 56111 | 475 |
(let ((@x58 (rewrite (= (or (<= 0 (+ |y$| (* (~ 1) |x$|))) true) true)))) |
476 |
(let ((@x48 (monotonicity (monotonicity (rewrite (= ?x8 (~ 1))) (= ?x10 (* (~ 1) |x$|))) (= ?x11 (+ |y$| (* (~ 1) |x$|)))))) |
|
477 |
(let ((@x56 (monotonicity (monotonicity @x48 (= $x12 (<= 0 (+ |y$| (* (~ 1) |x$|))))) (rewrite (= $x15 true)) (= $x16 (or (<= 0 (+ |y$| (* (~ 1) |x$|))) true))))) |
|
478 |
(let ((@x65 (monotonicity (trans @x56 @x58 (= $x16 true)) (rewrite (= $x17 true)) (= $x18 (= true true))))) |
|
479 |
(let ((@x69 (trans @x65 (rewrite (= (= true true) true)) (= $x18 true)))) |
|
480 |
(let ((@x76 (trans (monotonicity @x69 (= $x19 (not true))) (rewrite (= (not true) false)) (= $x19 false)))) |
|
481 |
(mp (asserted $x19) @x76 false)))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
482 |
|
| 56111 | 483 |
c19a59241b121ac2665c4fbd7ba1fa2d48fef984 159 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
484 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
485 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
486 |
(proof |
| 56109 | 487 |
(let (($x22 (= |m$| |n$|))) |
| 56111 | 488 |
(let ((@x478 (symm (commutativity (= $x22 (= |n$| |m$|))) (= (= |n$| |m$|) $x22)))) |
| 56109 | 489 |
(let (($x18 (= |n$| |m$|))) |
| 56111 | 490 |
(let ((?x100 (* (~ 1) |m$|))) |
491 |
(let ((?x101 (+ |n$| ?x100))) |
|
492 |
(let (($x116 (>= ?x101 0))) |
|
493 |
(let ((?x76 (* (~ 1) |n$a|))) |
|
494 |
(let ((?x94 (+ |m$| ?x76))) |
|
495 |
(let (($x125 (<= ?x94 0))) |
|
496 |
(let ((?x77 (+ |n$| ?x76))) |
|
497 |
(let (($x86 (>= ?x77 0))) |
|
498 |
(let (($x259 (or $x86 $x125))) |
|
499 |
(let ((@x265 (monotonicity (rewrite (= (and (not $x86) (not $x125)) (not $x259))) (= (not (and (not $x86) (not $x125))) (not (not $x259)))))) |
|
500 |
(let ((@x269 (trans @x265 (rewrite (= (not (not $x259)) $x259)) (= (not (and (not $x86) (not $x125))) $x259)))) |
|
501 |
(let (($x126 (not $x125))) |
|
502 |
(let (($x85 (not $x86))) |
|
503 |
(let (($x141 (and $x85 $x126))) |
|
504 |
(let (($x208 (not $x141))) |
|
505 |
(let (($x28 (= |n$a| |m$|))) |
|
506 |
(let (($x35 (and $x28 $x22))) |
|
507 |
(let (($x78 (<= ?x77 0))) |
|
508 |
(let (($x79 (not $x78))) |
|
| 56109 | 509 |
(let (($x11 (= |m$| |n$a|))) |
| 56111 | 510 |
(let (($x82 (and $x11 $x79))) |
511 |
(let (($x89 (and $x22 $x85))) |
|
512 |
(let (($x93 (>= ?x94 0))) |
|
513 |
(let (($x92 (not $x93))) |
|
514 |
(let (($x97 (and $x92 $x79))) |
|
515 |
(let (($x26 (= |n$a| |n$|))) |
|
516 |
(let (($x102 (<= ?x101 0))) |
|
517 |
(let (($x103 (not $x102))) |
|
518 |
(let (($x106 (and $x103 $x26))) |
|
519 |
(let (($x109 (and $x103 $x85))) |
|
520 |
(let (($x112 (and $x28 $x103))) |
|
521 |
(let (($x115 (not $x116))) |
|
522 |
(let (($x119 (and $x26 $x115))) |
|
523 |
(let (($x122 (and $x79 $x115))) |
|
524 |
(let (($x129 (and $x126 $x22))) |
|
525 |
(let (($x132 (and $x126 $x103))) |
|
526 |
(let (($x135 (and $x18 $x92))) |
|
527 |
(let (($x16 (= |n$| |n$a|))) |
|
528 |
(let (($x138 (and $x16 $x126))) |
|
529 |
(let (($x144 (and $x115 $x11))) |
|
530 |
(let (($x147 (and $x115 $x92))) |
|
531 |
(let (($x195 (or $x147 $x144 $x141 $x138 $x135 $x132 $x129 $x122 $x119 $x112 $x109 $x106 $x97 $x89 $x82 $x35))) |
|
532 |
(let (($x38 (or (and (< |m$| |n$a|) (< |n$a| |n$|)) (or (and $x22 (< |n$| |n$a|)) (or (and $x11 (< |n$a| |n$|)) $x35))))) |
|
533 |
(let (($x40 (or (and (< |m$| |n$|) (< |n$| |n$a|)) (or (and (< |m$| |n$|) $x26) $x38)))) |
|
534 |
(let (($x43 (or (and (< |n$a| |n$|) (< |n$| |m$|)) (or (and $x26 (< |n$| |m$|)) (or (and $x28 (< |m$| |n$|)) $x40))))) |
|
535 |
(let (($x45 (or (and (< |n$a| |m$|) (< |m$| |n$|)) (or (and (< |n$a| |m$|) $x22) $x43)))) |
|
536 |
(let (($x48 (or (and (< |n$| |n$a|) (< |n$a| |m$|)) (or (and $x16 (< |n$a| |m$|)) (or (and $x18 (< |m$| |n$a|)) $x45))))) |
|
537 |
(let (($x50 (or (and (< |n$| |m$|) (< |m$| |n$a|)) (or (and (< |n$| |m$|) $x11) $x48)))) |
|
538 |
(let (($x51 (not $x50))) |
|
539 |
(let (($x168 (or $x119 (or $x112 (or $x109 (or $x106 (or $x97 (or $x89 (or $x82 $x35))))))))) |
|
540 |
(let (($x189 (or $x144 (or $x141 (or $x138 (or $x135 (or $x132 (or $x129 (or $x122 $x168))))))))) |
|
541 |
(let (($x187 (= $x48 (or $x141 (or $x138 (or $x135 (or $x132 (or $x129 (or $x122 $x168))))))))) |
|
542 |
(let (($x184 (= (or (and $x16 (< |n$a| |m$|)) (or (and $x18 (< |m$| |n$a|)) $x45)) (or $x138 (or $x135 (or $x132 (or $x129 (or $x122 $x168)))))))) |
|
543 |
(let (($x181 (= (or (and $x18 (< |m$| |n$a|)) $x45) (or $x135 (or $x132 (or $x129 (or $x122 $x168))))))) |
|
544 |
(let (($x169 (= (or (and $x26 (< |n$| |m$|)) (or (and $x28 (< |m$| |n$|)) $x40)) $x168))) |
|
545 |
(let (($x166 (= (or (and $x28 (< |m$| |n$|)) $x40) (or $x112 (or $x109 (or $x106 (or $x97 (or $x89 (or $x82 $x35))))))))) |
|
546 |
(let (($x160 (= (or (and (< |m$| |n$|) $x26) $x38) (or $x106 (or $x97 (or $x89 (or $x82 $x35))))))) |
|
547 |
(let (($x154 (= (or (and $x22 (< |n$| |n$a|)) (or (and $x11 (< |n$a| |n$|)) $x35)) (or $x89 (or $x82 $x35))))) |
|
548 |
(let ((@x81 (rewrite (= (< |n$a| |n$|) $x79)))) |
|
549 |
(let ((@x152 (monotonicity (monotonicity @x81 (= (and $x11 (< |n$a| |n$|)) $x82)) (= (or (and $x11 (< |n$a| |n$|)) $x35) (or $x82 $x35))))) |
|
550 |
(let ((@x88 (rewrite (= (< |n$| |n$a|) $x85)))) |
|
551 |
(let ((@x155 (monotonicity (monotonicity @x88 (= (and $x22 (< |n$| |n$a|)) $x89)) @x152 $x154))) |
|
552 |
(let ((@x96 (rewrite (= (< |m$| |n$a|) $x92)))) |
|
553 |
(let ((@x99 (monotonicity @x96 @x81 (= (and (< |m$| |n$a|) (< |n$a| |n$|)) $x97)))) |
|
554 |
(let ((@x158 (monotonicity @x99 @x155 (= $x38 (or $x97 (or $x89 (or $x82 $x35))))))) |
|
555 |
(let ((@x105 (rewrite (= (< |m$| |n$|) $x103)))) |
|
556 |
(let ((@x161 (monotonicity (monotonicity @x105 (= (and (< |m$| |n$|) $x26) $x106)) @x158 $x160))) |
|
557 |
(let ((@x111 (monotonicity @x105 @x88 (= (and (< |m$| |n$|) (< |n$| |n$a|)) $x109)))) |
|
558 |
(let ((@x164 (monotonicity @x111 @x161 (= $x40 (or $x109 (or $x106 (or $x97 (or $x89 (or $x82 $x35))))))))) |
|
559 |
(let ((@x167 (monotonicity (monotonicity @x105 (= (and $x28 (< |m$| |n$|)) $x112)) @x164 $x166))) |
|
560 |
(let ((@x118 (rewrite (= (< |n$| |m$|) $x115)))) |
|
561 |
(let ((@x170 (monotonicity (monotonicity @x118 (= (and $x26 (< |n$| |m$|)) $x119)) @x167 $x169))) |
|
562 |
(let ((@x124 (monotonicity @x81 @x118 (= (and (< |n$a| |n$|) (< |n$| |m$|)) $x122)))) |
|
563 |
(let ((@x128 (rewrite (= (< |n$a| |m$|) $x126)))) |
|
564 |
(let ((@x176 (monotonicity (monotonicity @x128 (= (and (< |n$a| |m$|) $x22) $x129)) (monotonicity @x124 @x170 (= $x43 (or $x122 $x168))) (= (or (and (< |n$a| |m$|) $x22) $x43) (or $x129 (or $x122 $x168)))))) |
|
565 |
(let ((@x134 (monotonicity @x128 @x105 (= (and (< |n$a| |m$|) (< |m$| |n$|)) $x132)))) |
|
566 |
(let ((@x179 (monotonicity @x134 @x176 (= $x45 (or $x132 (or $x129 (or $x122 $x168))))))) |
|
567 |
(let ((@x182 (monotonicity (monotonicity @x96 (= (and $x18 (< |m$| |n$a|)) $x135)) @x179 $x181))) |
|
568 |
(let ((@x185 (monotonicity (monotonicity @x128 (= (and $x16 (< |n$a| |m$|)) $x138)) @x182 $x184))) |
|
569 |
(let ((@x143 (monotonicity @x88 @x128 (= (and (< |n$| |n$a|) (< |n$a| |m$|)) $x141)))) |
|
570 |
(let ((@x191 (monotonicity (monotonicity @x118 (= (and (< |n$| |m$|) $x11) $x144)) (monotonicity @x143 @x185 $x187) (= (or (and (< |n$| |m$|) $x11) $x48) $x189)))) |
|
571 |
(let ((@x149 (monotonicity @x118 @x96 (= (and (< |n$| |m$|) (< |m$| |n$a|)) $x147)))) |
|
572 |
(let ((@x199 (trans (monotonicity @x149 @x191 (= $x50 (or $x147 $x189))) (rewrite (= (or $x147 $x189) $x195)) (= $x50 $x195)))) |
|
573 |
(let ((@x203 (mp (asserted $x51) (monotonicity @x199 (= $x51 (not $x195))) (not $x195)))) |
|
574 |
(let ((@x270 (mp (|not-or-elim| @x203 $x208) @x269 $x259))) |
|
575 |
(let (($x271 (not $x16))) |
|
576 |
(let (($x272 (or $x271 $x125))) |
|
577 |
(let ((@x278 (monotonicity (rewrite (= $x138 (not $x272))) (= (not $x138) (not (not $x272)))))) |
|
578 |
(let ((@x282 (trans @x278 (rewrite (= (not (not $x272)) $x272)) (= (not $x138) $x272)))) |
|
579 |
(let ((@x283 (mp (|not-or-elim| @x203 (not $x138)) @x282 $x272))) |
|
580 |
(let (($x284 (not $x18))) |
|
581 |
(let (($x309 (not $x22))) |
|
582 |
(let ((@x432 (hypothesis $x79))) |
|
583 |
(let (($x384 (or $x93 $x78))) |
|
584 |
(let ((@x390 (monotonicity (rewrite (= $x97 (not $x384))) (= (not $x97) (not (not $x384)))))) |
|
585 |
(let ((@x394 (trans @x390 (rewrite (= (not (not $x384)) $x384)) (= (not $x97) $x384)))) |
|
586 |
(let ((@x395 (mp (|not-or-elim| @x203 (not $x97)) @x394 $x384))) |
|
587 |
(let (($x246 (not $x11))) |
|
588 |
(let (($x408 (or $x246 $x78))) |
|
589 |
(let ((@x414 (monotonicity (rewrite (= $x82 (not $x408))) (= (not $x82) (not (not $x408)))))) |
|
590 |
(let ((@x418 (trans @x414 (rewrite (= (not (not $x408)) $x408)) (= (not $x82) $x408)))) |
|
591 |
(let ((@x419 (mp (|not-or-elim| @x203 (not $x82)) @x418 $x408))) |
|
592 |
(let ((@x437 ((_ |th-lemma| arith triangle-eq) (or $x11 $x126 $x92)))) |
|
593 |
(let ((@x438 (|unit-resolution| @x437 (|unit-resolution| @x419 @x432 $x246) (|unit-resolution| @x395 @x432 $x93) $x126))) |
|
594 |
(let (($x310 (or $x125 $x309))) |
|
595 |
(let ((@x316 (monotonicity (rewrite (= $x129 (not $x310))) (= (not $x129) (not (not $x310)))))) |
|
596 |
(let ((@x320 (trans @x316 (rewrite (= (not (not $x310)) $x310)) (= (not $x129) $x310)))) |
|
597 |
(let ((@x321 (mp (|not-or-elim| @x203 (not $x129)) @x320 $x310))) |
|
598 |
(let ((@x448 (mp (|unit-resolution| @x321 @x438 $x309) (monotonicity (commutativity (= $x22 $x18)) (= $x309 $x284)) $x284))) |
|
599 |
(let (($x322 (or $x78 $x116))) |
|
600 |
(let ((@x328 (monotonicity (rewrite (= $x122 (not $x322))) (= (not $x122) (not (not $x322)))))) |
|
601 |
(let ((@x332 (trans @x328 (rewrite (= (not (not $x322)) $x322)) (= (not $x122) $x322)))) |
|
602 |
(let ((@x333 (mp (|not-or-elim| @x203 (not $x122)) @x332 $x322))) |
|
603 |
(let (($x297 (or $x125 $x102))) |
|
604 |
(let ((@x303 (monotonicity (rewrite (= $x132 (not $x297))) (= (not $x132) (not (not $x297)))))) |
|
605 |
(let ((@x307 (trans @x303 (rewrite (= (not (not $x297)) $x297)) (= (not $x132) $x297)))) |
|
606 |
(let ((@x308 (mp (|not-or-elim| @x203 (not $x132)) @x307 $x297))) |
|
607 |
(let ((@x442 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x18 $x103 $x115)) (|unit-resolution| @x308 @x438 $x102) (|unit-resolution| @x333 @x432 $x116) $x18))) |
|
608 |
(let ((@x457 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x16 $x79 $x85)) (lemma (|unit-resolution| @x442 @x448 false) $x78) (or $x16 $x85)))) |
|
609 |
(let ((@x458 (|unit-resolution| @x457 (|unit-resolution| @x283 (hypothesis $x126) $x271) (|unit-resolution| @x270 (hypothesis $x126) $x86) false))) |
|
610 |
(let ((@x459 (lemma @x458 $x125))) |
|
611 |
(let (($x73 (or $x116 $x93))) |
|
612 |
(let ((@x240 (monotonicity (rewrite (= $x147 (not $x73))) (= (not $x147) (not (not $x73)))))) |
|
613 |
(let ((@x244 (trans @x240 (rewrite (= (not (not $x73)) $x73)) (= (not $x147) $x73)))) |
|
614 |
(let ((@x245 (mp (|not-or-elim| @x203 (not $x147)) @x244 $x73))) |
|
615 |
(let (($x247 (or $x116 $x246))) |
|
616 |
(let ((@x253 (monotonicity (rewrite (= $x144 (not $x247))) (= (not $x144) (not (not $x247)))))) |
|
617 |
(let ((@x257 (trans @x253 (rewrite (= (not (not $x247)) $x247)) (= (not $x144) $x247)))) |
|
618 |
(let ((@x258 (mp (|not-or-elim| @x203 (not $x144)) @x257 $x247))) |
|
619 |
(let ((@x463 (|unit-resolution| @x437 (|unit-resolution| @x258 (hypothesis $x115) $x246) (|unit-resolution| @x245 (hypothesis $x115) $x93) @x459 false))) |
|
620 |
(let (($x334 (not $x26))) |
|
621 |
(let (($x372 (or $x102 $x334))) |
|
622 |
(let ((@x378 (monotonicity (rewrite (= $x106 (not $x372))) (= (not $x106) (not (not $x372)))))) |
|
623 |
(let ((@x382 (trans @x378 (rewrite (= (not (not $x372)) $x372)) (= (not $x106) $x372)))) |
|
624 |
(let ((@x383 (mp (|not-or-elim| @x203 (not $x106)) @x382 $x372))) |
|
625 |
(let ((@x473 (mp (|unit-resolution| @x383 (hypothesis $x103) $x334) (monotonicity (commutativity (= $x26 $x16)) (= $x334 $x271)) $x271))) |
|
626 |
(let (($x360 (or $x102 $x86))) |
|
627 |
(let ((@x366 (monotonicity (rewrite (= $x109 (not $x360))) (= (not $x109) (not (not $x360)))))) |
|
628 |
(let ((@x370 (trans @x366 (rewrite (= (not (not $x360)) $x360)) (= (not $x109) $x360)))) |
|
629 |
(let ((@x371 (mp (|not-or-elim| @x203 (not $x109)) @x370 $x360))) |
|
630 |
(let ((@x467 (|unit-resolution| @x457 (|unit-resolution| @x371 (hypothesis $x103) $x86) $x16))) |
|
631 |
(let ((@x476 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x18 $x103 $x115)) (lemma (|unit-resolution| @x467 @x473 false) $x102) (lemma @x463 $x116) $x18))) |
|
632 |
(let (($x285 (or $x284 $x93))) |
|
633 |
(let ((@x291 (monotonicity (rewrite (= $x135 (not $x285))) (= (not $x135) (not (not $x285)))))) |
|
634 |
(let ((@x295 (trans @x291 (rewrite (= (not (not $x285)) $x285)) (= (not $x135) $x285)))) |
|
635 |
(let ((@x296 (mp (|not-or-elim| @x203 (not $x135)) @x295 $x285))) |
|
636 |
(let ((@x486 (mp (|unit-resolution| @x437 (|unit-resolution| @x296 @x476 $x93) @x459 $x11) (symm (commutativity (= $x28 $x11)) (= $x11 $x28)) $x28))) |
|
637 |
(let (($x420 (or (not $x28) $x309))) |
|
638 |
(let ((@x426 (monotonicity (rewrite (= $x35 (not $x420))) (= (not $x35) (not (not $x420)))))) |
|
639 |
(let ((@x430 (trans @x426 (rewrite (= (not (not $x420)) $x420)) (= (not $x35) $x420)))) |
|
640 |
(let ((@x431 (mp (|not-or-elim| @x203 (not $x35)) @x430 $x420))) |
|
641 |
(|unit-resolution| @x431 @x486 (mp @x476 @x478 $x22) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
642 |
|
| 56111 | 643 |
ad69b5703e25623b7fccdbcfa3db5949b2899f42 927 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
644 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
645 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
646 |
(proof |
| 56111 | 647 |
(let ((?x131 (* (~ 1) |x4$|))) |
648 |
(let (($x436 (>= |x4$| 0))) |
|
649 |
(let ((?x443 (ite $x436 |x4$| ?x131))) |
|
650 |
(let ((?x454 (* (~ 1) ?x443))) |
|
651 |
(let ((?x675 (+ |x4$| ?x454))) |
|
652 |
(let (($x676 (<= ?x675 0))) |
|
653 |
(let (($x782 (not $x676))) |
|
654 |
(let ((?x672 (+ ?x131 ?x454))) |
|
655 |
(let (($x673 (<= ?x672 0))) |
|
656 |
(let (($x743 (not $x673))) |
|
657 |
(let ((?x653 (* (~ 1) |x11$|))) |
|
658 |
(let ((?x654 (+ |x2$| ?x653))) |
|
659 |
(let (($x656 (>= ?x654 0))) |
|
660 |
(let (($x708 (not $x656))) |
|
| 56109 | 661 |
(let (($x71 (= |x2$| |x11$|))) |
| 56111 | 662 |
(let ((@x1263 (hypothesis $x656))) |
663 |
(let (($x655 (<= ?x654 0))) |
|
664 |
(let ((?x165 (* (~ 1) |x6$|))) |
|
665 |
(let (($x386 (>= |x6$| 0))) |
|
666 |
(let ((?x393 (ite $x386 |x6$| ?x165))) |
|
667 |
(let ((?x404 (* (~ 1) ?x393))) |
|
668 |
(let ((?x669 (+ |x6$| ?x404))) |
|
669 |
(let (($x934 (<= ?x669 0))) |
|
670 |
(let (($x610 (= |x6$| ?x393))) |
|
671 |
(let (($x411 (>= |x5$| 0))) |
|
672 |
(let (($x286 (>= |x9$| 0))) |
|
673 |
(let (($x671 (>= ?x669 0))) |
|
674 |
(let (($x287 (not $x286))) |
|
675 |
(let ((@x1426 (hypothesis $x287))) |
|
676 |
(let ((?x233 (* (~ 1) |x10$|))) |
|
677 |
(let (($x311 (>= |x10$| 0))) |
|
678 |
(let ((?x318 (ite $x311 |x10$| ?x233))) |
|
679 |
(let ((?x329 (* (~ 1) ?x318))) |
|
680 |
(let ((?x660 (+ |x10$| ?x329))) |
|
681 |
(let (($x1369 (<= ?x660 0))) |
|
682 |
(let (($x642 (= |x10$| ?x318))) |
|
683 |
(let (($x643 (= ?x233 ?x318))) |
|
684 |
(let (($x1119 (not $x643))) |
|
685 |
(let ((?x1101 (+ ?x233 ?x329))) |
|
686 |
(let (($x1247 (<= ?x1101 0))) |
|
687 |
(let (($x1259 (not $x1247))) |
|
688 |
(let ((?x216 (* (~ 1) |x9$|))) |
|
689 |
(let ((?x293 (ite $x286 |x9$| ?x216))) |
|
690 |
(let ((?x304 (* (~ 1) ?x293))) |
|
691 |
(let ((?x1498 (+ ?x216 ?x304))) |
|
692 |
(let (($x1543 (>= ?x1498 0))) |
|
693 |
(let (($x635 (= ?x216 ?x293))) |
|
694 |
(let ((@x639 (|def-axiom| (or $x286 $x635)))) |
|
695 |
(let ((@x1553 (|unit-resolution| @x639 @x1426 $x635))) |
|
696 |
(let ((@x1572 ((_ |th-lemma| arith triangle-eq) (or (not $x635) $x1543)))) |
|
697 |
(let ((@x1573 (|unit-resolution| @x1572 @x1553 $x1543))) |
|
698 |
(let ((?x182 (* (~ 1) |x7$|))) |
|
699 |
(let (($x361 (>= |x7$| 0))) |
|
700 |
(let ((?x368 (ite $x361 |x7$| ?x182))) |
|
701 |
(let ((?x379 (* (~ 1) ?x368))) |
|
702 |
(let ((?x666 (+ |x7$| ?x379))) |
|
703 |
(let (($x838 (<= ?x666 0))) |
|
704 |
(let (($x618 (= |x7$| ?x368))) |
|
705 |
(let (($x412 (not $x411))) |
|
706 |
(let ((@x842 (hypothesis $x412))) |
|
707 |
(let ((?x775 (+ ?x165 ?x404))) |
|
708 |
(let (($x778 (<= ?x775 0))) |
|
709 |
(let (($x611 (= ?x165 ?x393))) |
|
710 |
(let (($x387 (not $x386))) |
|
711 |
(let (($x362 (not $x361))) |
|
712 |
(let ((@x1025 (hypothesis $x362))) |
|
713 |
(let ((@x1024 (hypothesis $x386))) |
|
714 |
(let ((?x405 (+ |x5$| |x7$| ?x404))) |
|
715 |
(let (($x617 (>= ?x405 0))) |
|
716 |
(let (($x406 (= ?x405 0))) |
|
717 |
(let ((?x330 (+ |x9$| |x11$| ?x329))) |
|
718 |
(let (($x331 (= ?x330 0))) |
|
719 |
(let ((?x305 (+ |x8$| |x10$| ?x304))) |
|
720 |
(let (($x306 (= ?x305 0))) |
|
721 |
(let ((?x199 (* (~ 1) |x8$|))) |
|
722 |
(let (($x336 (>= |x8$| 0))) |
|
723 |
(let ((?x343 (ite $x336 |x8$| ?x199))) |
|
724 |
(let ((?x354 (* (~ 1) ?x343))) |
|
725 |
(let ((?x355 (+ |x7$| |x9$| ?x354))) |
|
726 |
(let (($x356 (= ?x355 0))) |
|
727 |
(let ((?x380 (+ |x6$| |x8$| ?x379))) |
|
728 |
(let (($x381 (= ?x380 0))) |
|
729 |
(let ((?x148 (* (~ 1) |x5$|))) |
|
730 |
(let ((?x418 (ite $x411 |x5$| ?x148))) |
|
731 |
(let ((?x429 (* (~ 1) ?x418))) |
|
732 |
(let ((?x430 (+ |x4$| |x6$| ?x429))) |
|
733 |
(let (($x431 (= ?x430 0))) |
|
734 |
(let ((?x455 (+ |x3$| |x5$| ?x454))) |
|
735 |
(let (($x456 (= ?x455 0))) |
|
736 |
(let ((?x114 (* (~ 1) |x3$|))) |
|
737 |
(let (($x461 (>= |x3$| 0))) |
|
738 |
(let ((?x468 (ite $x461 |x3$| ?x114))) |
|
739 |
(let ((?x479 (* (~ 1) ?x468))) |
|
740 |
(let ((?x480 (+ |x2$| |x4$| ?x479))) |
|
741 |
(let (($x481 (= ?x480 0))) |
|
742 |
(let ((?x96 (* (~ 1) |x2$|))) |
|
743 |
(let (($x486 (>= |x2$| 0))) |
|
744 |
(let ((?x493 (ite $x486 |x2$| ?x96))) |
|
745 |
(let ((?x504 (* (~ 1) ?x493))) |
|
746 |
(let ((?x505 (+ |x3$| |x1$| ?x504))) |
|
747 |
(let (($x506 (= ?x505 0))) |
|
748 |
(let (($x535 (and $x506 $x481 $x456 $x431 $x406 $x381 $x356 $x306 $x331))) |
|
749 |
(let (($x546 (not (or (not $x535) (and (= |x1$| |x10$|) $x71))))) |
|
| 56109 | 750 |
(let (($x70 (= |x1$| |x10$|))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
751 |
(let (($x72 (and $x70 $x71))) |
| 56109 | 752 |
(let (($x62 (and (= |x10$| (- (ite (< |x9$| 0) (- |x9$|) |x9$|) |x8$|)) (= |x11$| (- (ite (< |x10$| 0) (- |x10$|) |x10$|) |x9$|))))) |
| 56111 | 753 |
(let (($x64 (and (= |x8$| (- (ite (< |x7$| 0) (- |x7$|) |x7$|) |x6$|)) (and (= |x9$| (- (ite (< |x8$| 0) (- |x8$|) |x8$|) |x7$|)) $x62)))) |
754 |
(let (($x66 (and (= |x6$| (- (ite (< |x5$| 0) (- |x5$|) |x5$|) |x4$|)) (and (= |x7$| (- (ite (< |x6$| 0) (- |x6$|) |x6$|) |x5$|)) $x64)))) |
|
755 |
(let (($x68 (and (= |x4$| (- (ite (< |x3$| 0) (- |x3$|) |x3$|) |x2$|)) (and (= |x5$| (- (ite (< |x4$| 0) (- |x4$|) |x4$|) |x3$|)) $x66)))) |
|
756 |
(let (($x73 (=> (and (= |x3$| (- (ite (< |x2$| 0) (- |x2$|) |x2$|) |x1$|)) $x68) $x72))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
757 |
(let (($x74 (not $x73))) |
| 56111 | 758 |
(let (($x57 (< |x10$| 0))) |
759 |
(let ((?x236 (ite $x57 ?x233 |x10$|))) |
|
760 |
(let ((?x242 (+ ?x216 ?x236))) |
|
761 |
(let (($x247 (= |x11$| ?x242))) |
|
762 |
(let (($x51 (< |x9$| 0))) |
|
763 |
(let ((?x219 (ite $x51 ?x216 |x9$|))) |
|
764 |
(let ((?x225 (+ ?x199 ?x219))) |
|
765 |
(let (($x230 (= |x10$| ?x225))) |
|
766 |
(let (($x250 (and $x230 $x247))) |
|
767 |
(let (($x45 (< |x8$| 0))) |
|
768 |
(let ((?x202 (ite $x45 ?x199 |x8$|))) |
|
769 |
(let ((?x208 (+ ?x182 ?x202))) |
|
770 |
(let (($x213 (= |x9$| ?x208))) |
|
771 |
(let (($x253 (and $x213 $x250))) |
|
772 |
(let (($x39 (< |x7$| 0))) |
|
773 |
(let ((?x185 (ite $x39 ?x182 |x7$|))) |
|
774 |
(let ((?x191 (+ ?x165 ?x185))) |
|
775 |
(let (($x196 (= |x8$| ?x191))) |
|
776 |
(let (($x256 (and $x196 $x253))) |
|
777 |
(let (($x33 (< |x6$| 0))) |
|
778 |
(let ((?x168 (ite $x33 ?x165 |x6$|))) |
|
779 |
(let ((?x174 (+ ?x148 ?x168))) |
|
780 |
(let (($x179 (= |x7$| ?x174))) |
|
781 |
(let (($x259 (and $x179 $x256))) |
|
782 |
(let (($x27 (< |x5$| 0))) |
|
783 |
(let ((?x151 (ite $x27 ?x148 |x5$|))) |
|
784 |
(let ((?x157 (+ ?x131 ?x151))) |
|
785 |
(let (($x162 (= |x6$| ?x157))) |
|
786 |
(let (($x262 (and $x162 $x259))) |
|
787 |
(let (($x21 (< |x4$| 0))) |
|
788 |
(let ((?x134 (ite $x21 ?x131 |x4$|))) |
|
789 |
(let ((?x140 (+ ?x114 ?x134))) |
|
790 |
(let (($x145 (= |x5$| ?x140))) |
|
791 |
(let (($x265 (and $x145 $x262))) |
|
792 |
(let (($x15 (< |x3$| 0))) |
|
793 |
(let ((?x117 (ite $x15 ?x114 |x3$|))) |
|
794 |
(let ((?x123 (+ ?x96 ?x117))) |
|
795 |
(let (($x128 (= |x4$| ?x123))) |
|
796 |
(let (($x268 (and $x128 $x265))) |
|
797 |
(let (($x8 (< |x2$| 0))) |
|
798 |
(let ((?x99 (ite $x8 ?x96 |x2$|))) |
|
799 |
(let ((?x106 (+ (* (~ 1) |x1$|) ?x99))) |
|
800 |
(let (($x111 (= |x3$| ?x106))) |
|
801 |
(let (($x271 (and $x111 $x268))) |
|
802 |
(let (($x278 (or (not $x271) $x72))) |
|
803 |
(let (($x526 (and $x456 (and $x431 (and $x406 (and $x381 (and $x356 (and $x306 $x331)))))))) |
|
804 |
(let (($x524 (= $x262 (and $x431 (and $x406 (and $x381 (and $x356 (and $x306 $x331)))))))) |
|
805 |
(let ((@x317 (monotonicity (rewrite (= $x57 (not $x311))) (= ?x236 (ite (not $x311) ?x233 |x10$|))))) |
|
806 |
(let ((@x322 (trans @x317 (rewrite (= (ite (not $x311) ?x233 |x10$|) ?x318)) (= ?x236 ?x318)))) |
|
807 |
(let ((@x328 (monotonicity (monotonicity @x322 (= ?x242 (+ ?x216 ?x318))) (= $x247 (= |x11$| (+ ?x216 ?x318)))))) |
|
808 |
(let ((@x335 (trans @x328 (rewrite (= (= |x11$| (+ ?x216 ?x318)) $x331)) (= $x247 $x331)))) |
|
809 |
(let ((@x292 (monotonicity (rewrite (= $x51 $x287)) (= ?x219 (ite $x287 ?x216 |x9$|))))) |
|
810 |
(let ((@x300 (monotonicity (trans @x292 (rewrite (= (ite $x287 ?x216 |x9$|) ?x293)) (= ?x219 ?x293)) (= ?x225 (+ ?x199 ?x293))))) |
|
811 |
(let ((@x310 (trans (monotonicity @x300 (= $x230 (= |x10$| (+ ?x199 ?x293)))) (rewrite (= (= |x10$| (+ ?x199 ?x293)) $x306)) (= $x230 $x306)))) |
|
812 |
(let ((@x342 (monotonicity (rewrite (= $x45 (not $x336))) (= ?x202 (ite (not $x336) ?x199 |x8$|))))) |
|
813 |
(let ((@x347 (trans @x342 (rewrite (= (ite (not $x336) ?x199 |x8$|) ?x343)) (= ?x202 ?x343)))) |
|
814 |
(let ((@x353 (monotonicity (monotonicity @x347 (= ?x208 (+ ?x182 ?x343))) (= $x213 (= |x9$| (+ ?x182 ?x343)))))) |
|
815 |
(let ((@x360 (trans @x353 (rewrite (= (= |x9$| (+ ?x182 ?x343)) $x356)) (= $x213 $x356)))) |
|
816 |
(let ((@x516 (monotonicity @x360 (monotonicity @x310 @x335 (= $x250 (and $x306 $x331))) (= $x253 (and $x356 (and $x306 $x331)))))) |
|
817 |
(let ((@x367 (monotonicity (rewrite (= $x39 $x362)) (= ?x185 (ite $x362 ?x182 |x7$|))))) |
|
818 |
(let ((@x375 (monotonicity (trans @x367 (rewrite (= (ite $x362 ?x182 |x7$|) ?x368)) (= ?x185 ?x368)) (= ?x191 (+ ?x165 ?x368))))) |
|
819 |
(let ((@x385 (trans (monotonicity @x375 (= $x196 (= |x8$| (+ ?x165 ?x368)))) (rewrite (= (= |x8$| (+ ?x165 ?x368)) $x381)) (= $x196 $x381)))) |
|
820 |
(let ((@x519 (monotonicity @x385 @x516 (= $x256 (and $x381 (and $x356 (and $x306 $x331))))))) |
|
821 |
(let ((@x392 (monotonicity (rewrite (= $x33 $x387)) (= ?x168 (ite $x387 ?x165 |x6$|))))) |
|
822 |
(let ((@x400 (monotonicity (trans @x392 (rewrite (= (ite $x387 ?x165 |x6$|) ?x393)) (= ?x168 ?x393)) (= ?x174 (+ ?x148 ?x393))))) |
|
823 |
(let ((@x410 (trans (monotonicity @x400 (= $x179 (= |x7$| (+ ?x148 ?x393)))) (rewrite (= (= |x7$| (+ ?x148 ?x393)) $x406)) (= $x179 $x406)))) |
|
824 |
(let ((@x522 (monotonicity @x410 @x519 (= $x259 (and $x406 (and $x381 (and $x356 (and $x306 $x331)))))))) |
|
825 |
(let ((@x417 (monotonicity (rewrite (= $x27 $x412)) (= ?x151 (ite $x412 ?x148 |x5$|))))) |
|
826 |
(let ((@x425 (monotonicity (trans @x417 (rewrite (= (ite $x412 ?x148 |x5$|) ?x418)) (= ?x151 ?x418)) (= ?x157 (+ ?x131 ?x418))))) |
|
827 |
(let ((@x435 (trans (monotonicity @x425 (= $x162 (= |x6$| (+ ?x131 ?x418)))) (rewrite (= (= |x6$| (+ ?x131 ?x418)) $x431)) (= $x162 $x431)))) |
|
828 |
(let ((@x442 (monotonicity (rewrite (= $x21 (not $x436))) (= ?x134 (ite (not $x436) ?x131 |x4$|))))) |
|
829 |
(let ((@x447 (trans @x442 (rewrite (= (ite (not $x436) ?x131 |x4$|) ?x443)) (= ?x134 ?x443)))) |
|
830 |
(let ((@x453 (monotonicity (monotonicity @x447 (= ?x140 (+ ?x114 ?x443))) (= $x145 (= |x5$| (+ ?x114 ?x443)))))) |
|
831 |
(let ((@x460 (trans @x453 (rewrite (= (= |x5$| (+ ?x114 ?x443)) $x456)) (= $x145 $x456)))) |
|
832 |
(let ((@x467 (monotonicity (rewrite (= $x15 (not $x461))) (= ?x117 (ite (not $x461) ?x114 |x3$|))))) |
|
833 |
(let ((@x472 (trans @x467 (rewrite (= (ite (not $x461) ?x114 |x3$|) ?x468)) (= ?x117 ?x468)))) |
|
834 |
(let ((@x478 (monotonicity (monotonicity @x472 (= ?x123 (+ ?x96 ?x468))) (= $x128 (= |x4$| (+ ?x96 ?x468)))))) |
|
835 |
(let ((@x485 (trans @x478 (rewrite (= (= |x4$| (+ ?x96 ?x468)) $x481)) (= $x128 $x481)))) |
|
836 |
(let ((@x531 (monotonicity @x485 (monotonicity @x460 (monotonicity @x435 @x522 $x524) (= $x265 $x526)) (= $x268 (and $x481 $x526))))) |
|
837 |
(let ((@x492 (monotonicity (rewrite (= $x8 (not $x486))) (= ?x99 (ite (not $x486) ?x96 |x2$|))))) |
|
838 |
(let ((@x497 (trans @x492 (rewrite (= (ite (not $x486) ?x96 |x2$|) ?x493)) (= ?x99 ?x493)))) |
|
839 |
(let ((@x503 (monotonicity (monotonicity @x497 (= ?x106 (+ (* (~ 1) |x1$|) ?x493))) (= $x111 (= |x3$| (+ (* (~ 1) |x1$|) ?x493)))))) |
|
840 |
(let ((@x510 (trans @x503 (rewrite (= (= |x3$| (+ (* (~ 1) |x1$|) ?x493)) $x506)) (= $x111 $x506)))) |
|
841 |
(let ((@x539 (trans (monotonicity @x510 @x531 (= $x271 (and $x506 (and $x481 $x526)))) (rewrite (= (and $x506 (and $x481 $x526)) $x535)) (= $x271 $x535)))) |
|
842 |
(let ((@x545 (monotonicity (monotonicity @x539 (= (not $x271) (not $x535))) (= $x278 (or (not $x535) $x72))))) |
|
843 |
(let ((@x238 (monotonicity (rewrite (= (- |x10$|) ?x233)) (= (ite $x57 (- |x10$|) |x10$|) ?x236)))) |
|
844 |
(let ((@x241 (monotonicity @x238 (= (- (ite $x57 (- |x10$|) |x10$|) |x9$|) (- ?x236 |x9$|))))) |
|
845 |
(let ((@x246 (trans @x241 (rewrite (= (- ?x236 |x9$|) ?x242)) (= (- (ite $x57 (- |x10$|) |x10$|) |x9$|) ?x242)))) |
|
846 |
(let ((@x249 (monotonicity @x246 (= (= |x11$| (- (ite $x57 (- |x10$|) |x10$|) |x9$|)) $x247)))) |
|
847 |
(let ((@x221 (monotonicity (rewrite (= (- |x9$|) ?x216)) (= (ite $x51 (- |x9$|) |x9$|) ?x219)))) |
|
848 |
(let ((@x224 (monotonicity @x221 (= (- (ite $x51 (- |x9$|) |x9$|) |x8$|) (- ?x219 |x8$|))))) |
|
849 |
(let ((@x229 (trans @x224 (rewrite (= (- ?x219 |x8$|) ?x225)) (= (- (ite $x51 (- |x9$|) |x9$|) |x8$|) ?x225)))) |
|
850 |
(let ((@x232 (monotonicity @x229 (= (= |x10$| (- (ite $x51 (- |x9$|) |x9$|) |x8$|)) $x230)))) |
|
851 |
(let ((@x204 (monotonicity (rewrite (= (- |x8$|) ?x199)) (= (ite $x45 (- |x8$|) |x8$|) ?x202)))) |
|
852 |
(let ((@x207 (monotonicity @x204 (= (- (ite $x45 (- |x8$|) |x8$|) |x7$|) (- ?x202 |x7$|))))) |
|
853 |
(let ((@x212 (trans @x207 (rewrite (= (- ?x202 |x7$|) ?x208)) (= (- (ite $x45 (- |x8$|) |x8$|) |x7$|) ?x208)))) |
|
854 |
(let ((@x215 (monotonicity @x212 (= (= |x9$| (- (ite $x45 (- |x8$|) |x8$|) |x7$|)) $x213)))) |
|
855 |
(let ((@x255 (monotonicity @x215 (monotonicity @x232 @x249 (= $x62 $x250)) (= (and (= |x9$| (- (ite $x45 (- |x8$|) |x8$|) |x7$|)) $x62) $x253)))) |
|
856 |
(let ((@x187 (monotonicity (rewrite (= (- |x7$|) ?x182)) (= (ite $x39 (- |x7$|) |x7$|) ?x185)))) |
|
857 |
(let ((@x190 (monotonicity @x187 (= (- (ite $x39 (- |x7$|) |x7$|) |x6$|) (- ?x185 |x6$|))))) |
|
858 |
(let ((@x195 (trans @x190 (rewrite (= (- ?x185 |x6$|) ?x191)) (= (- (ite $x39 (- |x7$|) |x7$|) |x6$|) ?x191)))) |
|
859 |
(let ((@x198 (monotonicity @x195 (= (= |x8$| (- (ite $x39 (- |x7$|) |x7$|) |x6$|)) $x196)))) |
|
860 |
(let ((@x170 (monotonicity (rewrite (= (- |x6$|) ?x165)) (= (ite $x33 (- |x6$|) |x6$|) ?x168)))) |
|
861 |
(let ((@x173 (monotonicity @x170 (= (- (ite $x33 (- |x6$|) |x6$|) |x5$|) (- ?x168 |x5$|))))) |
|
862 |
(let ((@x178 (trans @x173 (rewrite (= (- ?x168 |x5$|) ?x174)) (= (- (ite $x33 (- |x6$|) |x6$|) |x5$|) ?x174)))) |
|
863 |
(let ((@x181 (monotonicity @x178 (= (= |x7$| (- (ite $x33 (- |x6$|) |x6$|) |x5$|)) $x179)))) |
|
864 |
(let ((@x261 (monotonicity @x181 (monotonicity @x198 @x255 (= $x64 $x256)) (= (and (= |x7$| (- (ite $x33 (- |x6$|) |x6$|) |x5$|)) $x64) $x259)))) |
|
865 |
(let ((@x153 (monotonicity (rewrite (= (- |x5$|) ?x148)) (= (ite $x27 (- |x5$|) |x5$|) ?x151)))) |
|
866 |
(let ((@x156 (monotonicity @x153 (= (- (ite $x27 (- |x5$|) |x5$|) |x4$|) (- ?x151 |x4$|))))) |
|
867 |
(let ((@x161 (trans @x156 (rewrite (= (- ?x151 |x4$|) ?x157)) (= (- (ite $x27 (- |x5$|) |x5$|) |x4$|) ?x157)))) |
|
868 |
(let ((@x164 (monotonicity @x161 (= (= |x6$| (- (ite $x27 (- |x5$|) |x5$|) |x4$|)) $x162)))) |
|
869 |
(let ((@x136 (monotonicity (rewrite (= (- |x4$|) ?x131)) (= (ite $x21 (- |x4$|) |x4$|) ?x134)))) |
|
870 |
(let ((@x139 (monotonicity @x136 (= (- (ite $x21 (- |x4$|) |x4$|) |x3$|) (- ?x134 |x3$|))))) |
|
871 |
(let ((@x144 (trans @x139 (rewrite (= (- ?x134 |x3$|) ?x140)) (= (- (ite $x21 (- |x4$|) |x4$|) |x3$|) ?x140)))) |
|
872 |
(let ((@x147 (monotonicity @x144 (= (= |x5$| (- (ite $x21 (- |x4$|) |x4$|) |x3$|)) $x145)))) |
|
873 |
(let ((@x267 (monotonicity @x147 (monotonicity @x164 @x261 (= $x66 $x262)) (= (and (= |x5$| (- (ite $x21 (- |x4$|) |x4$|) |x3$|)) $x66) $x265)))) |
|
874 |
(let ((@x119 (monotonicity (rewrite (= (- |x3$|) ?x114)) (= (ite $x15 (- |x3$|) |x3$|) ?x117)))) |
|
875 |
(let ((@x122 (monotonicity @x119 (= (- (ite $x15 (- |x3$|) |x3$|) |x2$|) (- ?x117 |x2$|))))) |
|
876 |
(let ((@x127 (trans @x122 (rewrite (= (- ?x117 |x2$|) ?x123)) (= (- (ite $x15 (- |x3$|) |x3$|) |x2$|) ?x123)))) |
|
877 |
(let ((@x130 (monotonicity @x127 (= (= |x4$| (- (ite $x15 (- |x3$|) |x3$|) |x2$|)) $x128)))) |
|
878 |
(let ((@x101 (monotonicity (rewrite (= (- |x2$|) ?x96)) (= (ite $x8 (- |x2$|) |x2$|) ?x99)))) |
|
879 |
(let ((@x104 (monotonicity @x101 (= (- (ite $x8 (- |x2$|) |x2$|) |x1$|) (- ?x99 |x1$|))))) |
|
880 |
(let ((@x110 (trans @x104 (rewrite (= (- ?x99 |x1$|) ?x106)) (= (- (ite $x8 (- |x2$|) |x2$|) |x1$|) ?x106)))) |
|
881 |
(let ((@x113 (monotonicity @x110 (= (= |x3$| (- (ite $x8 (- |x2$|) |x2$|) |x1$|)) $x111)))) |
|
882 |
(let ((@x273 (monotonicity @x113 (monotonicity @x130 @x267 (= $x68 $x268)) (= (and (= |x3$| (- (ite $x8 (- |x2$|) |x2$|) |x1$|)) $x68) $x271)))) |
|
883 |
(let ((@x282 (trans (monotonicity @x273 (= $x73 (=> $x271 $x72))) (rewrite (= (=> $x271 $x72) $x278)) (= $x73 $x278)))) |
|
884 |
(let ((@x550 (trans (monotonicity @x282 (= $x74 (not $x278))) (monotonicity @x545 (= (not $x278) $x546)) (= $x74 $x546)))) |
|
885 |
(let ((@x552 (|not-or-elim| (mp (asserted $x74) @x550 $x546) $x535))) |
|
886 |
(let ((@x557 (|and-elim| @x552 $x406))) |
|
887 |
(let ((@x851 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x406) $x617)) @x557 $x617))) |
|
888 |
(let ((@x948 ((_ |th-lemma| arith triangle-eq) (or (not $x610) $x934)))) |
|
889 |
(let ((@x1027 (|unit-resolution| @x948 (|unit-resolution| (|def-axiom| (or $x387 $x610)) @x1024 $x610) $x934))) |
|
890 |
(let ((@x1030 (lemma ((_ |th-lemma| arith farkas 1 1 1 1 1) @x1027 @x851 @x1025 @x842 @x1024 false) (or $x361 $x411 $x387)))) |
|
891 |
(let ((@x615 (|def-axiom| (or $x386 $x611)))) |
|
892 |
(let ((@x1061 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x611) $x778)) (|unit-resolution| @x615 (|unit-resolution| @x1030 @x1025 @x842 $x387) $x611) $x778))) |
|
893 |
(let ((@x1062 ((_ |th-lemma| arith farkas 1 1 1 1 1) (|unit-resolution| @x1030 @x1025 @x842 $x387) @x1025 @x851 @x842 @x1061 false))) |
|
894 |
(let ((@x1064 (lemma @x1062 (or $x361 $x411)))) |
|
895 |
(let ((@x621 (|def-axiom| (or $x362 $x618)))) |
|
896 |
(let ((@x863 ((_ |th-lemma| arith triangle-eq) (or (not $x618) $x838)))) |
|
897 |
(let ((@x1087 (|unit-resolution| @x863 (|unit-resolution| @x621 (|unit-resolution| @x1064 @x842 $x361) $x618) $x838))) |
|
898 |
(let ((?x663 (+ |x8$| ?x354))) |
|
899 |
(let (($x661 (<= ?x663 0))) |
|
900 |
(let (($x626 (= |x8$| ?x343))) |
|
901 |
(let (($x665 (>= ?x663 0))) |
|
902 |
(let ((@x1538 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x661 $x665)) (hypothesis (not $x661)) $x665))) |
|
903 |
(let (($x627 (= ?x199 ?x343))) |
|
904 |
(let (($x337 (not $x336))) |
|
905 |
(let ((@x1527 (hypothesis $x337))) |
|
906 |
(let ((@x631 (|def-axiom| (or $x336 $x627)))) |
|
907 |
(let ((@x1528 (|unit-resolution| @x631 @x1527 $x627))) |
|
908 |
(let ((?x664 (+ ?x199 ?x354))) |
|
909 |
(let (($x873 (<= ?x664 0))) |
|
910 |
(let (($x1510 (not $x873))) |
|
911 |
(let ((@x856 (hypothesis $x665))) |
|
912 |
(let ((@x1516 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x627) $x873)) (hypothesis $x627) (hypothesis $x1510) false))) |
|
913 |
(let ((@x1517 (lemma @x1516 (or (not $x627) $x873)))) |
|
914 |
(let ((@x1532 (|unit-resolution| @x1517 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 1) (or (not $x665) $x336 $x1510)) @x1527 @x856 $x1510) @x1528 false))) |
|
915 |
(let ((@x629 (|def-axiom| (or $x337 $x626)))) |
|
916 |
(let ((@x1540 (|unit-resolution| @x629 (|unit-resolution| (lemma @x1532 (or $x336 (not $x665))) @x1538 $x336) $x626))) |
|
917 |
(let ((@x1127 ((_ |th-lemma| arith triangle-eq) (or (not $x626) $x661)))) |
|
918 |
(let ((@x1542 (lemma (|unit-resolution| @x1127 @x1540 (hypothesis (not $x661)) false) $x661))) |
|
919 |
(let ((@x1206 (hypothesis $x838))) |
|
920 |
(let ((@x1211 (hypothesis $x661))) |
|
921 |
(let ((@x843 (hypothesis $x387))) |
|
922 |
(let (($x625 (>= ?x380 0))) |
|
923 |
(let ((@x558 (|and-elim| @x552 $x381))) |
|
924 |
(let ((@x833 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x381) $x625)) @x558 $x625))) |
|
925 |
(let (($x633 (>= ?x355 0))) |
|
926 |
(let ((@x559 (|and-elim| @x552 $x356))) |
|
927 |
(let ((@x1125 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x356) $x633)) @x559 $x633))) |
|
928 |
(let ((@x1429 (lemma ((_ |th-lemma| arith farkas 1 1 1 1 1 1) @x1125 @x1426 @x833 @x843 @x1211 @x1206 false) (or $x286 $x386 (not $x661) (not $x838))))) |
|
929 |
(let ((@x1915 (|unit-resolution| (|unit-resolution| @x1429 @x1542 (or $x286 $x386 (not $x838))) @x1087 @x1426 $x386))) |
|
930 |
(let ((@x613 (|def-axiom| (or $x387 $x610)))) |
|
931 |
(let ((@x1917 (|unit-resolution| @x948 (|unit-resolution| @x613 @x1915 $x610) $x934))) |
|
932 |
(let ((?x678 (+ |x3$| ?x479))) |
|
933 |
(let (($x670 (>= ?x678 0))) |
|
934 |
(let (($x586 (= |x3$| ?x468))) |
|
935 |
(let ((?x929 (+ ?x148 ?x429))) |
|
936 |
(let (($x1022 (>= ?x929 0))) |
|
937 |
(let (($x603 (= ?x148 ?x418))) |
|
938 |
(let ((@x607 (|def-axiom| (or $x411 $x603)))) |
|
939 |
(let ((@x994 (|unit-resolution| @x607 @x842 $x603))) |
|
940 |
(let ((@x1037 ((_ |th-lemma| arith triangle-eq) (or (not $x603) $x1022)))) |
|
941 |
(let ((@x1038 (|unit-resolution| @x1037 @x994 $x1022))) |
|
942 |
(let (($x462 (not $x461))) |
|
943 |
(let ((@x686 (hypothesis $x462))) |
|
944 |
(let (($x601 (>= ?x455 0))) |
|
945 |
(let ((@x555 (|and-elim| @x552 $x456))) |
|
946 |
(let ((@x685 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x456) $x601)) @x555 $x601))) |
|
947 |
(let (($x608 (<= ?x430 0))) |
|
948 |
(let ((@x556 (|and-elim| @x552 $x431))) |
|
949 |
(let ((@x810 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x431) $x608)) @x556 $x608))) |
|
950 |
(let ((?x755 (+ |x5$| ?x429))) |
|
951 |
(let (($x773 (<= ?x755 0))) |
|
952 |
(let (($x931 (<= ?x929 0))) |
|
953 |
(let ((@x997 ((_ |th-lemma| arith triangle-eq) (or (not $x603) $x931)))) |
|
954 |
(let ((@x998 (|unit-resolution| @x997 @x994 $x931))) |
|
955 |
(let ((@x1067 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 2) (or $x773 (not $x931) $x411)) @x998 @x842 $x773))) |
|
956 |
(let (($x609 (>= ?x430 0))) |
|
957 |
(let ((@x797 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x431) $x609)) @x556 $x609))) |
|
958 |
(let ((@x801 ((_ |th-lemma| arith assign-bounds 1 1 1 1 1) (or $x386 (not $x773) (not $x601) $x461 $x782 (not $x609))))) |
|
959 |
(let (($x594 (= |x4$| ?x443))) |
|
960 |
(let ((@x1070 ((_ |th-lemma| arith assign-bounds 1 1 1 1) (or $x436 (not $x931) $x411 (not $x609) $x386)))) |
|
961 |
(let ((@x597 (|def-axiom| (or (not $x436) $x594)))) |
|
962 |
(let ((@x1072 (|unit-resolution| @x597 (|unit-resolution| @x1070 @x843 @x797 @x842 @x998 $x436) $x594))) |
|
963 |
(let ((@x691 ((_ |th-lemma| arith triangle-eq) (or (not $x594) $x676)))) |
|
964 |
(let ((@x1073 (|unit-resolution| @x691 @x1072 (|unit-resolution| @x801 @x843 @x797 @x1067 @x686 @x685 $x782) false))) |
|
965 |
(let ((@x1081 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 1 -1 1 -1) (or $x743 (not $x601) $x461 (not $x1022) (not $x608) $x387)) (|unit-resolution| (lemma @x1073 (or $x386 $x461 $x411)) @x686 @x842 $x386) @x810 @x685 @x686 @x1038 $x743))) |
|
966 |
(let (($x595 (= ?x131 ?x443))) |
|
967 |
(let (($x437 (not $x436))) |
|
968 |
(let ((@x1082 (|unit-resolution| @x613 (|unit-resolution| (lemma @x1073 (or $x386 $x461 $x411)) @x686 @x842 $x386) $x610))) |
|
969 |
(let ((@x806 ((_ |th-lemma| arith triangle-eq) (or (not $x610) $x671)))) |
|
970 |
(let (($x668 (>= ?x666 0))) |
|
971 |
(let ((@x924 ((_ |th-lemma| arith triangle-eq) (or (not $x618) $x668)))) |
|
972 |
(let ((@x1086 (|unit-resolution| @x924 (|unit-resolution| @x621 (|unit-resolution| @x1064 @x842 $x361) $x618) $x668))) |
|
973 |
(let ((@x1092 ((_ |th-lemma| arith assign-bounds 1 1 1 1 1) (or $x336 (not $x625) (not $x838) (not $x934) (not $x617) $x411)))) |
|
974 |
(let ((@x1093 (|unit-resolution| @x1092 (|unit-resolution| @x948 @x1082 $x934) @x833 @x842 @x851 @x1087 $x336))) |
|
975 |
(let ((@x681 (hypothesis $x668))) |
|
976 |
(let ((@x692 (|unit-resolution| @x691 (|unit-resolution| @x597 (hypothesis $x436) $x594) $x676))) |
|
977 |
(let ((@x687 (hypothesis $x436))) |
|
978 |
(let (($x616 (<= ?x405 0))) |
|
979 |
(let ((@x696 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x406) $x616)) @x557 $x616))) |
|
980 |
(let ((@x697 (hypothesis $x671))) |
|
981 |
(let (($x624 (<= ?x380 0))) |
|
982 |
(let ((@x701 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x381) $x624)) @x558 $x624))) |
|
983 |
(let ((@x702 (hypothesis $x336))) |
|
984 |
(let ((@x707 (lemma ((_ |th-lemma| arith farkas 1 -1 1 -1 1 -1 -1 1 1) @x702 @x701 @x697 @x696 @x687 @x692 @x686 @x685 @x681 false) (or $x461 $x337 (not $x671) $x437 (not $x668))))) |
|
985 |
(let ((@x1094 (|unit-resolution| @x707 @x1093 @x1086 @x686 (|unit-resolution| @x806 @x1082 $x671) $x437))) |
|
986 |
(let ((@x599 (|def-axiom| (or $x436 $x595)))) |
|
987 |
(let ((@x738 ((_ |th-lemma| arith triangle-eq) (or (not $x595) $x673)))) |
|
988 |
(let ((@x1098 (lemma (|unit-resolution| @x738 (|unit-resolution| @x599 @x1094 $x595) @x1081 false) (or $x461 $x411)))) |
|
989 |
(let ((@x589 (|def-axiom| (or $x462 $x586)))) |
|
990 |
(let ((@x1268 ((_ |th-lemma| arith triangle-eq) (or (not $x586) $x670)))) |
|
991 |
(let ((@x1269 (|unit-resolution| @x1268 (|unit-resolution| @x589 (|unit-resolution| @x1098 @x842 $x461) $x586) $x670))) |
|
992 |
(let (($x667 (>= ?x675 0))) |
|
993 |
(let (($x1499 (<= ?x1498 0))) |
|
994 |
(let ((@x1556 ((_ |th-lemma| arith triangle-eq) (or (not $x635) $x1499)))) |
|
995 |
(let ((@x1557 (|unit-resolution| @x1556 @x1553 $x1499))) |
|
996 |
(let (($x930 (>= ?x672 0))) |
|
997 |
(let ((@x964 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x595) $x930)) (|unit-resolution| @x599 (hypothesis $x437) $x595) $x930))) |
|
998 |
(let ((@x939 (|unit-resolution| @x738 (|unit-resolution| @x599 (hypothesis $x437) $x595) $x673))) |
|
999 |
(let ((@x1185 (hypothesis $x411))) |
|
1000 |
(let (($x1090 (not $x838))) |
|
1001 |
(let (($x837 (>= ?x775 0))) |
|
1002 |
(let ((@x890 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x611) $x837)) (hypothesis $x611) (hypothesis (not $x837)) false))) |
|
1003 |
(let ((@x891 (lemma @x890 (or (not $x611) $x837)))) |
|
1004 |
(let ((@x1133 (|unit-resolution| @x891 (|unit-resolution| @x615 @x843 $x611) $x837))) |
|
1005 |
(let ((?x776 (+ ?x182 ?x379))) |
|
1006 |
(let (($x777 (<= ?x776 0))) |
|
1007 |
(let (($x900 (not $x777))) |
|
1008 |
(let ((@x904 (hypothesis $x900))) |
|
1009 |
(let (($x619 (= ?x182 ?x368))) |
|
1010 |
(let (($x821 (not $x619))) |
|
1011 |
(let ((@x823 ((_ |th-lemma| arith triangle-eq) (or $x821 $x777)))) |
|
1012 |
(let ((@x907 (lemma (|unit-resolution| @x823 (hypothesis $x619) @x904 false) (or $x821 $x777)))) |
|
1013 |
(let ((@x623 (|def-axiom| (or $x361 $x619)))) |
|
1014 |
(let ((@x1363 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 -1) (or $x777 $x362 $x1090)) (|unit-resolution| @x623 (|unit-resolution| @x907 @x904 $x821) $x361) @x904 $x1090))) |
|
1015 |
(let ((@x1364 (|unit-resolution| @x621 (|unit-resolution| @x623 (|unit-resolution| @x907 @x904 $x821) $x361) $x618))) |
|
1016 |
(let ((@x1366 (lemma (|unit-resolution| @x863 @x1364 @x1363 false) $x777))) |
|
1017 |
(let ((@x1447 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 1 -1 1 -1) (or $x900 (not $x625) $x336 (not $x837) (not $x616) $x412)) @x833 @x1366 @x696 (or $x336 (not $x837) $x412)))) |
|
1018 |
(let ((@x1476 (|unit-resolution| @x1127 (|unit-resolution| @x629 (|unit-resolution| @x1447 @x1133 @x1185 $x336) $x626) $x661))) |
|
1019 |
(let ((?x1358 (+ ?x96 ?x504))) |
|
1020 |
(let (($x1367 (<= ?x1358 0))) |
|
1021 |
(let (($x579 (= ?x96 ?x493))) |
|
1022 |
(let (($x487 (not $x486))) |
|
1023 |
(let (($x602 (= |x5$| ?x418))) |
|
1024 |
(let ((@x605 (|def-axiom| (or $x412 $x602)))) |
|
1025 |
(let ((@x792 ((_ |th-lemma| arith triangle-eq) (or (not $x602) $x773)))) |
|
1026 |
(let ((@x1187 (|unit-resolution| @x792 (|unit-resolution| @x605 @x1185 $x602) $x773))) |
|
1027 |
(let ((@x761 (hypothesis $x437))) |
|
1028 |
(let ((@x1357 (lemma ((_ |th-lemma| arith farkas 1 1 1 1 1) @x1185 @x797 @x761 @x843 @x1187 false) (or $x436 $x412 $x386)))) |
|
1029 |
(let ((@x826 ((_ |th-lemma| arith triangle-eq) (or (not $x594) $x667)))) |
|
1030 |
(let ((@x1468 (|unit-resolution| @x826 (|unit-resolution| @x597 (|unit-resolution| @x1357 @x843 @x1185 $x436) $x594) $x667))) |
|
1031 |
(let ((@x1115 ((_ |th-lemma| arith triangle-eq) (or (not $x626) $x665)))) |
|
1032 |
(let ((@x1471 (|unit-resolution| @x1115 (|unit-resolution| @x629 (|unit-resolution| @x1447 @x1133 @x1185 $x336) $x626) $x665))) |
|
1033 |
(let ((@x1472 (|unit-resolution| @x691 (|unit-resolution| @x597 (|unit-resolution| @x1357 @x843 @x1185 $x436) $x594) $x676))) |
|
1034 |
(let ((@x1473 (|unit-resolution| (|unit-resolution| @x801 @x797 @x685 (or $x386 (not $x773) $x461 $x782)) @x1472 @x1187 @x843 $x461))) |
|
1035 |
(let ((@x1475 (|unit-resolution| @x1268 (|unit-resolution| @x589 @x1473 $x586) $x670))) |
|
1036 |
(let ((@x848 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x611) $x778)) (|unit-resolution| @x615 @x843 $x611) $x778))) |
|
1037 |
(let ((?x657 (+ |x9$| ?x304))) |
|
1038 |
(let (($x659 (>= ?x657 0))) |
|
1039 |
(let (($x634 (= |x9$| ?x293))) |
|
1040 |
(let (($x774 (>= ?x755 0))) |
|
1041 |
(let ((@x789 ((_ |th-lemma| arith triangle-eq) (or (not $x602) $x774)))) |
|
1042 |
(let ((@x1477 (|unit-resolution| @x789 (|unit-resolution| @x605 @x1185 $x602) $x774))) |
|
1043 |
(let (($x858 (not $x665))) |
|
1044 |
(let (($x901 (not $x667))) |
|
1045 |
(let (($x815 (not $x774))) |
|
1046 |
(let (($x1196 (not $x661))) |
|
1047 |
(let (($x798 (not $x773))) |
|
1048 |
(let (($x564 (not $x70))) |
|
1049 |
(let (($x658 (<= ?x657 0))) |
|
1050 |
(let ((@x1379 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 1 1 1 1 1) (or $x286 $x361 (not $x633) $x900 (not $x625) $x386 $x1196)) @x1025 @x833 @x1125 @x843 @x1366 @x1211 $x286))) |
|
1051 |
(let ((@x637 (|def-axiom| (or $x287 $x634)))) |
|
1052 |
(let ((@x1149 ((_ |th-lemma| arith triangle-eq) (or (not $x634) $x658)))) |
|
1053 |
(let (($x1354 (>= ?x776 0))) |
|
1054 |
(let ((@x1385 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x821 $x1354)) (|unit-resolution| @x623 @x1025 $x619) $x1354))) |
|
1055 |
(let ((@x1207 (hypothesis $x773))) |
|
1056 |
(let ((@x866 (hypothesis $x676))) |
|
1057 |
(let ((@x1388 (|unit-resolution| (|unit-resolution| @x801 @x797 @x685 (or $x386 $x798 $x461 $x782)) @x866 @x1207 @x843 $x461))) |
|
1058 |
(let ((@x1390 (|unit-resolution| @x1268 (|unit-resolution| @x589 @x1388 $x586) $x670))) |
|
1059 |
(let ((@x898 (hypothesis $x667))) |
|
1060 |
(let (($x641 (>= ?x305 0))) |
|
1061 |
(let ((@x560 (|and-elim| @x552 $x306))) |
|
1062 |
(let ((@x1136 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x306) $x641)) @x560 $x641))) |
|
1063 |
(let ((@x1199 ((_ |th-lemma| arith assign-bounds 1 1 1 1 1) (or $x361 $x311 $x1196 (not $x633) (not $x658) (not $x641))))) |
|
1064 |
(let ((@x1393 (|unit-resolution| (|unit-resolution| @x1199 @x1136 @x1125 (or $x361 $x311 $x1196 (not $x658))) (|unit-resolution| @x1149 (|unit-resolution| @x637 @x1379 $x634) $x658) @x1211 @x1025 $x311))) |
|
1065 |
(let ((@x645 (|def-axiom| (or (not $x311) $x642)))) |
|
1066 |
(let ((@x1396 ((_ |th-lemma| arith triangle-eq) (or (not $x642) $x1369)))) |
|
1067 |
(let (($x1139 (not $x658))) |
|
1068 |
(let (($x1374 (not $x1354))) |
|
1069 |
(let (($x1260 (not $x670))) |
|
1070 |
(let (($x1104 (not $x778))) |
|
1071 |
(let (($x1373 (not $x1369))) |
|
1072 |
(let ((@x1137 (hypothesis $x658))) |
|
1073 |
(let ((@x1370 (hypothesis $x1354))) |
|
1074 |
(let (($x592 (<= ?x480 0))) |
|
1075 |
(let ((@x554 (|and-elim| @x552 $x481))) |
|
1076 |
(let ((@x1252 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x481) $x592)) @x554 $x592))) |
|
1077 |
(let (($x600 (<= ?x455 0))) |
|
1078 |
(let ((@x830 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x456) $x600)) @x555 $x600))) |
|
1079 |
(let ((@x1249 (hypothesis $x670))) |
|
1080 |
(let ((@x1248 (hypothesis $x778))) |
|
1081 |
(let (($x764 (not $x655))) |
|
1082 |
(let ((@x1253 (hypothesis $x764))) |
|
1083 |
(let (($x649 (>= ?x330 0))) |
|
1084 |
(let ((@x561 (|and-elim| @x552 $x331))) |
|
1085 |
(let ((@x1256 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x331) $x649)) @x561 $x649))) |
|
1086 |
(let ((@x1371 (hypothesis $x1369))) |
|
1087 |
(let ((@x1372 ((_ |th-lemma| arith farkas -1 1 -1 -1 1 -1 -1 -1 1 1 -1 1 1) @x1136 @x1371 @x1256 @x1253 @x1248 @x851 @x898 @x1249 @x830 @x1252 @x1370 @x701 @x1137 false))) |
|
1088 |
(let ((@x1376 (lemma @x1372 (or $x655 $x1373 $x1104 $x901 $x1260 $x1374 $x1139)))) |
|
1089 |
(let ((@x1398 (|unit-resolution| @x1376 (|unit-resolution| @x1396 (|unit-resolution| @x645 @x1393 $x642) $x1369) @x848 @x898 @x1390 @x1385 (|unit-resolution| @x1149 (|unit-resolution| @x637 @x1379 $x634) $x658) $x655))) |
|
1090 |
(let ((@x1277 ((_ |th-lemma| arith triangle-eq) (or $x71 $x764 $x708)))) |
|
1091 |
(let (($x565 (not $x71))) |
|
1092 |
(let (($x566 (or $x564 $x565))) |
|
1093 |
(let ((@x572 (monotonicity (rewrite (= $x72 (not $x566))) (= (not $x72) (not (not $x566)))))) |
|
1094 |
(let ((@x576 (trans @x572 (rewrite (= (not (not $x566)) $x566)) (= (not $x72) $x566)))) |
|
1095 |
(let ((@x577 (mp (|not-or-elim| (mp (asserted $x74) @x550 $x546) (not $x72)) @x576 $x566))) |
|
1096 |
(let ((?x650 (+ |x1$| ?x233))) |
|
1097 |
(let (($x652 (>= ?x650 0))) |
|
1098 |
(let (($x632 (<= ?x355 0))) |
|
1099 |
(let ((@x855 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x356) $x632)) @x559 $x632))) |
|
1100 |
(let ((@x897 (hypothesis $x774))) |
|
1101 |
(let (($x585 (>= ?x505 0))) |
|
1102 |
(let ((@x553 (|and-elim| @x552 $x506))) |
|
1103 |
(let ((@x1284 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x506) $x585)) @x553 $x585))) |
|
1104 |
(let ((@x1404 ((_ |th-lemma| arith assign-bounds 1 1 1 1 1 1 1 1) (or $x487 $x1260 (not $x592) (not $x600) $x901 $x361 (not $x617) $x386 $x1104)))) |
|
1105 |
(let ((@x1406 (|unit-resolution| @x1404 @x830 @x851 @x1252 (or $x487 $x1260 $x901 $x361 $x386 $x1104)))) |
|
1106 |
(let ((@x583 (|def-axiom| (or $x486 $x579)))) |
|
1107 |
(let ((@x1408 (|unit-resolution| @x583 (|unit-resolution| @x1406 @x1025 @x843 @x848 @x898 @x1390 $x487) $x579))) |
|
1108 |
(let ((@x1411 ((_ |th-lemma| arith triangle-eq) (or (not $x579) $x1367)))) |
|
1109 |
(let ((@x1413 ((_ |th-lemma| arith assign-bounds 1 -1 -1 1 -3 3 2 -2 -2 2 1 -1 -1 1 -1 1 -1) (|unit-resolution| @x1411 @x1408 $x1367) @x1284 @x897 @x810 @x898 @x830 @x848 @x851 @x1390 @x1252 (|unit-resolution| @x1396 (|unit-resolution| @x645 @x1393 $x642) $x1369) @x1256 @x1263 @x855 @x1385 @x701 @x856 $x652))) |
|
1110 |
(let (($x651 (<= ?x650 0))) |
|
1111 |
(let (($x648 (<= ?x330 0))) |
|
1112 |
(let ((@x713 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x331) $x648)) @x561 $x648))) |
|
1113 |
(let (($x662 (>= ?x660 0))) |
|
1114 |
(let ((@x1165 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x642) $x662)) (hypothesis $x642) (hypothesis (not $x662)) false))) |
|
1115 |
(let ((@x1166 (lemma @x1165 (or (not $x642) $x662)))) |
|
1116 |
(let (($x593 (>= ?x480 0))) |
|
1117 |
(let ((@x718 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x481) $x593)) @x554 $x593))) |
|
1118 |
(let (($x679 (<= ?x678 0))) |
|
1119 |
(let ((@x723 ((_ |th-lemma| arith triangle-eq) (or (not $x586) $x679)))) |
|
1120 |
(let (($x584 (<= ?x505 0))) |
|
1121 |
(let ((@x1296 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x506) $x584)) @x553 $x584))) |
|
1122 |
(let (($x1368 (>= ?x1358 0))) |
|
1123 |
(let ((@x1419 ((_ |th-lemma| arith assign-bounds 1 -1 -1 1 -3 3 2 -2 -2 2 1 -1 -1 1 -1 1 -1) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x579) $x1368)) @x1408 $x1368) @x1296 @x1207 @x797 @x866 @x685 @x1133 @x696 (|unit-resolution| @x723 (|unit-resolution| @x589 @x1388 $x586) $x679) @x718 (|unit-resolution| @x1166 (|unit-resolution| @x645 @x1393 $x642) $x662) @x713 @x1398 @x1125 @x1366 @x833 @x1211 $x651))) |
|
1124 |
(let ((@x1304 ((_ |th-lemma| arith triangle-eq) (or $x70 (not $x651) (not $x652))))) |
|
1125 |
(let ((@x1420 (|unit-resolution| @x1304 @x1419 @x1413 (|unit-resolution| @x577 (|unit-resolution| @x1277 @x1398 @x1263 $x71) $x564) false))) |
|
1126 |
(let ((@x1478 (|unit-resolution| (lemma @x1420 (or $x361 $x798 $x782 $x1196 $x815 $x901 $x708 $x858 $x386)) @x1263 @x1472 @x1476 @x1477 @x1468 @x1187 @x1471 @x843 $x361))) |
|
1127 |
(let ((@x1481 (|unit-resolution| @x1429 (|unit-resolution| @x863 (|unit-resolution| @x621 @x1478 $x618) $x838) @x1476 @x843 $x286))) |
|
1128 |
(let ((@x1144 ((_ |th-lemma| arith triangle-eq) (or (not $x634) $x659)))) |
|
1129 |
(let ((@x1483 (|unit-resolution| @x1144 (|unit-resolution| @x637 @x1481 $x634) $x659))) |
|
1130 |
(let (($x1302 (not $x652))) |
|
1131 |
(let ((@x729 (hypothesis $x659))) |
|
1132 |
(let (($x640 (<= ?x305 0))) |
|
1133 |
(let ((@x728 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x306) $x640)) @x560 $x640))) |
|
1134 |
(let ((@x1258 ((_ |th-lemma| arith farkas 1/2 -1 -1/2 -1/2 1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 1) @x681 @x855 @x701 (hypothesis $x1247) @x1256 @x1253 @x1252 @x1249 @x830 @x729 @x728 @x898 @x1248 @x851 @x856 false))) |
|
1135 |
(let ((@x1262 (lemma @x1258 (or $x655 (not $x668) $x1259 $x1260 (not $x659) $x901 $x1104 $x858)))) |
|
1136 |
(let ((@x1309 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x1119 $x1247)) (hypothesis $x643) (hypothesis $x1259) false))) |
|
1137 |
(let ((@x1310 (lemma @x1309 (or $x1119 $x1247)))) |
|
1138 |
(let ((@x1424 (|unit-resolution| @x1310 (|unit-resolution| @x1262 @x1253 @x856 @x1249 @x681 @x898 @x1248 @x729 $x1259) $x1119))) |
|
1139 |
(let ((@x647 (|def-axiom| (or $x311 $x643)))) |
|
1140 |
(let ((@x1431 (|unit-resolution| @x1396 (|unit-resolution| @x645 (|unit-resolution| @x647 @x1424 $x311) $x642) $x1369))) |
|
1141 |
(let ((@x1432 ((_ |th-lemma| arith farkas -2 -1 2 1 -1 2 -1 1 1 -1 1 1 1 -1 -1 1) @x855 @x701 @x856 @x729 @x728 (|unit-resolution| @x647 @x1424 $x311) @x1431 @x1256 @x1253 @x1248 @x851 @x898 @x1249 @x830 @x1252 @x681 false))) |
|
1142 |
(let ((@x1485 (|unit-resolution| (lemma @x1432 (or $x655 $x858 (not $x659) $x1104 $x901 $x1260 (not $x668))) @x1483 @x1471 @x848 @x1468 @x1475 (|unit-resolution| @x924 (|unit-resolution| @x621 @x1478 $x618) $x668) $x655))) |
|
1143 |
(let ((@x1449 (|unit-resolution| @x629 (|unit-resolution| @x1447 (hypothesis $x837) @x1185 $x336) $x626))) |
|
1144 |
(let ((@x865 (hypothesis $x837))) |
|
1145 |
(let (($x1301 (not $x651))) |
|
1146 |
(let ((@x1318 (hypothesis $x1301))) |
|
1147 |
(let ((?x1142 (+ |x2$| ?x504))) |
|
1148 |
(let (($x1237 (>= ?x1142 0))) |
|
1149 |
(let (($x578 (= |x2$| ?x493))) |
|
1150 |
(let (($x1409 (not $x579))) |
|
1151 |
(let (($x1437 (not $x1368))) |
|
1152 |
(let ((@x867 (hypothesis $x679))) |
|
1153 |
(let ((@x1436 ((_ |th-lemma| arith farkas -1 1 1 -1 -2 -1 2 1 1 -1 -1 1 -1 1 1) @x1137 @x1136 @x865 @x696 @x866 @x867 @x685 @x718 @x1125 @x1211 @x1296 @x1318 @x1207 @x797 (hypothesis $x1368) false))) |
|
1154 |
(let ((@x1439 (lemma @x1436 (or $x1437 $x1139 (not $x837) $x782 (not $x679) $x1196 $x651 $x798)))) |
|
1155 |
(let ((@x1451 (|unit-resolution| @x1439 @x1318 @x865 @x866 @x867 (|unit-resolution| @x1127 @x1449 $x661) @x1137 @x1187 $x1437))) |
|
1156 |
(let ((@x1441 (hypothesis $x579))) |
|
1157 |
(let ((@x1442 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x1409 $x1368)) @x1441 (hypothesis $x1437) false))) |
|
1158 |
(let ((@x1443 (lemma @x1442 (or $x1409 $x1368)))) |
|
1159 |
(let ((@x581 (|def-axiom| (or $x487 $x578)))) |
|
1160 |
(let ((@x1454 (|unit-resolution| @x581 (|unit-resolution| @x583 (|unit-resolution| @x1443 @x1451 $x1409) $x486) $x578))) |
|
1161 |
(let ((@x1298 ((_ |th-lemma| arith triangle-eq) (or (not $x578) $x1237)))) |
|
1162 |
(let ((@x1456 ((_ |th-lemma| arith farkas 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 1/2 -1/2 1/2 -1/2 1) @x1249 @x1252 (|unit-resolution| @x1298 @x1454 $x1237) @x1296 @x1318 @x1187 @x797 @x1137 @x1136 @x865 @x696 @x1125 (|unit-resolution| @x1127 @x1449 $x661) @x1185 false))) |
|
1163 |
(let ((@x1490 (|unit-resolution| (lemma @x1456 (or $x651 $x1260 $x1139 (not $x837) $x412 $x782 (not $x679))) (|unit-resolution| @x1149 (|unit-resolution| @x637 @x1481 $x634) $x658) @x1475 @x1133 @x1185 @x1472 (|unit-resolution| @x723 (|unit-resolution| @x589 @x1473 $x586) $x679) $x651))) |
|
1164 |
(let ((@x1491 (|unit-resolution| @x1304 @x1490 (|unit-resolution| @x577 (|unit-resolution| @x1277 @x1485 @x1263 $x71) $x564) $x1302))) |
|
1165 |
(let (($x1236 (<= ?x1142 0))) |
|
1166 |
(let ((@x1291 ((_ |th-lemma| arith triangle-eq) (or (not $x578) $x1236)))) |
|
1167 |
(let ((@x1461 (|unit-resolution| @x1291 (|unit-resolution| @x581 (hypothesis $x486) $x578) $x1236))) |
|
1168 |
(let ((@x1463 ((_ |th-lemma| arith farkas -1 1 -1 1 -1 1 1 -1 -1 1 1 -1 -2 -2 2 1) @x1284 (hypothesis $x1302) @x897 @x810 @x729 @x728 @x1248 @x851 @x1249 @x1252 @x855 @x856 (hypothesis $x486) @x898 @x830 @x1461 false))) |
|
1169 |
(let ((@x1465 (lemma @x1463 (or $x487 $x652 $x815 (not $x659) $x1104 $x1260 $x858 $x901)))) |
|
1170 |
(let ((@x1493 (|unit-resolution| @x583 (|unit-resolution| @x1465 @x1491 @x1477 @x1483 @x848 @x1475 @x1471 @x1468 $x487) $x579))) |
|
1171 |
(let ((@x1495 ((_ |th-lemma| arith farkas -1 1 -1 1 -1 1 1 -1 -1 1 1 -1 -2 2 1) @x1284 @x1491 @x1477 @x810 @x1483 @x728 @x848 @x851 @x1475 @x1252 @x855 @x1471 @x1468 @x830 (|unit-resolution| @x1411 @x1493 $x1367) false))) |
|
1172 |
(let (($x704 (not $x671))) |
|
1173 |
(let ((@x1150 (|unit-resolution| @x1149 (|unit-resolution| @x637 (hypothesis $x286) $x634) $x658))) |
|
1174 |
(let ((@x1076 (hypothesis $x286))) |
|
1175 |
(let (($x312 (not $x311))) |
|
1176 |
(let (($x1162 (not $x642))) |
|
1177 |
(let (($x732 (not $x662))) |
|
1178 |
(let ((@x1145 (|unit-resolution| @x1144 (|unit-resolution| @x637 @x1076 $x634) $x659))) |
|
1179 |
(let ((@x709 (hypothesis $x708))) |
|
1180 |
(let ((@x714 (hypothesis $x662))) |
|
1181 |
(let (($x845 (not $x611))) |
|
1182 |
(let (($x870 (not $x837))) |
|
1183 |
(let ((?x674 (+ ?x114 ?x479))) |
|
1184 |
(let (($x677 (<= ?x674 0))) |
|
1185 |
(let (($x587 (= ?x114 ?x468))) |
|
1186 |
(let ((@x591 (|def-axiom| (or $x461 $x587)))) |
|
1187 |
(let ((@x760 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x587) $x677)) (|unit-resolution| @x591 @x686 $x587) $x677))) |
|
1188 |
(let ((@x942 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 1) (or $x676 $x436 $x743)) @x939 @x761 $x676))) |
|
1189 |
(let ((@x864 (|unit-resolution| @x863 (|unit-resolution| @x621 (hypothesis $x361) $x618) $x838))) |
|
1190 |
(let ((@x839 (hypothesis $x361))) |
|
1191 |
(let ((@x868 ((_ |th-lemma| arith farkas -1 1 -1 1 -1 -1 1 1 -1 1 1 -1 -2 1) @x833 @x867 @x729 @x728 @x718 @x714 @x713 @x709 @x685 @x866 @x696 @x865 @x839 @x864 false))) |
|
1192 |
(let ((@x877 (|unit-resolution| (lemma @x868 (or $x362 (not $x679) (not $x659) $x732 $x656 $x782 $x870)) @x865 @x729 @x714 @x709 @x866 @x867 $x362))) |
|
1193 |
(let ((@x880 ((_ |th-lemma| arith farkas -1 1 -1 1 -1 -1 1 1 -1 1 1 -1 1) @x833 @x867 @x729 @x728 @x718 @x714 @x713 @x709 @x685 @x866 @x696 @x865 (|unit-resolution| @x823 (|unit-resolution| @x623 @x877 $x619) $x777) false))) |
|
1194 |
(let ((@x882 (lemma @x880 (or $x870 (not $x679) (not $x659) $x732 $x656 $x782)))) |
|
1195 |
(let ((@x943 (|unit-resolution| @x882 @x942 @x729 @x714 @x709 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 2) (or $x679 (not $x677) $x461)) @x760 @x686 $x679) $x870))) |
|
1196 |
(let ((@x946 (|unit-resolution| @x613 (|unit-resolution| @x615 (|unit-resolution| @x891 @x943 $x845) $x386) $x610))) |
|
1197 |
(let ((@x952 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1 1 1) (or $x411 $x743 (not $x601) $x461 $x436)) @x761 @x685 @x686 @x939 $x411))) |
|
1198 |
(let ((@x958 ((_ |th-lemma| arith assign-bounds 1 1 1 1 1) (or $x361 (not $x934) (not $x617) $x436 $x798 (not $x609))))) |
|
1199 |
(let ((@x959 (|unit-resolution| @x958 @x761 @x851 @x797 (|unit-resolution| @x792 (|unit-resolution| @x605 @x952 $x602) $x773) (|unit-resolution| @x948 @x946 $x934) $x361))) |
|
1200 |
(let ((@x965 ((_ |th-lemma| arith farkas -1 -1 1 1 -1 -1 1 1 1 -1 -1 1 1) @x833 @x729 @x728 @x760 @x718 @x714 @x713 @x709 (|unit-resolution| @x948 @x946 $x934) @x851 @x964 @x830 (|unit-resolution| @x863 (|unit-resolution| @x621 @x959 $x618) $x838) false))) |
|
1201 |
(let ((@x972 (|unit-resolution| (lemma @x965 (or $x436 (not $x659) $x732 $x656 $x461)) @x686 @x714 @x709 @x729 $x436))) |
|
1202 |
(let ((@x976 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1 1 1) (or $x411 (not $x601) $x461 $x437 $x782)) (|unit-resolution| @x691 (|unit-resolution| @x597 @x972 $x594) $x676) @x685 @x686 @x972 $x411))) |
|
1203 |
(let ((@x979 (|unit-resolution| @x882 (|unit-resolution| @x691 (|unit-resolution| @x597 @x972 $x594) $x676) @x729 @x714 @x709 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 2) (or $x679 (not $x677) $x461)) @x760 @x686 $x679) $x870))) |
|
1204 |
(let ((@x982 (|unit-resolution| @x613 (|unit-resolution| @x615 (|unit-resolution| @x891 @x979 $x845) $x386) $x610))) |
|
1205 |
(let ((@x933 ((_ |th-lemma| arith farkas -1 -1 1 1 -1 -1 1 1 -1 1 -2 2 -1 1 1) @x833 @x729 @x728 (hypothesis $x677) @x718 @x714 @x713 @x709 @x697 @x696 @x897 @x810 @x898 @x830 (hypothesis $x777) false))) |
|
1206 |
(let ((@x969 (lemma @x933 (or $x900 (not $x659) (not $x677) $x732 $x656 $x704 $x815 $x901)))) |
|
1207 |
(let ((@x984 (|unit-resolution| @x969 @x760 @x729 @x714 @x709 (|unit-resolution| @x806 @x982 $x671) (|unit-resolution| @x789 (|unit-resolution| @x605 @x976 $x602) $x774) (|unit-resolution| @x826 (|unit-resolution| @x597 @x972 $x594) $x667) $x900))) |
|
1208 |
(let ((@x987 (|unit-resolution| @x621 (|unit-resolution| @x623 (|unit-resolution| @x907 @x984 $x821) $x361) $x618))) |
|
1209 |
(let ((@x989 ((_ |th-lemma| arith farkas -1 -1 1 1 -1 -1 1 1 -1 1 -2 2 -2 -1 1 1) @x833 @x729 @x728 @x760 @x718 @x714 @x713 @x709 (|unit-resolution| @x806 @x982 $x671) @x696 (|unit-resolution| @x789 (|unit-resolution| @x605 @x976 $x602) $x774) @x810 (|unit-resolution| @x623 (|unit-resolution| @x907 @x984 $x821) $x361) (|unit-resolution| @x826 (|unit-resolution| @x597 @x972 $x594) $x667) @x830 (|unit-resolution| @x863 @x987 $x838) false))) |
|
1210 |
(let ((@x970 (|unit-resolution| (lemma @x989 (or $x461 (not $x659) $x732 $x656)) @x714 @x729 @x709 $x461))) |
|
1211 |
(let ((@x992 (|unit-resolution| @x723 (|unit-resolution| @x589 @x970 $x586) $x679))) |
|
1212 |
(let ((@x1009 (|unit-resolution| @x891 (|unit-resolution| @x882 @x942 @x729 @x714 @x709 @x992 $x870) $x845))) |
|
1213 |
(let ((@x1012 (|unit-resolution| @x948 (|unit-resolution| @x613 (|unit-resolution| @x615 @x1009 $x386) $x610) $x934))) |
|
1214 |
(let ((@x751 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x656 $x655)) @x709 $x655))) |
|
1215 |
(let ((@x999 (hypothesis $x934))) |
|
1216 |
(let ((@x1002 ((_ |th-lemma| arith assign-bounds 1 1 1 1 1 2) (or $x361 (not $x934) (not $x617) $x436 (not $x609) (not $x931) $x411)))) |
|
1217 |
(let ((@x1004 (|unit-resolution| @x621 (|unit-resolution| @x1002 @x842 @x797 @x851 @x761 @x999 @x998 $x361) $x618))) |
|
1218 |
(let ((@x762 (hypothesis $x655))) |
|
1219 |
(let ((@x1006 ((_ |th-lemma| arith farkas 1 1 1 2 1 1 1 1 1 1 1 1 1 2 1) @x833 @x999 @x851 @x842 @x729 @x728 @x718 @x714 @x713 @x762 @x685 @x939 @x867 @x761 (|unit-resolution| @x863 @x1004 $x838) false))) |
|
1220 |
(let ((@x1008 (lemma @x1006 (or $x411 (not $x934) (not $x659) $x732 $x764 (not $x679) $x436)))) |
|
1221 |
(let ((@x1014 (|unit-resolution| @x605 (|unit-resolution| @x1008 @x1012 @x729 @x714 @x751 @x992 @x761 $x411) $x602))) |
|
1222 |
(let ((@x1016 (|unit-resolution| @x958 (|unit-resolution| @x792 @x1014 $x773) @x851 @x761 @x1012 @x797 $x361))) |
|
1223 |
(let ((@x1019 ((_ |th-lemma| arith farkas -1/2 1/2 -1/2 1/2 -1/2 1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 -1/2 1) @x830 @x964 (|unit-resolution| @x863 (|unit-resolution| @x621 @x1016 $x618) $x838) @x833 @x1012 @x851 @x729 @x728 @x718 @x714 @x713 @x709 @x992 @x970 false))) |
|
1224 |
(let ((@x1023 (|unit-resolution| (lemma @x1019 (or $x436 (not $x659) $x732 $x656)) @x714 @x729 @x709 $x436))) |
|
1225 |
(let ((@x1033 (|unit-resolution| @x882 (|unit-resolution| @x691 (|unit-resolution| @x597 @x1023 $x594) $x676) @x729 @x714 @x709 @x992 $x870))) |
|
1226 |
(let ((@x1035 (|unit-resolution| @x615 (|unit-resolution| @x891 @x1033 $x845) $x386))) |
|
1227 |
(let ((@x1041 (|unit-resolution| @x863 (|unit-resolution| @x621 (|unit-resolution| @x1030 @x842 @x1035 $x361) $x618) $x838))) |
|
1228 |
(let ((@x1044 ((_ |th-lemma| arith farkas -1 1 -1 1 1 -1 1 1 -1 -1 -1 1 -1 1 1) (|unit-resolution| @x948 (|unit-resolution| @x613 @x1035 $x610) $x934) @x851 @x1041 @x833 @x729 @x728 @x718 @x714 @x713 @x709 @x992 @x1038 @x810 @x970 @x1035 false))) |
|
1229 |
(let ((@x1049 (|unit-resolution| (lemma @x1044 (or $x411 (not $x659) $x732 $x656)) @x714 @x729 @x709 $x411))) |
|
1230 |
(let ((@x895 (|unit-resolution| @x723 (|unit-resolution| @x589 (hypothesis $x461) $x586) $x679))) |
|
1231 |
(let ((@x899 ((_ |th-lemma| arith farkas -1/2 1/2 1 -1 -1/2 1/2 -1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 -1/2 1/2 1) @x830 @x898 @x897 @x810 (hypothesis $x777) @x833 @x895 @x729 @x728 @x718 @x714 @x713 @x709 @x696 @x697 (hypothesis $x461) false))) |
|
1232 |
(let ((@x903 (lemma @x899 (or $x900 $x901 $x815 (not $x659) $x732 $x656 $x704 $x462)))) |
|
1233 |
(let ((@x1052 (|unit-resolution| @x903 (|unit-resolution| @x789 (|unit-resolution| @x605 @x1049 $x602) $x774) @x970 @x729 @x714 @x709 (|unit-resolution| @x826 (|unit-resolution| @x597 @x1023 $x594) $x667) (|unit-resolution| @x806 (|unit-resolution| @x613 @x1035 $x610) $x671) $x900))) |
|
1234 |
(let ((@x1055 (|unit-resolution| @x621 (|unit-resolution| @x623 (|unit-resolution| @x907 @x1052 $x821) $x361) $x618))) |
|
1235 |
(let ((@x1057 ((_ |th-lemma| arith farkas 1 -1 1/2 -1/2 1 1/2 -1/2 -1/2 1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 -1/2 1) (|unit-resolution| @x789 (|unit-resolution| @x605 @x1049 $x602) $x774) @x810 (|unit-resolution| @x826 (|unit-resolution| @x597 @x1023 $x594) $x667) @x830 (|unit-resolution| @x623 (|unit-resolution| @x907 @x1052 $x821) $x361) (|unit-resolution| @x806 (|unit-resolution| @x613 @x1035 $x610) $x671) @x696 (|unit-resolution| @x863 @x1055 $x838) @x833 @x729 @x728 @x718 @x714 @x713 @x709 @x992 @x970 false))) |
|
1236 |
(let ((@x1167 (|unit-resolution| (lemma @x1057 (or $x732 (not $x659) $x656)) @x709 @x1145 $x732))) |
|
1237 |
(let ((@x1169 (|unit-resolution| @x645 (|unit-resolution| @x1166 @x1167 $x1162) $x312))) |
|
1238 |
(let ((@x1191 ((_ |th-lemma| arith assign-bounds 1 1 1 1) (or $x336 $x311 $x1139 (not $x641) $x287)))) |
|
1239 |
(let ((@x1216 (|unit-resolution| @x629 (|unit-resolution| @x1191 @x1169 @x1136 @x1076 @x1150 $x336) $x626))) |
|
1240 |
(let ((@x1217 (|unit-resolution| @x1127 @x1216 $x661))) |
|
1241 |
(let ((@x1131 (|unit-resolution| @x723 (|unit-resolution| @x589 (|unit-resolution| @x1098 @x842 $x461) $x586) $x679))) |
|
1242 |
(let (($x1103 (>= ?x1101 0))) |
|
1243 |
(let ((@x1158 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x1119 $x1103)) (hypothesis $x643) (hypothesis (not $x1103)) false))) |
|
1244 |
(let ((@x1159 (lemma @x1158 (or $x1119 $x1103)))) |
|
1245 |
(let ((@x1110 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x934 $x671)) (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 2) (or $x704 $x1104 $x386)) @x848 @x843 $x704) $x934))) |
|
1246 |
(let ((@x1112 (|unit-resolution| @x629 (|unit-resolution| @x1092 @x1110 @x833 @x851 @x842 @x1087 $x336) $x626))) |
|
1247 |
(let ((@x841 (hypothesis $x311))) |
|
1248 |
(let ((@x860 (lemma ((_ |th-lemma| arith farkas 1 1 1 1 1 1 1 1 1) @x856 @x855 @x851 @x843 @x729 @x728 @x848 @x842 @x841 false) (or $x411 $x858 $x386 (not $x659) $x312)))) |
|
1249 |
(let ((@x1117 (|unit-resolution| @x860 (|unit-resolution| @x1115 @x1112 $x665) @x842 @x729 @x843 $x312))) |
|
1250 |
(let ((@x1122 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x1119 $x1103)) (|unit-resolution| @x647 @x1117 $x643) $x1103))) |
|
1251 |
(let ((@x1138 ((_ |th-lemma| arith farkas 1 -1 1 -1 -1 1 -1 -1 1 -1 1 -1 -2 2 1) @x833 @x1137 @x1136 @x1087 @x696 @x1133 @x713 @x709 @x718 (|unit-resolution| @x691 @x1072 $x676) @x685 @x1131 (|unit-resolution| @x1127 @x1112 $x661) @x1125 @x1122 false))) |
|
1252 |
(let ((@x1172 (|unit-resolution| (lemma @x1138 (or $x386 $x1139 $x656 $x411 (not $x659))) @x842 @x709 @x1150 @x1145 $x386))) |
|
1253 |
(let ((@x1152 ((_ |th-lemma| arith farkas -1/2 1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 -1/2 1/2 -1/2 1/2 -1/2 1) @x701 @x681 @x697 @x696 (hypothesis $x1103) @x1150 @x1136 @x713 @x709 @x718 @x866 @x685 @x867 @x1076 false))) |
|
1254 |
(let ((@x1155 (lemma @x1152 (or (not $x1103) (not $x668) $x704 $x656 $x782 (not $x679) $x287)))) |
|
1255 |
(let ((@x1175 (|unit-resolution| @x1155 (|unit-resolution| @x806 (|unit-resolution| @x613 @x1172 $x610) $x671) (|unit-resolution| @x1159 (|unit-resolution| @x647 @x1169 $x643) $x1103) @x709 @x1131 @x1086 @x1076 $x782))) |
|
1256 |
(let ((@x1177 (|unit-resolution| @x1092 @x1087 @x833 @x842 (|unit-resolution| @x948 (|unit-resolution| @x613 @x1172 $x610) $x934) @x851 $x336))) |
|
1257 |
(let ((@x1102 (lemma ((_ |th-lemma| arith farkas 1 1 1 1 1 1 1 1 1) @x856 @x701 @x1086 @x855 @x761 @x998 @x842 @x797 @x1076 false) (or $x436 $x858 $x411 $x287)))) |
|
1258 |
(let ((@x1180 (|unit-resolution| @x1102 (|unit-resolution| @x1115 (|unit-resolution| @x629 @x1177 $x626) $x665) @x842 @x1076 $x436))) |
|
1259 |
(let ((@x1184 (lemma (|unit-resolution| @x691 (|unit-resolution| @x597 @x1180 $x594) @x1175 false) (or $x411 $x287 $x656)))) |
|
1260 |
(let ((@x1220 (|unit-resolution| @x789 (|unit-resolution| @x605 (|unit-resolution| @x1184 @x709 @x1076 $x411) $x602) $x774))) |
|
1261 |
(let ((@x1193 (|unit-resolution| @x629 (|unit-resolution| @x1191 (hypothesis $x312) @x1136 @x1076 @x1150 $x336) $x626))) |
|
1262 |
(let ((@x1188 (hypothesis $x312))) |
|
1263 |
(let ((@x1200 (|unit-resolution| @x1199 (|unit-resolution| @x1127 @x1193 $x661) @x1136 @x1188 @x1150 @x1125 $x361))) |
|
1264 |
(let ((@x1203 ((_ |th-lemma| arith farkas -1 1 -1 -1 -1 1 1 -1 1) @x1185 @x701 (|unit-resolution| @x924 (|unit-resolution| @x621 @x1200 $x618) $x668) @x1076 (|unit-resolution| @x1115 @x1193 $x665) @x855 @x761 @x797 @x1187 false))) |
|
1265 |
(let ((@x1205 (lemma @x1203 (or $x436 $x412 $x287 $x311)))) |
|
1266 |
(let ((@x1221 (|unit-resolution| @x1205 (|unit-resolution| @x1184 @x709 @x1076 $x411) @x1076 @x1169 $x436))) |
|
1267 |
(let (($x816 (not $x608))) |
|
1268 |
(let (($x1197 (not $x633))) |
|
1269 |
(let (($x1189 (not $x641))) |
|
1270 |
(let (($x741 (not $x616))) |
|
1271 |
(let ((@x1224 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 -1 -1 1 1 -1 1 1 -1) (or $x704 $x741 $x311 $x1139 $x1189 $x815 $x1196 $x1197 $x437 $x816)) @x1169 @x696 @x1125 @x1136 @x810 @x1150 @x1221 @x1220 @x1217 $x704))) |
|
1272 |
(let ((@x1225 (|unit-resolution| @x792 (|unit-resolution| @x605 (|unit-resolution| @x1184 @x709 @x1076 $x411) $x602) $x773))) |
|
1273 |
(let ((@x1229 (|unit-resolution| @x621 (|unit-resolution| @x1199 @x1217 @x1136 @x1169 @x1150 @x1125 $x361) $x618))) |
|
1274 |
(let ((@x1209 (|unit-resolution| @x589 (|unit-resolution| @x801 @x843 @x797 @x1207 @x866 @x685 $x461) $x586))) |
|
1275 |
(let ((@x1212 ((_ |th-lemma| arith farkas -1 -2 2 -1 1 1 -1 -1 1 -1 1 -1 -1 1 1) @x696 @x1211 @x1125 @x1137 @x1136 (hypothesis $x1103) @x713 @x709 @x718 (|unit-resolution| @x723 @x1209 $x679) @x833 @x1206 @x866 @x685 @x1133 false))) |
|
1276 |
(let ((@x1231 (|unit-resolution| (lemma @x1212 (or $x386 $x1196 $x1139 (not $x1103) $x656 $x1090 $x782 $x798)) @x1217 @x1150 (|unit-resolution| @x1159 (|unit-resolution| @x647 @x1169 $x643) $x1103) @x709 (|unit-resolution| @x863 @x1229 $x838) (|unit-resolution| @x691 (|unit-resolution| @x597 @x1221 $x594) $x676) @x1225 $x386))) |
|
1277 |
(let ((@x1235 (lemma (|unit-resolution| @x806 (|unit-resolution| @x613 @x1231 $x610) @x1224 false) (or $x656 $x287)))) |
|
1278 |
(let ((@x1502 (|unit-resolution| @x1235 (|unit-resolution| (lemma @x1495 (or $x708 $x412 $x386)) @x843 @x1185 $x708) $x287))) |
|
1279 |
(let ((@x1504 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 1 1 1 1 1) (or $x286 $x361 $x1197 $x900 (not $x625) $x386 $x1196)) @x1502 @x833 @x1125 @x843 @x1366 @x1476 $x361))) |
|
1280 |
(let ((@x1506 (|unit-resolution| @x863 (|unit-resolution| @x621 @x1504 $x618) (|unit-resolution| @x1429 @x1502 @x1476 @x843 $x1090) false))) |
|
1281 |
(let ((@x1508 (lemma @x1506 (or $x386 $x412)))) |
|
1282 |
(let ((@x1815 (|unit-resolution| @x1508 @x1185 $x386))) |
|
1283 |
(let (($x1513 (not $x627))) |
|
1284 |
(let ((@x1519 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 -1 -1 1 1) (or $x1510 $x1197 $x387 $x1374 (not $x624) $x286)) @x1385 @x1125 @x1426 @x1024 @x701 $x1510))) |
|
1285 |
(let ((@x1522 (|unit-resolution| @x629 (|unit-resolution| @x631 (|unit-resolution| @x1517 @x1519 $x1513) $x336) $x626))) |
|
1286 |
(let ((@x1524 ((_ |th-lemma| arith farkas 1 1 1 1 1) @x1426 @x1125 (|unit-resolution| @x1127 @x1522 $x661) @x1025 (|unit-resolution| @x631 (|unit-resolution| @x1517 @x1519 $x1513) $x336) false))) |
|
1287 |
(let ((@x1526 (lemma @x1524 (or $x361 $x286 $x387)))) |
|
1288 |
(let ((@x1826 (|unit-resolution| @x924 (|unit-resolution| @x621 (|unit-resolution| @x1526 @x1815 @x1426 $x361) $x618) $x668))) |
|
1289 |
(let (($x705 (not $x668))) |
|
1290 |
(let ((@x1734 (|unit-resolution| @x806 (|unit-resolution| @x613 @x1024 $x610) $x671))) |
|
1291 |
(let ((@x1670 (|unit-resolution| @x924 (|unit-resolution| @x621 @x839 $x618) $x668))) |
|
1292 |
(let (($x1500 (>= ?x664 0))) |
|
1293 |
(let ((@x1546 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x1513 $x1500)) @x1528 $x1500))) |
|
1294 |
(let ((@x1547 (|unit-resolution| @x1517 @x1528 $x873))) |
|
1295 |
(let ((@x1550 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1 1 1 1 1 1 1) (or $x437 $x815 $x816 $x704 $x741 $x1510 $x1197 $x286 $x336)) @x1426 @x696 @x1527 @x1125 @x810 @x697 @x1477 @x1547 $x437))) |
|
1296 |
(let ((@x1552 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x595) $x930)) (|unit-resolution| @x599 @x1550 $x595) $x930))) |
|
1297 |
(let ((@x1558 (|unit-resolution| @x738 (|unit-resolution| @x599 @x1550 $x595) $x673))) |
|
1298 |
(let (($x740 (not $x624))) |
|
1299 |
(let (($x742 (not $x601))) |
|
1300 |
(let ((@x1560 ((_ |th-lemma| arith assign-bounds 1 1 1 1 1 1 1 1 1 2 2) (or $x461 $x815 $x816 $x742 $x705 $x740 $x1510 $x1197 $x286 $x743 $x704 $x741)))) |
|
1301 |
(let ((@x1561 (|unit-resolution| @x1560 @x1426 @x810 @x696 @x701 @x1125 @x685 @x697 @x681 @x1558 @x1477 @x1547 $x461))) |
|
1302 |
(let ((@x1566 ((_ |th-lemma| arith assign-bounds 1 1 1 1 1 1 1 1) (or $x311 (not $x1499) $x1189 $x286 $x705 $x412 $x704 $x741 $x740)))) |
|
1303 |
(let ((@x1568 (|unit-resolution| @x645 (|unit-resolution| @x1566 @x1557 @x701 @x1185 @x1136 @x1426 @x697 @x681 @x696 $x311) $x642))) |
|
1304 |
(let ((@x1570 ((_ |th-lemma| arith assign-bounds -1 1 1 -1 -1 -1 -3 3 1 -1 1 1 -2 2 2 -2) (|unit-resolution| @x1396 @x1568 $x1369) @x1256 (|unit-resolution| @x1268 (|unit-resolution| @x589 @x1561 $x586) $x670) @x1252 @x830 @x1206 @x999 @x851 @x833 @x1557 @x1136 @x1552 @x1187 @x797 @x1546 @x855 $x655))) |
|
1305 |
(let ((@x1574 (|unit-resolution| @x723 (|unit-resolution| @x589 @x1561 $x586) $x679))) |
|
1306 |
(let ((@x1576 ((_ |th-lemma| arith assign-bounds -1 1 1 -1 -1 -1 -3 3 1 -1 1 1 -2 2 2 -2) (|unit-resolution| @x1166 @x1568 $x662) @x713 @x1574 @x718 @x685 @x681 @x697 @x696 @x701 @x1573 @x728 @x1558 @x1477 @x810 @x1547 @x1125 $x656))) |
|
1307 |
(let (($x813 (not $x593))) |
|
1308 |
(let (($x869 (not $x679))) |
|
1309 |
(let (($x1579 (or $x486 $x286 $x336 $x869 $x813 $x742 $x705 $x704 $x741 $x740 $x743 $x815 $x816 $x1510 $x1197))) |
|
1310 |
(let ((@x1581 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 1 1 1 1 1 3 3 1 1 2 2 2 2) $x1579) @x1426 @x685 @x810 @x696 @x701 @x1527 @x1125 @x718 @x697 @x681 @x1558 @x1477 @x1574 @x1547 $x486))) |
|
1311 |
(let (($x812 (not $x640))) |
|
1312 |
(let (($x1586 (not $x1543))) |
|
1313 |
(let (($x1585 (not $x585))) |
|
1314 |
(let (($x1584 (not $x1236))) |
|
1315 |
(let (($x1587 (or $x652 $x1584 $x1585 $x815 $x816 $x1510 $x1197 $x704 $x741 $x869 $x813 $x1586 $x812))) |
|
1316 |
(let ((@x1589 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1) $x1587) @x1574 @x810 @x696 @x1125 @x728 @x1284 @x697 @x1477 @x718 @x1547 @x1573 (|unit-resolution| @x1291 (|unit-resolution| @x581 @x1581 $x578) $x1236) $x652))) |
|
1317 |
(let (($x1564 (not $x1499))) |
|
1318 |
(let (($x1401 (not $x592))) |
|
1319 |
(let (($x956 (not $x617))) |
|
1320 |
(let (($x955 (not $x934))) |
|
1321 |
(let (($x1593 (not $x632))) |
|
1322 |
(let (($x1592 (not $x1500))) |
|
1323 |
(let (($x799 (not $x609))) |
|
1324 |
(let (($x1591 (not $x584))) |
|
1325 |
(let (($x1321 (not $x1237))) |
|
1326 |
(let (($x1594 (or $x651 $x1321 $x1591 $x798 $x799 $x1592 $x1593 $x955 $x956 $x1260 $x1401 $x1564 $x1189))) |
|
1327 |
(let ((@x1596 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1) $x1594) (|unit-resolution| @x1268 (|unit-resolution| @x589 @x1561 $x586) $x670) @x797 @x851 @x855 @x1136 @x1296 @x1187 @x1252 @x999 (|unit-resolution| @x1298 (|unit-resolution| @x581 @x1581 $x578) $x1237) @x1557 @x1546 $x651))) |
|
1328 |
(let ((@x1597 (|unit-resolution| @x1304 @x1596 @x1589 (|unit-resolution| @x577 (|unit-resolution| @x1277 @x1576 @x1570 $x71) $x564) false))) |
|
1329 |
(let ((@x1671 (|unit-resolution| (lemma @x1597 (or $x286 $x955 $x704 $x336 $x705 $x1090 $x412)) @x1670 @x697 @x1527 @x999 @x864 @x1185 $x286))) |
|
1330 |
(let ((@x1673 (|unit-resolution| @x1149 (|unit-resolution| @x637 @x1671 $x634) $x658))) |
|
1331 |
(let ((@x1676 (|unit-resolution| (|unit-resolution| @x1191 @x1136 (or $x336 $x311 $x1139 $x287)) @x1673 @x1671 @x1527 $x311))) |
|
1332 |
(let ((@x1677 (|unit-resolution| @x1235 @x1671 $x656))) |
|
1333 |
(let (($x1654 (or $x655 $x705 $x704 $x1139 $x1104 $x815 $x1564 $x798 $x955 $x1592 $x1090 $x708 $x312))) |
|
1334 |
(let ((@x1602 (|unit-resolution| @x1396 (|unit-resolution| @x645 @x841 $x642) $x1369))) |
|
1335 |
(let ((@x1600 (hypothesis $x1500))) |
|
1336 |
(let ((@x1623 (hypothesis $x1499))) |
|
1337 |
(let ((@x1604 ((_ |th-lemma| arith farkas 2 2 2 2 1 1 1 1 1 1 1 1 1 1) (hypothesis $x487) @x1602 @x1256 @x1263 @x1136 @x761 @x1207 @x797 @x999 @x851 @x1600 @x855 @x841 @x1137 false))) |
|
1338 |
(let ((@x1620 (|unit-resolution| (lemma @x1604 (or $x486 $x708 $x436 $x798 $x955 $x1592 $x312 $x1139)) @x761 @x1263 @x1207 @x999 @x1600 @x841 @x1137 $x486))) |
|
1339 |
(let (($x1626 (not $x930))) |
|
1340 |
(let (($x1089 (not $x625))) |
|
1341 |
(let (($x1402 (not $x600))) |
|
1342 |
(let (($x1625 (not $x649))) |
|
1343 |
(let (($x1627 (or $x1301 $x1584 $x1585 $x798 $x799 $x1592 $x1593 $x955 $x956 $x1373 $x1625 $x655 $x1402 $x1090 $x1089 $x1626))) |
|
1344 |
(let ((@x1629 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 -1 1 -1 -1 1 2 -2 1 -1 -1 1 1 -1 -1) $x1627) @x964 @x797 @x851 @x833 @x855 @x1256 @x1284 @x1253 @x1207 @x999 @x830 @x1206 @x1602 @x1600 (|unit-resolution| @x1291 (|unit-resolution| @x581 @x1620 $x578) $x1236) $x1301))) |
|
1345 |
(let ((@x1630 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1) $x1594) @x1629 @x797 @x851 @x855 @x1136 @x1623 @x1207 (|unit-resolution| @x1298 (|unit-resolution| @x581 @x1620 $x578) $x1237) @x999 @x1252 @x1296 @x1600 $x1260))) |
|
1346 |
(let (($x757 (not $x587))) |
|
1347 |
(let (($x1607 (>= ?x674 0))) |
|
1348 |
(let (($x1611 (not $x1607))) |
|
1349 |
(let ((@x1609 (hypothesis $x673))) |
|
1350 |
(let ((@x1610 ((_ |th-lemma| arith farkas 1 1 -1 1 -1 -1 -1 -1 1 1 -1 1 1) @x685 @x697 @x696 @x681 @x701 @x1609 @x1252 @x1371 @x1256 @x1253 @x1137 @x1136 (hypothesis $x1607) false))) |
|
1351 |
(let ((@x1613 (lemma @x1610 (or $x1611 $x704 $x705 $x743 $x1373 $x655 $x1139)))) |
|
1352 |
(let ((@x1618 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x757 $x1607)) (hypothesis $x587) (hypothesis $x1611) false))) |
|
1353 |
(let ((@x1619 (lemma @x1618 (or $x757 $x1607)))) |
|
1354 |
(let ((@x1632 (|unit-resolution| @x1619 (|unit-resolution| @x1613 @x939 @x681 @x697 @x1602 @x1253 @x1137 $x1611) $x757))) |
|
1355 |
(let ((@x1635 (|unit-resolution| @x1268 (|unit-resolution| @x589 (|unit-resolution| @x591 @x1632 $x461) $x586) @x1630 false))) |
|
1356 |
(let ((@x1637 (lemma @x1635 (or $x436 $x705 $x704 $x655 $x1139 $x1564 $x798 $x955 $x1592 $x1090 $x708 $x312)))) |
|
1357 |
(let ((@x1638 (|unit-resolution| @x1637 @x1253 @x697 @x681 @x1137 @x1623 @x1207 @x999 @x1600 @x1206 @x1263 @x841 $x436))) |
|
1358 |
(let ((@x1641 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 -2 -2 2 -2 2) (or $x1354 $x705 $x437 $x815 $x816 $x704 $x741)) @x1638 @x696 @x697 @x681 @x897 @x810 $x1354))) |
|
1359 |
(let ((@x1644 (|unit-resolution| @x1376 (|unit-resolution| @x826 (|unit-resolution| @x597 @x1638 $x594) $x667) @x1248 @x1137 @x1253 @x1641 @x1602 $x1260))) |
|
1360 |
(let ((@x1648 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 -1) (or $x673 $x437 $x782)) (|unit-resolution| @x691 (|unit-resolution| @x597 @x1638 $x594) $x676) @x1638 $x673))) |
|
1361 |
(let ((@x1650 (|unit-resolution| @x1619 (|unit-resolution| @x1613 @x1648 @x681 @x697 @x1602 @x1253 @x1137 $x1611) $x757))) |
|
1362 |
(let ((@x1653 (|unit-resolution| @x1268 (|unit-resolution| @x589 (|unit-resolution| @x591 @x1650 $x461) $x586) @x1644 false))) |
|
1363 |
(let ((@x1681 (|unit-resolution| (lemma @x1653 $x1654) @x1670 @x697 @x1673 @x1248 @x1477 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 -2) (or $x1499 $x1139 $x287)) @x1673 @x1671 $x1499) @x1187 @x999 @x1546 @x864 @x1677 @x1676 $x655))) |
|
1364 |
(let (($x1665 (or $x436 $x815 $x1510 $x704 $x764 $x705 $x708 $x798 $x955 $x1090 $x1592 $x312 $x1139))) |
|
1365 |
(let (($x1658 (or $x652 $x1584 $x1585 $x798 $x799 $x1592 $x1593 $x955 $x956 $x1373 $x1625 $x708 $x1402 $x1090 $x1089 $x1626))) |
|
1366 |
(let ((@x1660 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1 1 1 1 1 2 2 1 1 1 1 1 -1 -1) $x1658) (|unit-resolution| @x1291 (|unit-resolution| @x581 @x1620 $x578) $x1236) @x797 @x851 @x833 @x855 @x1256 @x964 @x1263 @x1207 @x999 @x830 @x1206 @x1602 @x1600 @x1284 $x652))) |
|
1367 |
(let ((@x1661 (|unit-resolution| @x1304 @x1660 (|unit-resolution| @x577 (|unit-resolution| @x1277 @x762 @x1263 $x71) $x564) $x1301))) |
|
1368 |
(let ((@x1664 ((_ |th-lemma| arith farkas 1 -1 1 -1 -1 1 2 -2 1 -1 -1 1 1 -1 -1 1) (|unit-resolution| @x1298 (|unit-resolution| @x581 @x1620 $x578) $x1237) @x1296 @x897 @x810 (hypothesis $x873) @x1125 @x697 @x696 (|unit-resolution| @x1166 (|unit-resolution| @x645 @x841 $x642) $x662) @x713 @x762 @x685 @x681 @x701 @x939 @x1661 false))) |
|
1369 |
(let ((@x1682 (|unit-resolution| (lemma @x1664 $x1665) @x1681 @x1547 @x697 @x1477 @x1670 @x1677 @x1187 @x999 @x864 @x1546 @x1676 @x1673 $x436))) |
|
1370 |
(let ((@x1694 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -2 2 -2 -2 2 -1) (or $x930 $x815 $x816 $x704 $x362 $x741 $x901)) @x696 @x810 (or $x930 $x815 $x704 $x362 $x901)))) |
|
1371 |
(let ((@x1695 (|unit-resolution| @x1694 (|unit-resolution| @x826 (|unit-resolution| @x597 @x1682 $x594) $x667) @x697 @x839 @x1477 $x930))) |
|
1372 |
(let ((@x1667 ((_ |th-lemma| arith farkas 1 -1 1 -1 -1 -1 1 1 -1 1 1) @x681 @x701 @x697 @x696 (hypothesis $x487) @x1371 @x1256 @x1263 @x1137 @x1136 @x1185 false))) |
|
1373 |
(let ((@x1669 (lemma @x1667 (or $x486 $x705 $x704 $x1373 $x708 $x1139 $x412)))) |
|
1374 |
(let ((@x1696 (|unit-resolution| @x1669 @x1670 @x697 (|unit-resolution| @x1396 (|unit-resolution| @x645 @x1676 $x642) $x1369) @x1677 @x1673 @x1185 $x486))) |
|
1375 |
(let ((@x1699 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1 1 1 1 1 2 2 1 1 1 1 1 -1 -1) $x1658) (|unit-resolution| @x1291 (|unit-resolution| @x581 @x1696 $x578) $x1236) @x797 @x851 @x833 @x855 @x1256 @x1695 @x1677 @x1187 @x999 @x830 @x864 (|unit-resolution| @x1396 (|unit-resolution| @x645 @x1676 $x642) $x1369) @x1546 @x1284 $x652))) |
|
1376 |
(let ((@x1700 (|unit-resolution| @x1304 @x1699 (|unit-resolution| @x577 (|unit-resolution| @x1277 @x1681 @x1677 $x71) $x564) $x1301))) |
|
1377 |
(let ((@x1702 ((_ |th-lemma| arith farkas -2 -1 1 -1 -1 1 1 -1 -2 2 -1 1 1 -1 -1 1 1) @x1682 (|unit-resolution| @x1298 (|unit-resolution| @x581 @x1696 $x578) $x1237) @x1296 @x1700 @x1477 @x810 @x1547 @x1125 @x697 @x696 (|unit-resolution| @x1166 (|unit-resolution| @x645 @x1676 $x642) $x662) @x713 @x1681 @x685 @x1670 @x701 (|unit-resolution| @x691 (|unit-resolution| @x597 @x1682 $x594) $x676) false))) |
|
1378 |
(let ((@x1736 (|unit-resolution| (lemma @x1702 (or $x362 $x704 $x955 $x412 $x1104 $x336)) @x1527 @x1027 @x1185 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 -1) (or $x778 $x387 $x955)) @x1027 @x1024 $x778) @x1734 $x362))) |
|
1379 |
(let ((@x1737 (|unit-resolution| (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 1) (or $x705 $x361 $x900)) @x1366 (or $x705 $x361)) @x1736 $x705))) |
|
1380 |
(let ((@x1741 (|unit-resolution| @x1149 (|unit-resolution| @x637 (|unit-resolution| @x1526 @x1736 @x1024 $x286) $x634) $x658))) |
|
1381 |
(let ((@x1743 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x821 $x1354)) (|unit-resolution| @x623 @x1736 $x619) $x1354))) |
|
1382 |
(let ((@x1744 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 2 1 2 2 2) (or $x1374 $x1139 $x1189 $x1090 $x1197 $x1196 $x311)) @x1743 @x1542 @x1741 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x838 $x668)) @x1737 $x838) @x1136 @x1125 $x311))) |
|
1383 |
(let ((@x1747 (|unit-resolution| @x1235 (|unit-resolution| @x1526 @x1736 @x1024 $x286) $x656))) |
|
1384 |
(let ((@x1750 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1 1 1 1 1) (or $x486 $x336 $x1373 $x1625 $x708 $x1139 $x1189)) @x1527 @x1136 @x1256 @x1747 @x1741 (|unit-resolution| @x1396 (|unit-resolution| @x645 @x1744 $x642) $x1369) $x486))) |
|
1385 |
(let ((@x1719 (|unit-resolution| @x958 @x851 @x797 (or $x361 $x955 $x436 $x798)))) |
|
1386 |
(let ((@x1755 (|unit-resolution| @x826 (|unit-resolution| @x597 (|unit-resolution| @x1719 @x1736 @x1027 @x1187 $x436) $x594) $x667))) |
|
1387 |
(let (($x1756 (or $x652 $x901 $x1584 $x1585 $x815 $x816 $x1592 $x1593 $x1373 $x1625 $x708 $x1402 $x1089 $x900))) |
|
1388 |
(let ((@x1758 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 1 -1 -1 1 -1 1 1 -1 -1 1 -1 1) $x1756) @x1747 @x810 @x833 @x855 @x1256 @x1284 @x830 @x1477 @x1755 @x1366 (|unit-resolution| @x1396 (|unit-resolution| @x645 @x1744 $x642) $x1369) @x1546 (|unit-resolution| @x1291 (|unit-resolution| @x581 @x1750 $x578) $x1236) $x652))) |
|
1389 |
(let ((@x1709 (|unit-resolution| (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 1) (or $x705 $x361 $x900)) @x1366 (or $x705 $x361)) @x1025 $x705))) |
|
1390 |
(let ((@x1715 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 2 1 2 2 2) (or $x1374 $x1139 $x1189 $x1090 $x1197 $x1196 $x311)) @x1385 @x1542 @x1137 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x838 $x668)) @x1709 $x838) @x1136 @x1125 $x311))) |
|
1391 |
(let ((@x1722 (|unit-resolution| @x691 (|unit-resolution| @x597 (|unit-resolution| @x1719 @x1025 @x999 @x1207 $x436) $x594) $x676))) |
|
1392 |
(let (($x1723 (or $x1611 $x955 $x956 $x1401 $x1373 $x1625 $x655 $x1139 $x1189 $x798 $x799 $x782 $x742 $x740 $x1374))) |
|
1393 |
(let ((@x1725 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 1 -1 -1 1 1 -1 1 -2 2 -1 1 -1 1) $x1723) @x1253 @x797 @x851 @x701 @x1136 @x1256 @x685 @x1137 @x1722 @x1207 @x999 (|unit-resolution| @x1396 (|unit-resolution| @x645 @x1715 $x642) $x1369) @x1385 @x1252 $x1611))) |
|
1394 |
(let ((@x1726 (|unit-resolution| @x826 (|unit-resolution| @x597 (|unit-resolution| @x1719 @x1025 @x999 @x1207 $x436) $x594) $x667))) |
|
1395 |
(let ((@x1729 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1 1 1 1 1 1 1) (or $x462 $x361 $x901 $x815 $x816 $x1402 $x1089 $x900 $x336)) @x1025 @x810 @x830 @x833 @x1527 @x897 @x1726 @x1366 $x462))) |
|
1396 |
(let ((@x1733 (lemma (|unit-resolution| @x1619 (|unit-resolution| @x591 @x1729 $x587) @x1725 false) (or $x655 $x1139 $x798 $x955 $x361 $x336 $x815)))) |
|
1397 |
(let ((@x1760 (|unit-resolution| @x1277 (|unit-resolution| @x1733 @x1741 @x1187 @x1027 @x1736 @x1527 @x1477 $x655) @x1747 $x71))) |
|
1398 |
(let ((@x1765 (|unit-resolution| @x691 (|unit-resolution| @x597 (|unit-resolution| @x1719 @x1736 @x1027 @x1187 $x436) $x594) $x676))) |
|
1399 |
(let ((@x1766 ((_ |th-lemma| arith farkas -1 1 -1 -1 1 -1 1 1 -1 -1 1 -1 1 1) @x1765 (|unit-resolution| @x1298 (|unit-resolution| @x581 @x1750 $x578) $x1237) @x1296 @x1187 @x797 @x1547 @x1125 (|unit-resolution| @x1166 (|unit-resolution| @x645 @x1744 $x642) $x662) @x713 (|unit-resolution| @x1733 @x1741 @x1187 @x1027 @x1736 @x1527 @x1477 $x655) @x685 @x701 @x1743 (|unit-resolution| @x1304 (|unit-resolution| @x577 @x1760 $x564) @x1758 $x1301) false))) |
|
1400 |
(let ((@x1768 (lemma @x1766 (or $x336 $x387 $x412)))) |
|
1401 |
(let ((@x1829 (|unit-resolution| (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 -2) (or $x873 $x1196 $x337)) @x1542 (or $x873 $x337)) (|unit-resolution| @x1768 @x1185 @x1815 $x336) $x873))) |
|
1402 |
(let ((@x1820 (|unit-resolution| @x806 (|unit-resolution| @x613 @x1815 $x610) $x671))) |
|
1403 |
(let ((@x1805 (hypothesis $x1139))) |
|
1404 |
(let ((@x1807 (|unit-resolution| @x1556 @x1553 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 1) (or $x658 $x286 $x1564)) @x1426 @x1805 $x1564) false))) |
|
1405 |
(let ((@x1811 (|unit-resolution| @x637 (|unit-resolution| (lemma @x1807 (or $x286 $x658)) @x1805 $x286) $x634))) |
|
1406 |
(let ((@x1813 (lemma (|unit-resolution| @x1149 @x1811 @x1805 false) $x658))) |
|
1407 |
(let (($x1791 (or $x1586 $x815 $x816 $x704 $x741 $x1510 $x1197 $x1139 $x461 $x742 $x705 $x740 $x743))) |
|
1408 |
(let ((@x1831 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 2 4 4 2 2 1 2 2 2 2 2) $x1791) @x810 @x696 @x701 @x1125 @x1813 @x685 (or $x1586 $x815 $x704 $x1510 $x461 $x705 $x743)))) |
|
1409 |
(let ((@x1833 (|unit-resolution| @x589 (|unit-resolution| @x1831 @x1820 @x1573 @x1826 @x1609 @x1477 @x1829 $x461) $x586))) |
|
1410 |
(let ((@x1836 (|unit-resolution| @x1566 @x701 @x1136 @x696 (or $x311 $x1564 $x286 $x705 $x412 $x704)))) |
|
1411 |
(let ((@x1838 (|unit-resolution| @x645 (|unit-resolution| @x1836 @x1820 @x1557 @x1426 @x1185 @x1826 $x311) $x642))) |
|
1412 |
(let ((@x1842 (|unit-resolution| (|unit-resolution| @x1669 @x1813 (or $x486 $x705 $x704 $x1373 $x708 $x412)) (|unit-resolution| @x1396 @x1838 $x1369) @x1263 @x1826 @x1820 @x1185 $x486))) |
|
1413 |
(let ((@x1846 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1) $x1587) @x810 @x696 @x1125 @x728 @x718 @x1284 (or $x652 $x1584 $x815 $x1510 $x704 $x869 $x1586)))) |
|
1414 |
(let ((@x1847 (|unit-resolution| @x1846 (|unit-resolution| @x1291 (|unit-resolution| @x581 @x1842 $x578) $x1236) @x1573 @x1820 @x1477 (|unit-resolution| @x723 @x1833 $x679) @x1829 $x652))) |
|
1415 |
(let ((@x1818 (|unit-resolution| @x1115 (|unit-resolution| @x629 (|unit-resolution| @x1768 @x1185 @x1815 $x336) $x626) $x665))) |
|
1416 |
(let ((@x1821 ((_ |th-lemma| arith farkas -1 1/3 -1/3 4/3 1/3 -1/3 -1/3 1/3 1/3 -1/3 1/3 -2/3 2/3 2/3 -2/3 1/3 -1/3 1) @x701 @x1820 @x696 @x1185 @x1249 @x1252 @x1371 @x1256 @x1253 @x1623 @x1136 @x1187 @x797 @x1818 @x855 (hypothesis $x930) @x830 @x681 false))) |
|
1417 |
(let ((@x1849 (|unit-resolution| (lemma @x1821 (or $x655 $x412 $x1260 $x1373 $x1564 $x1626 $x705)) @x1185 (|unit-resolution| @x1268 @x1833 $x670) (|unit-resolution| @x1396 @x1838 $x1369) @x1557 (hypothesis $x930) @x1826 $x655))) |
|
1418 |
(let ((@x1852 (|unit-resolution| @x1304 (|unit-resolution| @x577 (|unit-resolution| @x1277 @x1849 @x1263 $x71) $x564) @x1847 $x1301))) |
|
1419 |
(let ((@x1855 ((_ |th-lemma| arith farkas 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 1) @x701 @x1820 @x696 (|unit-resolution| @x1268 @x1833 $x670) @x1252 (|unit-resolution| @x1166 @x1838 $x662) @x713 @x1849 @x1557 @x1136 @x1609 @x685 (|unit-resolution| @x1298 (|unit-resolution| @x581 @x1842 $x578) $x1237) @x1296 @x1852 @x1826 false))) |
|
1420 |
(let ((@x1858 (|unit-resolution| (lemma @x1855 (or $x412 $x743 $x708 $x1626 $x286)) @x939 @x1263 @x964 @x1426 $x412))) |
|
1421 |
(let ((@x1860 (|unit-resolution| @x997 (|unit-resolution| @x607 @x1858 $x603) $x931))) |
|
1422 |
(let ((@x1861 (|unit-resolution| @x1037 (|unit-resolution| @x607 @x1858 $x603) $x1022))) |
|
1423 |
(let ((@x1865 (|unit-resolution| @x863 (|unit-resolution| @x621 (|unit-resolution| @x1064 @x1858 $x361) $x618) $x838))) |
|
1424 |
(let ((@x1868 (|unit-resolution| (|unit-resolution| @x1070 @x797 (or $x436 (not $x931) $x411 $x386)) @x1860 @x761 @x1858 $x386))) |
|
1425 |
(let ((@x1874 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 2 2 2 2 2) (or (not $x1022) $x798 $x336 $x1090 $x955 $x956 $x1089)) @x833 @x851 (or (not $x1022) $x798 $x336 $x1090 $x955)))) |
|
1426 |
(let ((@x1875 (|unit-resolution| @x1874 (|unit-resolution| @x948 (|unit-resolution| @x613 @x1868 $x610) $x934) @x1865 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 2) (or $x773 (not $x931) $x411)) @x1860 @x1858 $x773) @x1861 $x336))) |
|
1427 |
(let ((@x1877 (|unit-resolution| @x1115 (|unit-resolution| @x629 @x1875 $x626) $x665))) |
|
1428 |
(let ((@x1878 (|unit-resolution| @x924 (|unit-resolution| @x621 (|unit-resolution| @x1064 @x1858 $x361) $x618) $x668))) |
|
1429 |
(let ((@x1879 (|unit-resolution| @x806 (|unit-resolution| @x613 @x1868 $x610) $x671))) |
|
1430 |
(let (($x1000 (not $x931))) |
|
1431 |
(let ((@x1881 ((_ |th-lemma| arith assign-bounds 2 2 1 1 1 1 1 1 1 1 1) (or $x311 $x705 $x740 $x704 $x741 $x1564 $x1189 $x436 $x799 $x858 $x1593 $x1000)))) |
|
1432 |
(let ((@x1882 (|unit-resolution| @x1881 @x761 @x696 @x701 @x855 @x1136 @x797 @x1879 @x1878 @x1877 @x1860 @x1557 $x311))) |
|
1433 |
(let ((@x1887 (|unit-resolution| @x1268 (|unit-resolution| @x589 (|unit-resolution| @x1098 @x1858 $x461) $x586) $x670))) |
|
1434 |
(let ((@x1888 (|unit-resolution| @x723 (|unit-resolution| @x589 (|unit-resolution| @x1098 @x1858 $x461) $x586) $x679))) |
|
1435 |
(let ((@x1892 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 2 2 2 2 2) (or (not $x1022) $x798 $x486 $x782 $x869 $x742 $x813)) @x685 @x718 (or (not $x1022) $x798 $x486 $x782 $x869)))) |
|
1436 |
(let ((@x1893 (|unit-resolution| @x1892 @x1861 @x942 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 2) (or $x773 $x1000 $x411)) @x1860 @x1858 $x773) @x1888 $x486))) |
|
1437 |
(let (($x1078 (not $x1022))) |
|
1438 |
(let (($x1896 (or $x652 $x1090 $x1089 $x955 $x956 $x869 $x813 $x1586 $x812 $x1584 $x1585 $x816 $x1196 $x1197 $x1078))) |
|
1439 |
(let ((@x1898 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 -2 1 -1 1 -1 -1 1 1 -1 1 1 -1 -1) $x1896) @x1888 @x810 @x851 @x833 @x1125 @x728 @x1284 @x718 (|unit-resolution| @x948 (|unit-resolution| @x613 @x1868 $x610) $x934) @x1865 @x1861 @x1542 @x1573 (|unit-resolution| @x1291 (|unit-resolution| @x581 @x1893 $x578) $x1236) $x652))) |
|
1440 |
(let (($x1900 (or $x651 $x705 $x740 $x704 $x741 $x1260 $x1401 $x1564 $x1189 $x1321 $x1591 $x799 $x858 $x1593 $x1000))) |
|
1441 |
(let ((@x1902 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 -2 1 -1 1 -1 -1 1 1 -1 1 1 -1 -1) $x1900) @x1879 @x797 @x696 @x701 @x855 @x1136 @x1296 @x1252 @x1878 @x1877 @x1887 @x1860 (|unit-resolution| @x1298 (|unit-resolution| @x581 @x1893 $x578) $x1237) @x1557 $x651))) |
|
1442 |
(let ((@x1905 (|unit-resolution| @x1277 (|unit-resolution| @x577 (|unit-resolution| @x1304 @x1902 @x1898 $x70) $x565) @x1263 $x764))) |
|
1443 |
(let ((@x1906 ((_ |th-lemma| arith farkas -1 -1 -1 1 -3 3 -1 1 -1 1 1 -1 -2 -2 2 2 1) @x1256 @x1905 @x964 @x830 @x1878 @x701 @x1879 @x696 @x1887 @x1252 @x1557 @x1136 @x797 @x1877 @x855 @x1860 (|unit-resolution| @x1396 (|unit-resolution| @x645 @x1882 $x642) $x1369) false))) |
|
1444 |
(let ((@x1919 (|unit-resolution| @x597 (|unit-resolution| (lemma @x1906 (or $x436 $x708 $x286)) @x1426 @x1263 $x436) $x594))) |
|
1445 |
(let ((@x1922 (|unit-resolution| @x1892 @x1038 (|unit-resolution| @x691 @x1919 $x676) @x1067 @x1131 $x486))) |
|
1446 |
(let ((@x1925 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 -2 1 -1 1 -1 -1 1 1 -1 1 1 -1 -1) $x1896) @x1917 @x810 @x851 @x833 @x1125 @x728 @x1284 @x718 @x1131 @x1087 @x1038 @x1542 @x1573 (|unit-resolution| @x1291 (|unit-resolution| @x581 @x1922 $x578) $x1236) $x652))) |
|
1447 |
(let ((@x1929 (|unit-resolution| @x629 (|unit-resolution| @x1874 @x1917 @x1087 @x1067 @x1038 $x336) $x626))) |
|
1448 |
(let ((@x1931 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 -2 1 -1 1 -1 -1 1 1 -1 1 1 -1 -1) $x1900) (|unit-resolution| @x1115 @x1929 $x665) @x797 @x696 @x701 @x855 @x1136 @x1296 @x1252 @x1086 (|unit-resolution| @x806 (|unit-resolution| @x613 @x1915 $x610) $x671) @x1269 @x998 (|unit-resolution| @x1298 (|unit-resolution| @x581 @x1922 $x578) $x1237) @x1557 $x651))) |
|
1449 |
(let ((@x1934 (|unit-resolution| @x1277 (|unit-resolution| @x577 (|unit-resolution| @x1304 @x1931 @x1925 $x70) $x565) @x1263 $x764))) |
|
1450 |
(let ((@x1910 ((_ |th-lemma| arith farkas -1 -1 -1 1 -1 1 1 -1 1 -1 -1 1 1) @x1256 @x1253 @x898 @x830 @x1249 @x1252 @x1206 @x833 @x999 @x851 (hypothesis $x1543) @x728 (hypothesis $x1247) false))) |
|
1451 |
(let ((@x1935 (|unit-resolution| (lemma @x1910 (or $x1259 $x655 $x901 $x1260 $x1090 $x955 $x1586)) @x1934 (|unit-resolution| @x826 @x1919 $x667) @x1269 @x1087 @x1917 @x1573 $x1259))) |
|
1452 |
(let ((@x1938 (|unit-resolution| @x645 (|unit-resolution| @x647 (|unit-resolution| @x1310 @x1935 $x1119) $x311) $x642))) |
|
1453 |
(let ((@x1940 ((_ |th-lemma| arith farkas -1 -1 -2 -1 1 -1 1 1 -1 1 -1 -1 1 1) @x1256 @x1934 (|unit-resolution| @x647 (|unit-resolution| @x1310 @x1935 $x1119) $x311) (|unit-resolution| @x826 @x1919 $x667) @x830 @x1269 @x1252 @x1087 @x833 @x1917 @x851 @x1573 @x728 (|unit-resolution| @x1396 @x1938 $x1369) false))) |
|
1454 |
(let ((@x1943 (|unit-resolution| (lemma @x1940 (or $x411 $x708 $x286)) @x1426 @x1263 $x411))) |
|
1455 |
(let ((@x1944 (|unit-resolution| @x1508 @x1943 $x386))) |
|
1456 |
(let ((@x1948 (|unit-resolution| (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 -2) (or $x873 $x1196 $x337)) @x1542 (or $x873 $x337)) (|unit-resolution| @x1768 @x1943 @x1944 $x336) $x873))) |
|
1457 |
(let ((@x1950 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 -1 -1 1 1) (or $x1510 $x1197 $x387 $x1374 $x740 $x286)) @x1125 @x701 (or $x1510 $x387 $x1374 $x286)))) |
|
1458 |
(let ((@x1956 (|unit-resolution| @x924 (|unit-resolution| @x621 (|unit-resolution| @x1526 @x1944 @x1426 $x361) $x618) $x668))) |
|
1459 |
(let ((@x1958 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 -2 -2 2 -2 2) (or $x1354 $x705 $x437 $x815 $x816 $x704 $x741)) @x696 @x810 (or $x1354 $x705 $x437 $x815 $x704)))) |
|
1460 |
(let ((@x1959 (|unit-resolution| @x1958 @x1956 (|unit-resolution| @x789 (|unit-resolution| @x605 @x1943 $x602) $x774) (|unit-resolution| (lemma @x1906 (or $x436 $x708 $x286)) @x1426 @x1263 $x436) (|unit-resolution| @x1950 @x1948 @x1426 @x1944 $x1374) (|unit-resolution| @x806 (|unit-resolution| @x613 @x1944 $x610) $x671) false))) |
|
1461 |
(let ((@x1992 (|unit-resolution| (lemma @x1959 (or $x286 $x708)) @x1263 $x286))) |
|
1462 |
(let ((@x1240 (|unit-resolution| @x613 (|unit-resolution| @x1070 @x761 @x797 @x998 @x842 $x386) $x610))) |
|
1463 |
(let ((@x1242 (|unit-resolution| @x1092 (|unit-resolution| @x948 @x1240 $x934) @x833 @x842 @x1087 @x851 $x336))) |
|
1464 |
(let ((@x1244 (|unit-resolution| @x1115 (|unit-resolution| @x629 @x1242 $x626) (|unit-resolution| @x1102 @x761 @x842 @x1076 $x858) false))) |
|
1465 |
(let ((@x1325 (|unit-resolution| @x597 (|unit-resolution| (lemma @x1244 (or $x436 $x411 $x287)) @x842 @x1076 $x436) $x594))) |
|
1466 |
(let ((@x1265 (|unit-resolution| @x629 (|unit-resolution| @x1092 @x1110 @x833 @x842 @x1087 @x851 $x336) $x626))) |
|
1467 |
(let ((@x1270 (|unit-resolution| @x860 (|unit-resolution| @x1115 @x1265 $x665) @x842 @x729 @x843 $x312))) |
|
1468 |
(let ((@x1274 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x1119 $x1247)) (|unit-resolution| @x647 @x1270 $x643) $x1247))) |
|
1469 |
(let ((@x1275 (|unit-resolution| @x1262 @x1274 @x1086 @x1269 @x729 @x898 @x848 (|unit-resolution| @x1115 @x1265 $x665) $x655))) |
|
1470 |
(let ((@x1287 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1 1 1 1) (or $x486 $x813 $x411 $x782 $x742 $x869)) @x866 @x685 @x842 @x1131 @x718 $x486))) |
|
1471 |
(let ((@x1293 ((_ |th-lemma| arith assign-bounds 1 -3/2 3/2 -1 1/2 -1/2 1/2 -1/2 -1 1 1/2 -1/2 -1/2 1/2 1/2 -1/2 1/2) (|unit-resolution| @x1291 (|unit-resolution| @x581 @x1287 $x578) $x1236) @x718 @x1131 @x1284 @x1087 @x729 @x728 @x833 @x1038 @x810 @x848 @x851 (|unit-resolution| @x1159 (|unit-resolution| @x647 @x1270 $x643) $x1103) @x713 @x1275 @x685 @x866 $x652))) |
|
1472 |
(let ((@x1300 ((_ |th-lemma| arith assign-bounds 1 -3/2 3/2 -1 1/2 -1/2 1/2 -1/2 -1 1 1/2 -1/2 -1/2 1/2 1/2 -1/2 1/2) (|unit-resolution| @x1298 (|unit-resolution| @x581 @x1287 $x578) $x1237) @x1252 @x1269 @x1296 @x1086 @x1137 @x1136 @x701 @x998 @x797 @x1133 @x696 @x1274 @x1256 @x1263 @x830 @x898 $x651))) |
|
1473 |
(let ((@x1305 (|unit-resolution| @x1304 @x1300 @x1293 (|unit-resolution| @x577 (|unit-resolution| @x1277 @x1275 @x1263 $x71) $x564) false))) |
|
1474 |
(let ((@x1329 (|unit-resolution| (lemma @x1305 (or $x386 $x1139 $x708 $x901 (not $x659) $x782 $x411)) (|unit-resolution| @x826 @x1325 $x667) (|unit-resolution| @x1235 @x1076 $x656) @x1150 @x1145 (|unit-resolution| @x691 @x1325 $x676) @x842 $x386))) |
|
1475 |
(let ((@x1331 (|unit-resolution| @x948 (|unit-resolution| @x613 @x1329 $x610) $x934))) |
|
1476 |
(let ((@x1333 ((_ |th-lemma| arith assign-bounds 2 -1) (or $x778 $x387 $x955)))) |
|
1477 |
(let ((@x1336 (|unit-resolution| @x629 (|unit-resolution| @x1092 @x1331 @x833 @x842 @x1087 @x851 $x336) $x626))) |
|
1478 |
(let ((@x1337 (|unit-resolution| @x1115 @x1336 $x665))) |
|
1479 |
(let ((@x1313 (|unit-resolution| @x629 (|unit-resolution| @x1092 @x1027 @x833 @x842 @x1087 @x851 $x336) $x626))) |
|
1480 |
(let ((@x1315 ((_ |th-lemma| arith farkas -1 -1 -1 1 -1 1 -1 1 1) @x1024 @x841 @x729 @x728 @x851 @x842 (|unit-resolution| @x1115 @x1313 $x665) @x855 @x1027 false))) |
|
1481 |
(let ((@x1338 (|unit-resolution| (lemma @x1315 (or $x312 $x387 (not $x659) $x411)) @x1329 @x1145 @x842 $x312))) |
|
1482 |
(let ((@x1341 (|unit-resolution| @x1262 (|unit-resolution| @x1310 (|unit-resolution| @x647 @x1338 $x643) $x1247) @x1337 @x1269 @x1145 (|unit-resolution| @x826 @x1325 $x667) (|unit-resolution| @x1333 @x1331 @x1329 $x778) @x1086 $x655))) |
|
1483 |
(let ((@x1343 (|unit-resolution| @x577 (|unit-resolution| @x1277 @x1341 (|unit-resolution| @x1235 @x1076 $x656) $x71) $x564))) |
|
1484 |
(let ((@x1344 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1 1 1 1) (or $x486 $x813 $x411 $x782 $x742 $x869)) (|unit-resolution| @x691 @x1325 $x676) @x685 @x842 @x1131 @x718 $x486))) |
|
1485 |
(let ((@x1320 ((_ |th-lemma| arith farkas 1 -1 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 1) @x681 @x701 @x856 @x855 @x697 @x1150 @x1136 @x696 (hypothesis $x1237) @x1252 @x1249 @x1296 @x1318 (hypothesis $x931) @x797 @x1076 false))) |
|
1486 |
(let ((@x1323 (lemma @x1320 (or $x651 $x705 $x858 $x704 $x1321 $x1260 $x1000 $x287)))) |
|
1487 |
(let ((@x1348 (|unit-resolution| @x1323 @x1086 @x1337 (|unit-resolution| @x806 (|unit-resolution| @x613 @x1329 $x610) $x671) (|unit-resolution| @x1298 (|unit-resolution| @x581 @x1344 $x578) $x1237) @x1269 @x998 @x1076 $x651))) |
|
1488 |
(let ((@x1351 ((_ |th-lemma| arith farkas -1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1) @x1331 @x1145 @x728 @x851 @x1337 @x855 (|unit-resolution| @x1291 (|unit-resolution| @x581 @x1344 $x578) $x1236) @x718 @x1131 @x1284 (|unit-resolution| @x1304 @x1348 @x1343 $x1302) @x1038 @x810 @x1329 false))) |
|
1489 |
(let ((@x1353 (lemma @x1351 (or $x411 $x287)))) |
|
1490 |
(let ((@x1993 (|unit-resolution| @x1353 @x1992 $x411))) |
|
1491 |
(let ((@x1994 (|unit-resolution| @x1508 @x1993 $x386))) |
|
1492 |
(let ((@x1996 (|unit-resolution| @x948 (|unit-resolution| @x613 @x1994 $x610) $x934))) |
|
1493 |
(let ((@x1998 (|unit-resolution| @x792 (|unit-resolution| @x605 @x1993 $x602) $x773))) |
|
1494 |
(let ((@x1964 (|unit-resolution| @x613 (|unit-resolution| @x1508 (|unit-resolution| @x1353 @x1076 $x411) $x386) $x610))) |
|
1495 |
(let ((@x1967 (|unit-resolution| @x789 (|unit-resolution| @x605 (|unit-resolution| @x1353 @x1076 $x411) $x602) $x774))) |
|
1496 |
(let ((@x1970 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 -1 -1 1 1 -1 1 1 -1) (or $x704 $x741 $x311 $x1139 $x1189 $x815 $x1196 $x1197 $x437 $x816)) @x696 @x1125 @x1136 @x810 (or $x704 $x311 $x1139 $x815 $x1196 $x437)))) |
|
1497 |
(let ((@x1973 (|unit-resolution| (|unit-resolution| @x1970 @x1542 @x1813 (or $x704 $x311 $x815 $x437)) (|unit-resolution| @x1205 @x1188 @x1076 (|unit-resolution| @x1353 @x1076 $x411) $x436) @x1188 @x1967 (|unit-resolution| @x806 @x1964 $x671) false))) |
|
1498 |
(let ((@x2008 (|unit-resolution| @x1115 (|unit-resolution| @x629 (|unit-resolution| @x1768 @x1993 @x1994 $x336) $x626) $x665))) |
|
1499 |
(let ((@x2012 (|unit-resolution| @x1144 (|unit-resolution| @x637 @x1992 $x634) $x659))) |
|
1500 |
(let ((@x2049 (lemma ((_ |th-lemma| arith farkas 1 -1 1 -1 -1 -1 1 -1 1 1) @x729 @x728 @x856 @x855 @x1207 @x761 @x797 @x999 @x851 @x841 false) (or $x436 (not $x659) $x858 $x798 $x955 $x312)))) |
|
1501 |
(let ((@x2050 (|unit-resolution| @x2049 @x2012 @x2008 @x1998 @x1996 (|unit-resolution| (lemma @x1973 (or $x311 $x287)) @x1992 $x311) $x436))) |
|
1502 |
(let ((@x2000 (|unit-resolution| @x645 (|unit-resolution| (lemma @x1973 (or $x311 $x287)) @x1992 $x311) $x642))) |
|
1503 |
(let ((@x2001 (|unit-resolution| @x1396 @x2000 $x1369))) |
|
1504 |
(let ((@x2002 (|unit-resolution| @x1333 @x1996 @x1994 $x778))) |
|
1505 |
(let ((@x2053 (|unit-resolution| @x806 (|unit-resolution| @x613 @x1994 $x610) $x671))) |
|
1506 |
(let ((@x2006 (|unit-resolution| @x1768 @x1993 @x1994 $x336))) |
|
1507 |
(let ((@x2027 (|unit-resolution| @x691 (|unit-resolution| @x597 (|unit-resolution| @x1719 @x1025 @x1996 @x1998 $x436) $x594) $x676))) |
|
1508 |
(let ((@x2028 (|unit-resolution| @x826 (|unit-resolution| @x597 (|unit-resolution| @x1719 @x1025 @x1996 @x1998 $x436) $x594) $x667))) |
|
1509 |
(let ((@x1982 (|unit-resolution| (|unit-resolution| @x1376 @x1813 (or $x655 $x1373 $x1104 $x901 $x1260 $x1374)) @x1253 @x1370 @x898 @x1248 @x1371 $x1260))) |
|
1510 |
(let ((@x1984 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 1 -1 -1 1 1 -1 1 -2 2 -1 1 -1 1) $x1723) @x797 @x851 @x701 @x1136 @x1256 @x1813 @x685 @x1252 (or $x1611 $x955 $x1373 $x655 $x798 $x782 $x1374)))) |
|
1511 |
(let ((@x1986 (|unit-resolution| @x1619 (|unit-resolution| @x1984 @x1253 @x1370 @x866 @x1207 @x999 @x1371 $x1611) $x757))) |
|
1512 |
(let ((@x1989 (|unit-resolution| @x1268 (|unit-resolution| @x589 (|unit-resolution| @x591 @x1986 $x461) $x586) @x1982 false))) |
|
1513 |
(let ((@x1991 (lemma @x1989 (or $x655 $x1374 $x901 $x1104 $x1373 $x782 $x798 $x955)))) |
|
1514 |
(let ((@x2029 (|unit-resolution| @x1991 @x1385 @x2028 @x2002 @x2001 @x2027 @x1998 @x1996 $x655))) |
|
1515 |
(let ((@x2009 (|unit-resolution| @x789 (|unit-resolution| @x605 @x1993 $x602) $x774))) |
|
1516 |
(let ((@x2004 (|unit-resolution| @x1277 (|unit-resolution| @x1991 @x1370 @x898 @x2002 @x2001 @x866 @x1998 @x1996 $x655) @x1263 $x71))) |
|
1517 |
(let ((@x2010 (|unit-resolution| @x1166 @x2000 $x662))) |
|
1518 |
(let (($x731 (not $x659))) |
|
1519 |
(let (($x814 (not $x648))) |
|
1520 |
(let (($x2015 (or $x652 $x1585 $x732 $x814 $x764 $x901 $x1402 $x858 $x1593 $x815 $x816 $x900 $x1089 $x731 $x812 (not $x1367)))) |
|
1521 |
(let ((@x2017 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 -1 1 1 -1 1 -1 1 -1 1 1 -1 -2 2 1) $x2015) (|unit-resolution| @x1411 @x1441 $x1367) @x810 @x833 @x855 @x728 @x713 @x1284 (|unit-resolution| @x1991 @x1370 @x898 @x2002 @x2001 @x866 @x1998 @x1996 $x655) @x2012 @x2010 @x2009 @x2008 @x898 @x1366 @x830 $x652))) |
|
1522 |
(let (($x2019 (or $x651 $x1591 $x1373 $x1625 $x708 $x782 $x742 $x1196 $x1197 $x798 $x799 $x1374 $x740 $x1139 $x1189 $x1437))) |
|
1523 |
(let ((@x2021 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 -1 1 1 -1 1 -1 1 -1 1 1 -1 -2 2 1) $x2019) (|unit-resolution| @x1443 @x1441 $x1368) @x797 @x701 @x1125 @x1136 @x1256 @x1296 @x1263 @x1813 @x866 @x1998 @x1542 @x2001 @x1370 @x685 $x651))) |
|
1524 |
(let ((@x2022 (|unit-resolution| @x1304 @x2021 @x2017 (|unit-resolution| @x577 @x2004 $x564) false))) |
|
1525 |
(let ((@x2032 (|unit-resolution| (lemma @x2022 (or $x1409 $x708 $x782 $x1374 $x901)) @x2027 @x1263 @x1385 @x2028 $x1409))) |
|
1526 |
(let ((@x2035 (|unit-resolution| @x1291 (|unit-resolution| @x581 (|unit-resolution| @x583 @x2032 $x486) $x578) $x1236))) |
|
1527 |
(let ((@x2038 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 -2 -2 2 2 -2 2) (or $x1500 $x858 $x487 $x732 $x814 $x764 $x731 $x812)) @x2029 @x713 @x728 @x2012 @x2010 @x2008 (|unit-resolution| @x583 @x2032 $x486) $x1500))) |
|
1528 |
(let ((@x2040 (|unit-resolution| ((_ |th-lemma| arith assign-bounds -1 1 -1 -1 1 -1 1 1 -1 -1 1 -1 1) $x1756) @x810 @x833 @x855 @x1256 @x1366 @x830 @x1284 (or $x652 $x901 $x1584 $x815 $x1592 $x1373 $x708)))) |
|
1529 |
(let ((@x2042 (|unit-resolution| @x1304 (|unit-resolution| @x2040 @x2038 @x2035 @x1263 @x2009 @x2028 @x2001 $x652) (|unit-resolution| @x577 (|unit-resolution| @x1277 @x2029 @x1263 $x71) $x564) $x1301))) |
|
1530 |
(let ((@x2043 (|unit-resolution| @x1298 (|unit-resolution| @x581 (|unit-resolution| @x583 @x2032 $x486) $x578) $x1237))) |
|
1531 |
(let ((@x2044 ((_ |th-lemma| arith farkas 1/2 -1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 1/2 -1/2 1) @x2010 @x713 @x2029 @x2043 @x1296 @x2042 @x2027 @x685 @x1542 @x1125 @x1998 @x797 @x1385 @x701 @x2006 false))) |
|
1532 |
(let ((@x2055 (|unit-resolution| @x621 (|unit-resolution| (lemma @x2044 (or $x361 $x708)) @x1263 $x361) $x618))) |
|
1533 |
(let ((@x1979 (lemma (|unit-resolution| @x924 (hypothesis $x618) (hypothesis $x705) false) (or (not $x618) $x668)))) |
|
1534 |
(let ((@x2056 (|unit-resolution| @x1979 @x2055 $x668))) |
|
1535 |
(let ((@x2059 (|unit-resolution| @x1991 (|unit-resolution| @x826 (|unit-resolution| @x597 @x2050 $x594) $x667) (|unit-resolution| @x1958 @x2050 @x2009 @x2056 @x2053 $x1354) @x2002 @x2001 (|unit-resolution| @x691 (|unit-resolution| @x597 @x2050 $x594) $x676) @x1998 @x1996 $x655))) |
|
1536 |
(let ((@x2061 (|unit-resolution| (|unit-resolution| @x1669 @x1813 (or $x486 $x705 $x704 $x1373 $x708 $x412)) @x2056 @x1263 @x2001 @x2053 @x1993 $x486))) |
|
1537 |
(let ((@x2063 (|unit-resolution| @x589 (|unit-resolution| @x707 @x2050 @x2053 @x2006 @x2056 $x461) $x586))) |
|
1538 |
(let ((@x2065 (|unit-resolution| @x1465 (|unit-resolution| @x1268 @x2063 $x670) @x2009 @x2012 @x2002 @x2061 @x2008 (|unit-resolution| @x826 (|unit-resolution| @x597 @x2050 $x594) $x667) $x652))) |
|
1539 |
(let ((@x2071 (|unit-resolution| @x1323 (|unit-resolution| @x1268 @x2063 $x670) @x1992 @x2008 @x2053 (|unit-resolution| @x1298 (|unit-resolution| @x581 @x2061 $x578) $x1237) (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 -1) (or $x931 $x412 $x798)) @x1998 @x1993 $x931) @x2056 $x651))) |
|
1540 |
(let ((@x2073 (|unit-resolution| @x577 (|unit-resolution| @x1304 @x2071 @x2065 $x70) (|unit-resolution| @x1277 @x2059 @x1263 $x71) false))) |
|
1541 |
(let ((@x2074 (lemma @x2073 $x708))) |
|
1542 |
(let ((@x1771 (|unit-resolution| @x621 (|unit-resolution| @x1526 (|unit-resolution| @x1235 @x709 $x287) @x1024 $x361) $x618))) |
|
1543 |
(let ((@x1772 (|unit-resolution| @x924 @x1771 $x668))) |
|
1544 |
(let ((@x1773 (|unit-resolution| @x1768 @x1185 @x1024 $x336))) |
|
1545 |
(let ((@x1769 (|unit-resolution| @x1235 @x709 $x287))) |
|
1546 |
(let ((@x1776 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 -1 1 -1 -1 1 -1 1) (or $x437 $x815 $x816 $x704 $x741 $x1196 $x337 $x286 $x1197)) @x1769 @x696 @x1773 @x1125 @x810 @x1734 @x1477 @x1542 $x437))) |
|
1547 |
(let ((@x1782 (|unit-resolution| @x1566 (|unit-resolution| @x1556 (|unit-resolution| @x639 @x1769 $x635) $x1499) @x701 @x1185 @x1136 @x1769 @x1734 @x1772 @x696 $x311))) |
|
1548 |
(let ((@x1790 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 1) (or $x658 $x286 $x1564)) (|unit-resolution| @x1556 (|unit-resolution| @x639 @x1769 $x635) $x1499) @x1769 $x658))) |
|
1549 |
(let ((@x1793 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 2 4 4 2 2 1 2 2 2 2 2) $x1791) (|unit-resolution| @x738 (|unit-resolution| @x599 @x1776 $x595) $x673) @x810 @x696 @x701 @x1125 @x1790 @x1734 @x1772 (|unit-resolution| @x1572 (|unit-resolution| @x639 @x1769 $x635) $x1543) @x1477 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 -2) (or $x873 $x1196 $x337)) @x1773 @x1542 $x873) @x685 $x461))) |
|
1550 |
(let ((@x1796 ((_ |th-lemma| arith farkas 4 -1 3 -3 -1 1 1 -1 -1 1 -1 2 -2 -2 2 -1 1 1) @x1773 @x701 @x1734 @x696 (|unit-resolution| @x723 (|unit-resolution| @x589 @x1793 $x586) $x679) @x718 (|unit-resolution| @x1166 (|unit-resolution| @x645 @x1782 $x642) $x662) @x713 @x709 (|unit-resolution| @x1572 (|unit-resolution| @x639 @x1769 $x635) $x1543) @x728 @x1477 @x810 @x1542 @x1125 (|unit-resolution| @x738 (|unit-resolution| @x599 @x1776 $x595) $x673) @x685 @x1772 false))) |
|
1551 |
(let ((@x2081 (|unit-resolution| (lemma @x1796 (or $x656 $x412 $x387)) @x1815 @x1185 @x2074 false))) |
|
1552 |
(let ((@x2082 (lemma @x2081 $x412))) |
|
1553 |
(let ((@x2100 (|unit-resolution| @x863 (|unit-resolution| @x621 (|unit-resolution| @x1064 @x2082 $x361) $x618) $x838))) |
|
1554 |
(let ((@x2117 (|unit-resolution| @x1572 (|unit-resolution| @x639 (|unit-resolution| @x1235 @x2074 $x287) $x635) $x1543))) |
|
1555 |
(let ((@x2101 (|unit-resolution| (|unit-resolution| @x1429 @x1542 (or $x286 $x386 $x1090)) @x2100 (|unit-resolution| @x1235 @x2074 $x287) $x386))) |
|
1556 |
(let ((@x2090 (|unit-resolution| @x1556 (|unit-resolution| @x639 (|unit-resolution| @x1235 @x2074 $x287) $x635) $x1499))) |
|
1557 |
(let ((@x2078 (|unit-resolution| @x997 @x994 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 2) (or $x815 $x1000 $x411)) @x842 @x897 $x1000) false))) |
|
1558 |
(let ((@x2097 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x774 $x773)) (|unit-resolution| (lemma @x2078 (or $x411 $x815)) @x2082 $x815) $x773))) |
|
1559 |
(let ((@x2104 (|unit-resolution| @x1874 (|unit-resolution| @x948 (|unit-resolution| @x613 @x2101 $x610) $x934) @x2100 @x2097 (|unit-resolution| @x1037 (|unit-resolution| @x607 @x2082 $x603) $x1022) $x336))) |
|
1560 |
(let ((@x2107 (|unit-resolution| @x1979 (|unit-resolution| @x621 (|unit-resolution| @x1064 @x2082 $x361) $x618) $x668))) |
|
1561 |
(let ((@x2109 (|unit-resolution| @x1881 @x1188 @x696 @x701 @x855 @x1136 @x797 (|unit-resolution| @x806 (|unit-resolution| @x613 @x2101 $x610) $x671) @x2107 (|unit-resolution| @x1115 (|unit-resolution| @x629 @x2104 $x626) $x665) (|unit-resolution| @x997 (|unit-resolution| @x607 @x2082 $x603) $x931) @x2090 $x436))) |
|
1562 |
(let ((@x2114 (|unit-resolution| @x723 (|unit-resolution| @x589 (|unit-resolution| @x1098 @x2082 $x461) $x586) $x679))) |
|
1563 |
(let ((@x2115 ((_ |th-lemma| arith farkas 1 1 -1 -1 1 -1 -1 1 -1 -1 1 -1 1) @x1136 (|unit-resolution| @x806 (|unit-resolution| @x613 @x2101 $x610) $x671) @x696 @x2090 @x2107 @x701 @x2114 @x718 @x713 @x2074 @x685 (|unit-resolution| @x691 (|unit-resolution| @x597 @x2109 $x594) $x676) (|unit-resolution| @x1159 (|unit-resolution| @x647 @x1188 $x643) $x1103) false))) |
|
1564 |
(let ((@x2119 (|unit-resolution| @x1166 (|unit-resolution| @x645 (lemma @x2115 $x311) $x642) $x662))) |
|
1565 |
(let ((@x2120 ((_ |th-lemma| arith farkas 1 -1 1 -1 1 1 -1 -1 3 -3 2 -2 2 -2 1 -1 1) @x2114 @x718 @x728 @x2119 @x713 (|unit-resolution| @x948 (|unit-resolution| @x613 @x2101 $x610) $x934) @x851 @x2117 @x2100 @x833 @x1542 @x1125 @x810 (|unit-resolution| @x1037 (|unit-resolution| @x607 @x2082 $x603) $x1022) @x1609 @x685 @x2074 false))) |
|
1566 |
(let ((@x2121 (lemma @x2120 $x743))) |
|
1567 |
(let (($x736 (not $x595))) |
|
1568 |
(let ((@x2125 (|unit-resolution| @x599 (lemma (|unit-resolution| @x738 (hypothesis $x595) @x2121 false) $x736) $x436))) |
|
1569 |
(|unit-resolution| @x691 (|unit-resolution| @x597 @x2125 $x594) (|unit-resolution| ((_ |th-lemma| arith assign-bounds 2 -1) (or $x673 $x437 $x782)) @x2125 @x2121 $x782) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1570 |
|
| 56111 | 1571 |
8778062e40723924421e3a1f0c912b62e43b9b81 20 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1572 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1573 |
((set-logic AUFLIRA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1574 |
(proof |
| 56111 | 1575 |
(let ((?x8 (* 2.0 |x$|))) |
1576 |
(let ((?x10 (+ ?x8 1.0))) |
|
1577 |
(let ((?x6 (+ |x$| |x$|))) |
|
1578 |
(let (($x11 (< ?x6 ?x10))) |
|
1579 |
(let (($x12 (or false $x11))) |
|
1580 |
(let (($x13 (or $x11 $x12))) |
|
1581 |
(let (($x14 (not $x13))) |
|
1582 |
(let ((@x65 (monotonicity (rewrite (= (< ?x8 (+ 1.0 ?x8)) true)) (= (not (< ?x8 (+ 1.0 ?x8))) (not true))))) |
|
1583 |
(let ((@x69 (trans @x65 (rewrite (= (not true) false)) (= (not (< ?x8 (+ 1.0 ?x8))) false)))) |
|
1584 |
(let ((?x38 (+ 1.0 ?x8))) |
|
1585 |
(let (($x41 (< ?x8 ?x38))) |
|
1586 |
(let ((@x43 (monotonicity (rewrite (= ?x6 ?x8)) (rewrite (= ?x10 ?x38)) (= $x11 $x41)))) |
|
1587 |
(let ((@x50 (trans (monotonicity @x43 (= $x12 (or false $x41))) (rewrite (= (or false $x41) $x41)) (= $x12 $x41)))) |
|
1588 |
(let ((@x57 (trans (monotonicity @x43 @x50 (= $x13 (or $x41 $x41))) (rewrite (= (or $x41 $x41) $x41)) (= $x13 $x41)))) |
|
1589 |
(let ((@x60 (monotonicity @x57 (= $x14 (not $x41))))) |
|
1590 |
(mp (asserted $x14) (trans @x60 @x69 (= $x14 false)) false)))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1591 |
|
| 56111 | 1592 |
bbf5431bd7e9448dc98de52e9b465f05ca123636 113 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1593 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1594 |
((set-logic <null>) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1595 |
(proof |
| 56111 | 1596 |
(let ((?x215 (mod |x$| 2))) |
1597 |
(let ((?x249 (* (~ 1) ?x215))) |
|
1598 |
(let ((?x9 (|mod$| |x$| 2))) |
|
1599 |
(let ((?x250 (+ ?x9 ?x249))) |
|
1600 |
(let (($x267 (>= ?x250 0))) |
|
1601 |
(let (($x251 (= ?x250 0))) |
|
1602 |
(let (($x203 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x30 (mod ?v0 ?v1))) |
|
1603 |
(let ((?x99 (* (~ 1) ?v1))) |
|
1604 |
(let ((?x96 (* (~ 1) ?v0))) |
|
1605 |
(let ((?x142 (mod ?x96 ?x99))) |
|
1606 |
(let ((?x148 (* (~ 1) ?x142))) |
|
1607 |
(let (($x117 (<= ?v1 0))) |
|
1608 |
(let ((?x168 (ite $x117 ?x148 ?x30))) |
|
| 56109 | 1609 |
(let (($x19 (= ?v1 0))) |
| 56111 | 1610 |
(let ((?x173 (ite $x19 ?v0 ?x168))) |
1611 |
(let ((?x29 (|mod$| ?v0 ?v1))) |
|
1612 |
(= ?x29 ?x173))))))))))) :pattern ( (|mod$| ?v0 ?v1) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1613 |
)) |
| 56111 | 1614 |
(let (($x179 (forall ((?v0 Int) (?v1 Int) )(let ((?x30 (mod ?v0 ?v1))) |
1615 |
(let ((?x99 (* (~ 1) ?v1))) |
|
1616 |
(let ((?x96 (* (~ 1) ?v0))) |
|
1617 |
(let ((?x142 (mod ?x96 ?x99))) |
|
1618 |
(let ((?x148 (* (~ 1) ?x142))) |
|
1619 |
(let (($x117 (<= ?v1 0))) |
|
1620 |
(let ((?x168 (ite $x117 ?x148 ?x30))) |
|
| 56109 | 1621 |
(let (($x19 (= ?v1 0))) |
| 56111 | 1622 |
(let ((?x173 (ite $x19 ?v0 ?x168))) |
| 56109 | 1623 |
(let ((?x29 (|mod$| ?v0 ?v1))) |
| 56111 | 1624 |
(= ?x29 ?x173)))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1625 |
)) |
| 56109 | 1626 |
(let ((?x30 (mod ?1 ?0))) |
| 56111 | 1627 |
(let ((?x99 (* (~ 1) ?0))) |
1628 |
(let ((?x96 (* (~ 1) ?1))) |
|
1629 |
(let ((?x142 (mod ?x96 ?x99))) |
|
1630 |
(let ((?x148 (* (~ 1) ?x142))) |
|
1631 |
(let (($x117 (<= ?0 0))) |
|
1632 |
(let ((?x168 (ite $x117 ?x148 ?x30))) |
|
1633 |
(let (($x19 (= ?0 0))) |
|
1634 |
(let ((?x173 (ite $x19 ?1 ?x168))) |
|
| 56109 | 1635 |
(let ((?x29 (|mod$| ?1 ?0))) |
| 56111 | 1636 |
(let (($x176 (= ?x29 ?x173))) |
1637 |
(let (($x36 (forall ((?v0 Int) (?v1 Int) )(let (($x19 (= ?v1 0))) |
|
1638 |
(let ((?x34 (ite $x19 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1))))))) |
|
1639 |
(let ((?x29 (|mod$| ?v0 ?v1))) |
|
1640 |
(= ?x29 ?x34))))) |
|
1641 |
)) |
|
1642 |
(let (($x162 (forall ((?v0 Int) (?v1 Int) )(let ((?x99 (* (~ 1) ?v1))) |
|
1643 |
(let ((?x96 (* (~ 1) ?v0))) |
|
1644 |
(let ((?x142 (mod ?x96 ?x99))) |
|
1645 |
(let ((?x148 (* (~ 1) ?x142))) |
|
| 56109 | 1646 |
(let ((?x30 (mod ?v0 ?v1))) |
1647 |
(let (($x20 (< 0 ?v1))) |
|
| 56111 | 1648 |
(let ((?x153 (ite $x20 ?x30 ?x148))) |
| 56109 | 1649 |
(let (($x19 (= ?v1 0))) |
| 56111 | 1650 |
(let ((?x156 (ite $x19 ?v0 ?x153))) |
| 56109 | 1651 |
(let ((?x29 (|mod$| ?v0 ?v1))) |
| 56111 | 1652 |
(= ?x29 ?x156)))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1653 |
)) |
| 56111 | 1654 |
(let ((@x167 (monotonicity (rewrite (= (< 0 ?0) (not $x117))) (= (ite (< 0 ?0) ?x30 ?x148) (ite (not $x117) ?x30 ?x148))))) |
1655 |
(let ((@x172 (trans @x167 (rewrite (= (ite (not $x117) ?x30 ?x148) ?x168)) (= (ite (< 0 ?0) ?x30 ?x148) ?x168)))) |
|
1656 |
(let ((@x175 (monotonicity @x172 (= (ite $x19 ?1 (ite (< 0 ?0) ?x30 ?x148)) ?x173)))) |
|
1657 |
(let ((@x178 (monotonicity @x175 (= (= ?x29 (ite $x19 ?1 (ite (< 0 ?0) ?x30 ?x148))) $x176)))) |
|
| 56109 | 1658 |
(let (($x20 (< 0 ?0))) |
| 56111 | 1659 |
(let ((?x153 (ite $x20 ?x30 ?x148))) |
1660 |
(let ((?x156 (ite $x19 ?1 ?x153))) |
|
1661 |
(let (($x159 (= ?x29 ?x156))) |
|
1662 |
(let (($x160 (= (= ?x29 (ite $x19 ?1 (ite $x20 ?x30 (- (mod (- ?1) (- ?0)))))) $x159))) |
|
1663 |
(let ((@x144 (monotonicity (rewrite (= (- ?1) ?x96)) (rewrite (= (- ?0) ?x99)) (= (mod (- ?1) (- ?0)) ?x142)))) |
|
1664 |
(let ((@x152 (trans (monotonicity @x144 (= (- (mod (- ?1) (- ?0))) (- ?x142))) (rewrite (= (- ?x142) ?x148)) (= (- (mod (- ?1) (- ?0))) ?x148)))) |
|
1665 |
(let ((@x155 (monotonicity @x152 (= (ite $x20 ?x30 (- (mod (- ?1) (- ?0)))) ?x153)))) |
|
1666 |
(let ((@x158 (monotonicity @x155 (= (ite $x19 ?1 (ite $x20 ?x30 (- (mod (- ?1) (- ?0))))) ?x156)))) |
|
1667 |
(let ((@x183 (trans (|quant-intro| (monotonicity @x158 $x160) (= $x36 $x162)) (|quant-intro| @x178 (= $x162 $x179)) (= $x36 $x179)))) |
|
1668 |
(let ((@x194 (|mp~| (mp (asserted $x36) @x183 $x179) (|nnf-pos| (refl (|~| $x176 $x176)) (|~| $x179 $x179)) $x179))) |
|
1669 |
(let ((@x208 (mp @x194 (|quant-intro| (refl (= $x176 $x176)) (= $x179 $x203)) $x203))) |
|
1670 |
(let (($x257 (or (not $x203) $x251))) |
|
1671 |
(let ((?x212 (* (~ 1) 2))) |
|
1672 |
(let ((?x211 (* (~ 1) |x$|))) |
|
1673 |
(let ((?x213 (mod ?x211 ?x212))) |
|
1674 |
(let ((?x214 (* (~ 1) ?x213))) |
|
1675 |
(let (($x210 (<= 2 0))) |
|
1676 |
(let ((?x216 (ite $x210 ?x214 ?x215))) |
|
1677 |
(let (($x209 (= 2 0))) |
|
1678 |
(let ((?x217 (ite $x209 |x$| ?x216))) |
|
1679 |
(let (($x218 (= ?x9 ?x217))) |
|
1680 |
(let ((@x231 (monotonicity (monotonicity (rewrite (= ?x212 (~ 2))) (= ?x213 (mod ?x211 (~ 2)))) (= ?x214 (* (~ 1) (mod ?x211 (~ 2))))))) |
|
1681 |
(let ((@x234 (monotonicity (rewrite (= $x210 false)) @x231 (= ?x216 (ite false (* (~ 1) (mod ?x211 (~ 2))) ?x215))))) |
|
1682 |
(let ((@x238 (trans @x234 (rewrite (= (ite false (* (~ 1) (mod ?x211 (~ 2))) ?x215) ?x215)) (= ?x216 ?x215)))) |
|
1683 |
(let ((@x241 (monotonicity (rewrite (= $x209 false)) @x238 (= ?x217 (ite false |x$| ?x215))))) |
|
1684 |
(let ((@x248 (monotonicity (trans @x241 (rewrite (= (ite false |x$| ?x215) ?x215)) (= ?x217 ?x215)) (= $x218 (= ?x9 ?x215))))) |
|
1685 |
(let ((@x261 (monotonicity (trans @x248 (rewrite (= (= ?x9 ?x215) $x251)) (= $x218 $x251)) (= (or (not $x203) $x218) $x257)))) |
|
1686 |
(let ((@x264 (trans @x261 (rewrite (= $x257 $x257)) (= (or (not $x203) $x218) $x257)))) |
|
1687 |
(let ((@x265 (mp ((_ |quant-inst| |x$| 2) (or (not $x203) $x218)) @x264 $x257))) |
|
1688 |
(let ((@x324 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x251) $x267)) (|unit-resolution| @x265 @x208 $x251) $x267))) |
|
1689 |
(let (($x292 (>= ?x215 0))) |
|
1690 |
(let (($x83 (>= ?x9 0))) |
|
1691 |
(let (($x86 (not $x83))) |
|
1692 |
(let (($x14 (not (<= (+ |x$| 1) (+ |x$| (+ (* 2 ?x9) 1)))))) |
|
1693 |
(let ((@x88 (monotonicity (rewrite (= (>= (* 2 ?x9) 0) $x83)) (= (not (>= (* 2 ?x9) 0)) $x86)))) |
|
| 56109 | 1694 |
(let ((?x10 (* 2 ?x9))) |
| 56111 | 1695 |
(let ((?x66 (+ 1 |x$| ?x10))) |
1696 |
(let (($x71 (<= (+ 1 |x$|) ?x66))) |
|
1697 |
(let (($x74 (not $x71))) |
|
1698 |
(let ((@x82 (monotonicity (rewrite (= $x71 (>= ?x10 0))) (= $x74 (not (>= ?x10 0)))))) |
|
1699 |
(let ((@x65 (monotonicity (rewrite (= (+ ?x10 1) (+ 1 ?x10))) (= (+ |x$| (+ ?x10 1)) (+ |x$| (+ 1 ?x10)))))) |
|
1700 |
(let ((@x70 (trans @x65 (rewrite (= (+ |x$| (+ 1 ?x10)) ?x66)) (= (+ |x$| (+ ?x10 1)) ?x66)))) |
|
1701 |
(let ((@x73 (monotonicity (rewrite (= (+ |x$| 1) (+ 1 |x$|))) @x70 (= (<= (+ |x$| 1) (+ |x$| (+ ?x10 1))) $x71)))) |
|
1702 |
(let ((@x92 (trans (monotonicity @x73 (= $x14 $x74)) (trans @x82 @x88 (= $x74 $x86)) (= $x14 $x86)))) |
|
1703 |
(let ((@x93 (mp (asserted $x14) @x92 $x86))) |
|
1704 |
((_ |th-lemma| arith farkas -1 1 1) @x93 (|unit-resolution| ((_ |th-lemma| arith) (or false $x292)) (|true-axiom| true) $x292) @x324 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1705 |
|
| 56111 | 1706 |
b5183bee77d63a5b887fd6f1c6035b47d90e65cb 112 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1707 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1708 |
((set-logic <null>) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1709 |
(proof |
| 56111 | 1710 |
(let ((?x211 (mod |x$| 2))) |
1711 |
(let (($x305 (>= ?x211 2))) |
|
1712 |
(let (($x306 (not $x305))) |
|
1713 |
(let ((?x245 (* (~ 1) ?x211))) |
|
1714 |
(let ((?x7 (|mod$| |x$| 2))) |
|
1715 |
(let ((?x246 (+ ?x7 ?x245))) |
|
1716 |
(let (($x262 (<= ?x246 0))) |
|
1717 |
(let (($x247 (= ?x246 0))) |
|
1718 |
(let (($x199 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x29 (mod ?v0 ?v1))) |
|
1719 |
(let ((?x95 (* (~ 1) ?v1))) |
|
1720 |
(let ((?x92 (* (~ 1) ?v0))) |
|
1721 |
(let ((?x138 (mod ?x92 ?x95))) |
|
1722 |
(let ((?x144 (* (~ 1) ?x138))) |
|
1723 |
(let (($x113 (<= ?v1 0))) |
|
1724 |
(let ((?x164 (ite $x113 ?x144 ?x29))) |
|
| 56109 | 1725 |
(let (($x18 (= ?v1 0))) |
| 56111 | 1726 |
(let ((?x169 (ite $x18 ?v0 ?x164))) |
1727 |
(let ((?x28 (|mod$| ?v0 ?v1))) |
|
1728 |
(= ?x28 ?x169))))))))))) :pattern ( (|mod$| ?v0 ?v1) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1729 |
)) |
| 56111 | 1730 |
(let (($x175 (forall ((?v0 Int) (?v1 Int) )(let ((?x29 (mod ?v0 ?v1))) |
1731 |
(let ((?x95 (* (~ 1) ?v1))) |
|
1732 |
(let ((?x92 (* (~ 1) ?v0))) |
|
1733 |
(let ((?x138 (mod ?x92 ?x95))) |
|
1734 |
(let ((?x144 (* (~ 1) ?x138))) |
|
1735 |
(let (($x113 (<= ?v1 0))) |
|
1736 |
(let ((?x164 (ite $x113 ?x144 ?x29))) |
|
| 56109 | 1737 |
(let (($x18 (= ?v1 0))) |
| 56111 | 1738 |
(let ((?x169 (ite $x18 ?v0 ?x164))) |
| 56109 | 1739 |
(let ((?x28 (|mod$| ?v0 ?v1))) |
| 56111 | 1740 |
(= ?x28 ?x169)))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1741 |
)) |
| 56109 | 1742 |
(let ((?x29 (mod ?1 ?0))) |
| 56111 | 1743 |
(let ((?x95 (* (~ 1) ?0))) |
1744 |
(let ((?x92 (* (~ 1) ?1))) |
|
1745 |
(let ((?x138 (mod ?x92 ?x95))) |
|
1746 |
(let ((?x144 (* (~ 1) ?x138))) |
|
1747 |
(let (($x113 (<= ?0 0))) |
|
1748 |
(let ((?x164 (ite $x113 ?x144 ?x29))) |
|
1749 |
(let (($x18 (= ?0 0))) |
|
1750 |
(let ((?x169 (ite $x18 ?1 ?x164))) |
|
| 56109 | 1751 |
(let ((?x28 (|mod$| ?1 ?0))) |
| 56111 | 1752 |
(let (($x172 (= ?x28 ?x169))) |
1753 |
(let (($x35 (forall ((?v0 Int) (?v1 Int) )(let (($x18 (= ?v1 0))) |
|
1754 |
(let ((?x33 (ite $x18 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1))))))) |
|
1755 |
(let ((?x28 (|mod$| ?v0 ?v1))) |
|
1756 |
(= ?x28 ?x33))))) |
|
1757 |
)) |
|
1758 |
(let (($x158 (forall ((?v0 Int) (?v1 Int) )(let ((?x95 (* (~ 1) ?v1))) |
|
1759 |
(let ((?x92 (* (~ 1) ?v0))) |
|
1760 |
(let ((?x138 (mod ?x92 ?x95))) |
|
1761 |
(let ((?x144 (* (~ 1) ?x138))) |
|
| 56109 | 1762 |
(let ((?x29 (mod ?v0 ?v1))) |
1763 |
(let (($x19 (< 0 ?v1))) |
|
| 56111 | 1764 |
(let ((?x149 (ite $x19 ?x29 ?x144))) |
| 56109 | 1765 |
(let (($x18 (= ?v1 0))) |
| 56111 | 1766 |
(let ((?x152 (ite $x18 ?v0 ?x149))) |
| 56109 | 1767 |
(let ((?x28 (|mod$| ?v0 ?v1))) |
| 56111 | 1768 |
(= ?x28 ?x152)))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1769 |
)) |
| 56111 | 1770 |
(let ((@x163 (monotonicity (rewrite (= (< 0 ?0) (not $x113))) (= (ite (< 0 ?0) ?x29 ?x144) (ite (not $x113) ?x29 ?x144))))) |
1771 |
(let ((@x168 (trans @x163 (rewrite (= (ite (not $x113) ?x29 ?x144) ?x164)) (= (ite (< 0 ?0) ?x29 ?x144) ?x164)))) |
|
1772 |
(let ((@x171 (monotonicity @x168 (= (ite $x18 ?1 (ite (< 0 ?0) ?x29 ?x144)) ?x169)))) |
|
1773 |
(let ((@x174 (monotonicity @x171 (= (= ?x28 (ite $x18 ?1 (ite (< 0 ?0) ?x29 ?x144))) $x172)))) |
|
| 56109 | 1774 |
(let (($x19 (< 0 ?0))) |
| 56111 | 1775 |
(let ((?x149 (ite $x19 ?x29 ?x144))) |
1776 |
(let ((?x152 (ite $x18 ?1 ?x149))) |
|
1777 |
(let (($x155 (= ?x28 ?x152))) |
|
1778 |
(let (($x156 (= (= ?x28 (ite $x18 ?1 (ite $x19 ?x29 (- (mod (- ?1) (- ?0)))))) $x155))) |
|
1779 |
(let ((@x140 (monotonicity (rewrite (= (- ?1) ?x92)) (rewrite (= (- ?0) ?x95)) (= (mod (- ?1) (- ?0)) ?x138)))) |
|
1780 |
(let ((@x148 (trans (monotonicity @x140 (= (- (mod (- ?1) (- ?0))) (- ?x138))) (rewrite (= (- ?x138) ?x144)) (= (- (mod (- ?1) (- ?0))) ?x144)))) |
|
1781 |
(let ((@x151 (monotonicity @x148 (= (ite $x19 ?x29 (- (mod (- ?1) (- ?0)))) ?x149)))) |
|
1782 |
(let ((@x154 (monotonicity @x151 (= (ite $x18 ?1 (ite $x19 ?x29 (- (mod (- ?1) (- ?0))))) ?x152)))) |
|
1783 |
(let ((@x179 (trans (|quant-intro| (monotonicity @x154 $x156) (= $x35 $x158)) (|quant-intro| @x174 (= $x158 $x175)) (= $x35 $x175)))) |
|
1784 |
(let ((@x190 (|mp~| (mp (asserted $x35) @x179 $x175) (|nnf-pos| (refl (|~| $x172 $x172)) (|~| $x175 $x175)) $x175))) |
|
1785 |
(let ((@x204 (mp @x190 (|quant-intro| (refl (= $x172 $x172)) (= $x175 $x199)) $x199))) |
|
1786 |
(let (($x253 (or (not $x199) $x247))) |
|
1787 |
(let ((?x208 (* (~ 1) 2))) |
|
1788 |
(let ((?x207 (* (~ 1) |x$|))) |
|
1789 |
(let ((?x209 (mod ?x207 ?x208))) |
|
1790 |
(let ((?x210 (* (~ 1) ?x209))) |
|
1791 |
(let (($x206 (<= 2 0))) |
|
1792 |
(let ((?x212 (ite $x206 ?x210 ?x211))) |
|
1793 |
(let (($x205 (= 2 0))) |
|
1794 |
(let ((?x213 (ite $x205 |x$| ?x212))) |
|
1795 |
(let (($x214 (= ?x7 ?x213))) |
|
1796 |
(let ((@x227 (monotonicity (monotonicity (rewrite (= ?x208 (~ 2))) (= ?x209 (mod ?x207 (~ 2)))) (= ?x210 (* (~ 1) (mod ?x207 (~ 2))))))) |
|
1797 |
(let ((@x230 (monotonicity (rewrite (= $x206 false)) @x227 (= ?x212 (ite false (* (~ 1) (mod ?x207 (~ 2))) ?x211))))) |
|
1798 |
(let ((@x234 (trans @x230 (rewrite (= (ite false (* (~ 1) (mod ?x207 (~ 2))) ?x211) ?x211)) (= ?x212 ?x211)))) |
|
1799 |
(let ((@x237 (monotonicity (rewrite (= $x205 false)) @x234 (= ?x213 (ite false |x$| ?x211))))) |
|
1800 |
(let ((@x244 (monotonicity (trans @x237 (rewrite (= (ite false |x$| ?x211) ?x211)) (= ?x213 ?x211)) (= $x214 (= ?x7 ?x211))))) |
|
1801 |
(let ((@x257 (monotonicity (trans @x244 (rewrite (= (= ?x7 ?x211) $x247)) (= $x214 $x247)) (= (or (not $x199) $x214) $x253)))) |
|
1802 |
(let ((@x260 (trans @x257 (rewrite (= $x253 $x253)) (= (or (not $x199) $x214) $x253)))) |
|
1803 |
(let ((@x261 (mp ((_ |quant-inst| |x$| 2) (or (not $x199) $x214)) @x260 $x253))) |
|
1804 |
(let ((@x323 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x247) $x262)) (|unit-resolution| @x261 @x204 $x247) $x262))) |
|
1805 |
(let (($x82 (>= ?x7 2))) |
|
1806 |
(let ((?x56 (* 2 ?x7))) |
|
1807 |
(let (($x75 (>= ?x56 3))) |
|
1808 |
(let (($x65 (< (+ |x$| ?x56) (+ 3 |x$|)))) |
|
1809 |
(let (($x68 (not $x65))) |
|
1810 |
(let ((@x77 (monotonicity (rewrite (= $x65 (not $x75))) (= $x68 (not (not $x75)))))) |
|
1811 |
(let ((@x86 (trans (trans @x77 (rewrite (= (not (not $x75)) $x75)) (= $x68 $x75)) (rewrite (= $x75 $x82)) (= $x68 $x82)))) |
|
1812 |
(let ((@x61 (monotonicity (rewrite (= (+ ?x7 ?x7) ?x56)) (= (+ |x$| (+ ?x7 ?x7)) (+ |x$| ?x56))))) |
|
1813 |
(let ((@x67 (monotonicity @x61 (rewrite (= (+ |x$| 3) (+ 3 |x$|))) (= (< (+ |x$| (+ ?x7 ?x7)) (+ |x$| 3)) $x65)))) |
|
1814 |
(let ((@x70 (monotonicity @x67 (= (not (< (+ |x$| (+ ?x7 ?x7)) (+ |x$| 3))) $x68)))) |
|
1815 |
(let ((@x88 (trans @x70 @x86 (= (not (< (+ |x$| (+ ?x7 ?x7)) (+ |x$| 3))) $x82)))) |
|
1816 |
(let ((@x89 (mp (asserted (not (< (+ |x$| (+ ?x7 ?x7)) (+ |x$| 3)))) @x88 $x82))) |
|
1817 |
((_ |th-lemma| arith farkas -1 1 1) @x89 @x323 (|unit-resolution| ((_ |th-lemma| arith) (or false $x306)) (|true-axiom| true) $x306) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1818 |
|
| 56111 | 1819 |
fb75370f1b646783db5a9a683587f9b2b11bd686 32 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1820 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1821 |
((set-logic <null>) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1822 |
(proof |
| 56109 | 1823 |
(let (($x7 (= |x$| 0.0))) |
| 56111 | 1824 |
(let (($x8 (not $x7))) |
1825 |
(let ((@x43 (asserted $x8))) |
|
1826 |
(let (($x99 (<= |x$| 0.0))) |
|
1827 |
(let ((?x45 (* 2.0 |x$|))) |
|
1828 |
(let (($x97 (<= ?x45 0.0))) |
|
1829 |
(let (($x93 (= ?x45 0.0))) |
|
1830 |
(let (($x14 (< 1.0 (ite (< |x$| 0.0) (- |x$|) |x$|)))) |
|
1831 |
(let (($x16 (or $x14 (not $x14)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1832 |
(let ((?x19 (ite $x16 4.0 2.0))) |
| 56111 | 1833 |
(let (($x23 (not (not (= (+ |x$| |x$|) (* ?x19 |x$|)))))) |
1834 |
(let ((@x88 (rewrite (= (not (not (= ?x45 (* 4.0 |x$|)))) (= ?x45 (* 4.0 |x$|)))))) |
|
1835 |
(let (($x82 (= (not (= (+ |x$| |x$|) (* ?x19 |x$|))) (not (= ?x45 (* 4.0 |x$|)))))) |
|
1836 |
(let (($x55 (< 1.0 (ite (< |x$| 0.0) (* (~ 1.0) |x$|) |x$|)))) |
|
1837 |
(let (($x53 (= (ite (< |x$| 0.0) (- |x$|) |x$|) (ite (< |x$| 0.0) (* (~ 1.0) |x$|) |x$|)))) |
|
1838 |
(let ((@x57 (monotonicity (monotonicity (rewrite (= (- |x$|) (* (~ 1.0) |x$|))) $x53) (= $x14 $x55)))) |
|
1839 |
(let ((@x63 (monotonicity @x57 (monotonicity @x57 (= (not $x14) (not $x55))) (= $x16 (or $x55 (not $x55)))))) |
|
1840 |
(let ((@x67 (trans @x63 (rewrite (= (or $x55 (not $x55)) true)) (= $x16 true)))) |
|
1841 |
(let ((@x74 (trans (monotonicity @x67 (= ?x19 (ite true 4.0 2.0))) (rewrite (= (ite true 4.0 2.0) 4.0)) (= ?x19 4.0)))) |
|
1842 |
(let ((@x80 (monotonicity (rewrite (= (+ |x$| |x$|) ?x45)) (monotonicity @x74 (= (* ?x19 |x$|) (* 4.0 |x$|))) (= (= (+ |x$| |x$|) (* ?x19 |x$|)) (= ?x45 (* 4.0 |x$|)))))) |
|
1843 |
(let ((@x86 (monotonicity (monotonicity @x80 $x82) (= $x23 (not (not (= ?x45 (* 4.0 |x$|)))))))) |
|
1844 |
(let ((@x95 (trans (trans @x86 @x88 (= $x23 (= ?x45 (* 4.0 |x$|)))) (rewrite (= (= ?x45 (* 4.0 |x$|)) $x93)) (= $x23 $x93)))) |
|
1845 |
(let ((@x96 (mp (asserted $x23) @x95 $x93))) |
|
1846 |
(let ((@x108 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1) (or $x99 (not $x97))) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x93) $x97)) @x96 $x97) $x99))) |
|
1847 |
(let (($x100 (>= |x$| 0.0))) |
|
1848 |
(let (($x98 (>= ?x45 0.0))) |
|
1849 |
(let ((@x115 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1) (or $x100 (not $x98))) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x93) $x98)) @x96 $x98) $x100))) |
|
1850 |
(|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x7 (not $x99) (not $x100))) @x115 @x108 @x43 false)))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1851 |
|
| 56111 | 1852 |
bba1efa8562001b979c24cfd840c5185f0dad8b2 242 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1853 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1854 |
((set-logic <null>) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1855 |
(proof |
| 56111 | 1856 |
(let ((?x471 (div |m$| 2))) |
1857 |
(let ((?x531 (* (~ 1) ?x471))) |
|
1858 |
(let ((?x426 (mod |m$| 2))) |
|
1859 |
(let ((?x453 (* (~ 1) ?x426))) |
|
1860 |
(let ((?x368 (div |n$| 4))) |
|
1861 |
(let ((?x541 (* (~ 2) ?x368))) |
|
1862 |
(let ((?x316 (mod |n$| 4))) |
|
1863 |
(let ((?x350 (* (~ 1) ?x316))) |
|
1864 |
(let ((?x7 (+ |n$| |m$|))) |
|
1865 |
(let ((?x259 (div ?x7 2))) |
|
1866 |
(let ((?x540 (* (~ 1) ?x259))) |
|
1867 |
(let ((?x201 (mod ?x7 2))) |
|
1868 |
(let ((?x240 (* (~ 1) ?x201))) |
|
| 56109 | 1869 |
(let ((?x13 (|mod$| |n$| 4))) |
| 56111 | 1870 |
(let ((?x9 (|mod$| ?x7 2))) |
1871 |
(let ((?x534 (+ |n$| |m$| ?x9 ?x13 ?x240 ?x540 ?x350 ?x541 ?x453 ?x531))) |
|
1872 |
(let (($x535 (>= ?x534 2))) |
|
1873 |
(let (($x492 (>= ?x426 0))) |
|
1874 |
(let ((@x62 (|true-axiom| true))) |
|
1875 |
(let ((?x484 (* (~ 2) ?x471))) |
|
1876 |
(let ((?x485 (+ |m$| ?x453 ?x484))) |
|
1877 |
(let (($x490 (<= ?x485 0))) |
|
1878 |
(let (($x483 (= ?x485 0))) |
|
1879 |
(let ((@x379 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x483) $x490)) (|unit-resolution| ((_ |th-lemma| arith) (or false $x483)) @x62 $x483) $x490))) |
|
1880 |
(let ((?x351 (+ ?x13 ?x350))) |
|
1881 |
(let (($x366 (<= ?x351 0))) |
|
1882 |
(let (($x352 (= ?x351 0))) |
|
1883 |
(let (($x189 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x37 (mod ?v0 ?v1))) |
|
1884 |
(let ((?x71 (* (~ 1) ?v1))) |
|
1885 |
(let ((?x68 (* (~ 1) ?v0))) |
|
1886 |
(let ((?x114 (mod ?x68 ?x71))) |
|
1887 |
(let ((?x120 (* (~ 1) ?x114))) |
|
1888 |
(let (($x89 (<= ?v1 0))) |
|
1889 |
(let ((?x140 (ite $x89 ?x120 ?x37))) |
|
| 56109 | 1890 |
(let (($x26 (= ?v1 0))) |
| 56111 | 1891 |
(let ((?x145 (ite $x26 ?v0 ?x140))) |
1892 |
(let ((?x36 (|mod$| ?v0 ?v1))) |
|
1893 |
(= ?x36 ?x145))))))))))) :pattern ( (|mod$| ?v0 ?v1) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1894 |
)) |
| 56111 | 1895 |
(let (($x151 (forall ((?v0 Int) (?v1 Int) )(let ((?x37 (mod ?v0 ?v1))) |
1896 |
(let ((?x71 (* (~ 1) ?v1))) |
|
1897 |
(let ((?x68 (* (~ 1) ?v0))) |
|
1898 |
(let ((?x114 (mod ?x68 ?x71))) |
|
1899 |
(let ((?x120 (* (~ 1) ?x114))) |
|
1900 |
(let (($x89 (<= ?v1 0))) |
|
1901 |
(let ((?x140 (ite $x89 ?x120 ?x37))) |
|
| 56109 | 1902 |
(let (($x26 (= ?v1 0))) |
| 56111 | 1903 |
(let ((?x145 (ite $x26 ?v0 ?x140))) |
| 56109 | 1904 |
(let ((?x36 (|mod$| ?v0 ?v1))) |
| 56111 | 1905 |
(= ?x36 ?x145)))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1906 |
)) |
| 56109 | 1907 |
(let ((?x37 (mod ?1 ?0))) |
| 56111 | 1908 |
(let ((?x71 (* (~ 1) ?0))) |
1909 |
(let ((?x68 (* (~ 1) ?1))) |
|
1910 |
(let ((?x114 (mod ?x68 ?x71))) |
|
1911 |
(let ((?x120 (* (~ 1) ?x114))) |
|
1912 |
(let (($x89 (<= ?0 0))) |
|
1913 |
(let ((?x140 (ite $x89 ?x120 ?x37))) |
|
1914 |
(let (($x26 (= ?0 0))) |
|
1915 |
(let ((?x145 (ite $x26 ?1 ?x140))) |
|
| 56109 | 1916 |
(let ((?x36 (|mod$| ?1 ?0))) |
| 56111 | 1917 |
(let (($x148 (= ?x36 ?x145))) |
1918 |
(let (($x43 (forall ((?v0 Int) (?v1 Int) )(let (($x26 (= ?v1 0))) |
|
1919 |
(let ((?x41 (ite $x26 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1))))))) |
|
1920 |
(let ((?x36 (|mod$| ?v0 ?v1))) |
|
1921 |
(= ?x36 ?x41))))) |
|
1922 |
)) |
|
1923 |
(let (($x134 (forall ((?v0 Int) (?v1 Int) )(let ((?x71 (* (~ 1) ?v1))) |
|
1924 |
(let ((?x68 (* (~ 1) ?v0))) |
|
1925 |
(let ((?x114 (mod ?x68 ?x71))) |
|
1926 |
(let ((?x120 (* (~ 1) ?x114))) |
|
| 56109 | 1927 |
(let ((?x37 (mod ?v0 ?v1))) |
1928 |
(let (($x27 (< 0 ?v1))) |
|
| 56111 | 1929 |
(let ((?x125 (ite $x27 ?x37 ?x120))) |
| 56109 | 1930 |
(let (($x26 (= ?v1 0))) |
| 56111 | 1931 |
(let ((?x128 (ite $x26 ?v0 ?x125))) |
| 56109 | 1932 |
(let ((?x36 (|mod$| ?v0 ?v1))) |
| 56111 | 1933 |
(= ?x36 ?x128)))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1934 |
)) |
| 56111 | 1935 |
(let ((@x139 (monotonicity (rewrite (= (< 0 ?0) (not $x89))) (= (ite (< 0 ?0) ?x37 ?x120) (ite (not $x89) ?x37 ?x120))))) |
1936 |
(let ((@x144 (trans @x139 (rewrite (= (ite (not $x89) ?x37 ?x120) ?x140)) (= (ite (< 0 ?0) ?x37 ?x120) ?x140)))) |
|
1937 |
(let ((@x147 (monotonicity @x144 (= (ite $x26 ?1 (ite (< 0 ?0) ?x37 ?x120)) ?x145)))) |
|
1938 |
(let ((@x150 (monotonicity @x147 (= (= ?x36 (ite $x26 ?1 (ite (< 0 ?0) ?x37 ?x120))) $x148)))) |
|
| 56109 | 1939 |
(let (($x27 (< 0 ?0))) |
| 56111 | 1940 |
(let ((?x125 (ite $x27 ?x37 ?x120))) |
1941 |
(let ((?x128 (ite $x26 ?1 ?x125))) |
|
1942 |
(let (($x131 (= ?x36 ?x128))) |
|
1943 |
(let (($x132 (= (= ?x36 (ite $x26 ?1 (ite $x27 ?x37 (- (mod (- ?1) (- ?0)))))) $x131))) |
|
1944 |
(let ((@x116 (monotonicity (rewrite (= (- ?1) ?x68)) (rewrite (= (- ?0) ?x71)) (= (mod (- ?1) (- ?0)) ?x114)))) |
|
1945 |
(let ((@x124 (trans (monotonicity @x116 (= (- (mod (- ?1) (- ?0))) (- ?x114))) (rewrite (= (- ?x114) ?x120)) (= (- (mod (- ?1) (- ?0))) ?x120)))) |
|
1946 |
(let ((@x127 (monotonicity @x124 (= (ite $x27 ?x37 (- (mod (- ?1) (- ?0)))) ?x125)))) |
|
1947 |
(let ((@x130 (monotonicity @x127 (= (ite $x26 ?1 (ite $x27 ?x37 (- (mod (- ?1) (- ?0))))) ?x128)))) |
|
1948 |
(let ((@x155 (trans (|quant-intro| (monotonicity @x130 $x132) (= $x43 $x134)) (|quant-intro| @x150 (= $x134 $x151)) (= $x43 $x151)))) |
|
1949 |
(let ((@x166 (|mp~| (mp (asserted $x43) @x155 $x151) (|nnf-pos| (refl (|~| $x148 $x148)) (|~| $x151 $x151)) $x151))) |
|
1950 |
(let ((@x194 (mp @x166 (|quant-intro| (refl (= $x148 $x148)) (= $x151 $x189)) $x189))) |
|
1951 |
(let (($x247 (not $x189))) |
|
1952 |
(let (($x357 (or $x247 $x352))) |
|
1953 |
(let ((?x317 (ite (<= 4 0) (* (~ 1) (mod (* (~ 1) |n$|) (* (~ 1) 4))) ?x316))) |
|
1954 |
(let ((?x318 (ite (= 4 0) |n$| ?x317))) |
|
1955 |
(let (($x319 (= ?x13 ?x318))) |
|
1956 |
(let ((@x337 (rewrite (= (ite false (* (~ 1) (mod (* (~ 1) |n$|) (~ 4))) ?x316) ?x316)))) |
|
1957 |
(let (($x331 (= (* (~ 1) (mod (* (~ 1) |n$|) (* (~ 1) 4))) (* (~ 1) (mod (* (~ 1) |n$|) (~ 4)))))) |
|
1958 |
(let ((@x329 (monotonicity (rewrite (= (* (~ 1) 4) (~ 4))) (= (mod (* (~ 1) |n$|) (* (~ 1) 4)) (mod (* (~ 1) |n$|) (~ 4)))))) |
|
1959 |
(let ((@x335 (monotonicity (rewrite (= (<= 4 0) false)) (monotonicity @x329 $x331) (= ?x317 (ite false (* (~ 1) (mod (* (~ 1) |n$|) (~ 4))) ?x316))))) |
|
1960 |
(let ((@x342 (monotonicity (rewrite (= (= 4 0) false)) (trans @x335 @x337 (= ?x317 ?x316)) (= ?x318 (ite false |n$| ?x316))))) |
|
1961 |
(let ((@x349 (monotonicity (trans @x342 (rewrite (= (ite false |n$| ?x316) ?x316)) (= ?x318 ?x316)) (= $x319 (= ?x13 ?x316))))) |
|
1962 |
(let ((@x361 (monotonicity (trans @x349 (rewrite (= (= ?x13 ?x316) $x352)) (= $x319 $x352)) (= (or $x247 $x319) $x357)))) |
|
1963 |
(let ((@x365 (mp ((_ |quant-inst| |n$| 4) (or $x247 $x319)) (trans @x361 (rewrite (= $x357 $x357)) (= (or $x247 $x319) $x357)) $x357))) |
|
1964 |
(let ((@x570 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x352) $x366)) (|unit-resolution| @x365 @x194 $x352) $x366))) |
|
1965 |
(let ((?x275 (* (~ 2) ?x259))) |
|
1966 |
(let ((?x276 (+ |n$| |m$| ?x240 ?x275))) |
|
1967 |
(let (($x281 (<= ?x276 0))) |
|
1968 |
(let (($x274 (= ?x276 0))) |
|
1969 |
(let ((@x560 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x274) $x281)) (|unit-resolution| ((_ |th-lemma| arith) (or false $x274)) @x62 $x274) $x281))) |
|
1970 |
(let ((?x241 (+ ?x9 ?x240))) |
|
1971 |
(let (($x257 (<= ?x241 0))) |
|
1972 |
(let (($x242 (= ?x241 0))) |
|
1973 |
(let (($x248 (or $x247 $x242))) |
|
1974 |
(let (($x196 (<= 2 0))) |
|
1975 |
(let ((?x202 (ite $x196 (* (~ 1) (mod (* (~ 1) ?x7) (* (~ 1) 2))) ?x201))) |
|
1976 |
(let (($x195 (= 2 0))) |
|
1977 |
(let ((?x203 (ite $x195 ?x7 ?x202))) |
|
1978 |
(let (($x204 (= ?x9 ?x203))) |
|
1979 |
(let ((?x223 (ite false (* (~ 1) (mod (+ (* (~ 1) |n$|) (* (~ 1) |m$|)) (~ 2))) ?x201))) |
|
1980 |
(let (($x221 (= (* (~ 1) (mod (* (~ 1) ?x7) (* (~ 1) 2))) (* (~ 1) (mod (+ (* (~ 1) |n$|) (* (~ 1) |m$|)) (~ 2)))))) |
|
1981 |
(let (($x218 (= (mod (* (~ 1) ?x7) (* (~ 1) 2)) (mod (+ (* (~ 1) |n$|) (* (~ 1) |m$|)) (~ 2))))) |
|
1982 |
(let ((@x216 (rewrite (= (* (~ 1) 2) (~ 2))))) |
|
1983 |
(let ((@x219 (monotonicity (rewrite (= (* (~ 1) ?x7) (+ (* (~ 1) |n$|) (* (~ 1) |m$|)))) @x216 $x218))) |
|
1984 |
(let ((@x208 (rewrite (= $x196 false)))) |
|
1985 |
(let ((@x229 (trans (monotonicity @x208 (monotonicity @x219 $x221) (= ?x202 ?x223)) (rewrite (= ?x223 ?x201)) (= ?x202 ?x201)))) |
|
1986 |
(let ((@x206 (rewrite (= $x195 false)))) |
|
1987 |
(let ((@x236 (trans (monotonicity @x206 @x229 (= ?x203 (ite false ?x7 ?x201))) (rewrite (= (ite false ?x7 ?x201) ?x201)) (= ?x203 ?x201)))) |
|
1988 |
(let ((@x246 (trans (monotonicity @x236 (= $x204 (= ?x9 ?x201))) (rewrite (= (= ?x9 ?x201) $x242)) (= $x204 $x242)))) |
|
1989 |
(let ((@x255 (trans (monotonicity @x246 (= (or $x247 $x204) $x248)) (rewrite (= $x248 $x248)) (= (or $x247 $x204) $x248)))) |
|
1990 |
(let ((@x256 (mp ((_ |quant-inst| (+ |n$| |m$|) 2) (or $x247 $x204)) @x255 $x248))) |
|
1991 |
(let ((@x565 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x242) $x257)) (|unit-resolution| @x256 @x194 $x242) $x257))) |
|
1992 |
(let ((?x384 (* (~ 4) ?x368))) |
|
1993 |
(let ((?x385 (+ |n$| ?x350 ?x384))) |
|
1994 |
(let (($x390 (<= ?x385 0))) |
|
1995 |
(let (($x383 (= ?x385 0))) |
|
1996 |
(let ((@x577 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x383) $x390)) (|unit-resolution| ((_ |th-lemma| arith) (or false $x383)) @x62 $x383) $x390))) |
|
1997 |
(let (($x422 (<= ?x13 3))) |
|
1998 |
(let (($x15 (= ?x13 3))) |
|
1999 |
(let ((@x64 (asserted $x15))) |
|
2000 |
(let ((@x581 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x15) $x422)) @x64 $x422))) |
|
2001 |
(let (($x420 (<= ?x9 0))) |
|
2002 |
(let (($x11 (= ?x9 0))) |
|
2003 |
(let ((@x63 (asserted $x11))) |
|
2004 |
(let ((@x553 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x11) $x420)) @x63 $x420))) |
|
2005 |
(let ((@x494 ((_ |th-lemma| arith farkas -1 -1 2 -1 -1 -1 -1 -1 1) @x553 @x581 (hypothesis $x535) @x577 @x565 @x560 @x570 @x379 (|unit-resolution| ((_ |th-lemma| arith) (or false $x492)) @x62 $x492) false))) |
|
2006 |
(let (($x304 (>= ?x485 0))) |
|
2007 |
(let ((@x648 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x483) $x304)) (|unit-resolution| ((_ |th-lemma| arith) (or false $x483)) @x62 $x483) $x304))) |
|
2008 |
(let (($x367 (>= ?x351 0))) |
|
2009 |
(let ((@x473 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x352) $x367)) (|unit-resolution| @x365 @x194 $x352) $x367))) |
|
2010 |
(let (($x421 (>= ?x9 0))) |
|
2011 |
(let (($x282 (>= ?x276 0))) |
|
2012 |
(let ((@x371 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x274) $x282)) (|unit-resolution| ((_ |th-lemma| arith) (or false $x274)) @x62 $x274) $x282))) |
|
2013 |
(let (($x258 (>= ?x241 0))) |
|
2014 |
(let ((@x377 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x242) $x258)) (|unit-resolution| @x256 @x194 $x242) $x258))) |
|
2015 |
(let (($x391 (>= ?x385 0))) |
|
2016 |
(let ((@x474 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x383) $x391)) (|unit-resolution| ((_ |th-lemma| arith) (or false $x383)) @x62 $x383) $x391))) |
|
2017 |
(let (($x423 (>= ?x13 3))) |
|
2018 |
(let ((@x261 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x15) $x423)) @x64 $x423))) |
|
| 56109 | 2019 |
(let ((?x19 (|mod$| |m$| 2))) |
| 56111 | 2020 |
(let ((?x454 (+ ?x19 ?x453))) |
2021 |
(let (($x263 (>= ?x454 0))) |
|
2022 |
(let (($x386 (= ?x454 0))) |
|
2023 |
(let (($x486 (or $x247 $x386))) |
|
2024 |
(let ((?x198 (* (~ 1) 2))) |
|
2025 |
(let ((?x210 (* (~ 1) |m$|))) |
|
2026 |
(let ((?x424 (mod ?x210 ?x198))) |
|
2027 |
(let ((?x425 (* (~ 1) ?x424))) |
|
2028 |
(let ((?x427 (ite $x196 ?x425 ?x426))) |
|
2029 |
(let ((?x428 (ite $x195 |m$| ?x427))) |
|
2030 |
(let (($x429 (= ?x19 ?x428))) |
|
2031 |
(let ((@x594 (monotonicity (monotonicity @x216 (= ?x424 (mod ?x210 (~ 2)))) (= ?x425 (* (~ 1) (mod ?x210 (~ 2))))))) |
|
2032 |
(let ((@x596 (monotonicity @x208 @x594 (= ?x427 (ite false (* (~ 1) (mod ?x210 (~ 2))) ?x426))))) |
|
2033 |
(let ((@x603 (trans @x596 (rewrite (= (ite false (* (~ 1) (mod ?x210 (~ 2))) ?x426) ?x426)) (= ?x427 ?x426)))) |
|
2034 |
(let ((@x414 (trans (monotonicity @x206 @x603 (= ?x428 (ite false |m$| ?x426))) (rewrite (= (ite false |m$| ?x426) ?x426)) (= ?x428 ?x426)))) |
|
2035 |
(let ((@x482 (trans (monotonicity @x414 (= $x429 (= ?x19 ?x426))) (rewrite (= (= ?x19 ?x426) $x386)) (= $x429 $x386)))) |
|
2036 |
(let ((@x511 (trans (monotonicity @x482 (= (or $x247 $x429) $x486)) (rewrite (= $x486 $x486)) (= (or $x247 $x429) $x486)))) |
|
2037 |
(let ((@x512 (mp ((_ |quant-inst| |m$| 2) (or $x247 $x429)) @x511 $x486))) |
|
2038 |
(let ((@x653 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x386) $x263)) (|unit-resolution| @x512 @x194 $x386) $x263))) |
|
2039 |
(let (($x271 (>= ?x19 1))) |
|
2040 |
(let (($x666 (not $x271))) |
|
2041 |
(let (($x509 (<= ?x19 1))) |
|
2042 |
(let (($x498 (>= ?x426 2))) |
|
2043 |
(let (($x635 (not $x498))) |
|
2044 |
(let (($x469 (<= ?x454 0))) |
|
2045 |
(let ((@x659 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x386) $x469)) (|unit-resolution| @x512 @x194 $x386) $x469))) |
|
2046 |
(let ((@x663 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1) (or $x509 $x498 (not $x469))) @x659 (|unit-resolution| ((_ |th-lemma| arith) (or false $x635)) @x62 $x635) $x509))) |
|
| 56109 | 2047 |
(let (($x20 (= ?x19 1))) |
| 56111 | 2048 |
(let (($x168 (not $x20))) |
2049 |
(let ((?x16 (|mod$| |n$| 2))) |
|
2050 |
(let (($x18 (= ?x16 1))) |
|
2051 |
(let (($x280 (>= ?x16 1))) |
|
2052 |
(let (($x606 (not $x280))) |
|
2053 |
(let (($x279 (<= ?x16 1))) |
|
2054 |
(let ((?x430 (mod |n$| 2))) |
|
2055 |
(let ((?x437 (* (~ 1) ?x430))) |
|
2056 |
(let ((?x438 (+ ?x16 ?x437))) |
|
2057 |
(let (($x455 (<= ?x438 0))) |
|
2058 |
(let (($x439 (= ?x438 0))) |
|
2059 |
(let (($x444 (or $x247 $x439))) |
|
2060 |
(let ((?x209 (* (~ 1) |n$|))) |
|
2061 |
(let ((?x461 (mod ?x209 ?x198))) |
|
2062 |
(let ((?x462 (* (~ 1) ?x461))) |
|
2063 |
(let ((?x431 (ite $x196 ?x462 ?x430))) |
|
2064 |
(let ((?x432 (ite $x195 |n$| ?x431))) |
|
2065 |
(let (($x433 (= ?x16 ?x432))) |
|
2066 |
(let ((@x522 (monotonicity (monotonicity @x216 (= ?x461 (mod ?x209 (~ 2)))) (= ?x462 (* (~ 1) (mod ?x209 (~ 2))))))) |
|
2067 |
(let ((@x521 (monotonicity @x208 @x522 (= ?x431 (ite false (* (~ 1) (mod ?x209 (~ 2))) ?x430))))) |
|
2068 |
(let ((@x288 (trans @x521 (rewrite (= (ite false (* (~ 1) (mod ?x209 (~ 2))) ?x430) ?x430)) (= ?x431 ?x430)))) |
|
2069 |
(let ((@x538 (trans (monotonicity @x206 @x288 (= ?x432 (ite false |n$| ?x430))) (rewrite (= (ite false |n$| ?x430) ?x430)) (= ?x432 ?x430)))) |
|
2070 |
(let ((@x443 (trans (monotonicity @x538 (= $x433 (= ?x16 ?x430))) (rewrite (= (= ?x16 ?x430) $x439)) (= $x433 $x439)))) |
|
2071 |
(let ((@x451 (trans (monotonicity @x443 (= (or $x247 $x433) $x444)) (rewrite (= $x444 $x444)) (= (or $x247 $x433) $x444)))) |
|
2072 |
(let ((@x460 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x439) $x455)) (|unit-resolution| (mp ((_ |quant-inst| |n$| 2) (or $x247 $x433)) @x451 $x444) @x194 $x439) $x455))) |
|
2073 |
(let ((@x463 (|unit-resolution| ((_ |th-lemma| arith) (or false (not (>= ?x430 2)))) @x62 (not (>= ?x430 2))))) |
|
2074 |
(let ((@x295 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1) (or $x279 (>= ?x430 2) (not $x455))) @x463 @x460 $x279))) |
|
2075 |
(let ((@x292 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x18 (not $x279) $x606)) (hypothesis (not $x18)) (or (not $x279) $x606)))) |
|
2076 |
(let (($x623 (or (not (>= (+ |n$| ?x13 ?x350 ?x541 (* (~ 1) (div |n$| 2))) 2)) $x280))) |
|
2077 |
(let ((?x491 (+ |n$| ?x437 (* (~ 2) (div |n$| 2))))) |
|
2078 |
(let (($x397 (<= ?x491 0))) |
|
2079 |
(let (($x508 (= ?x491 0))) |
|
2080 |
(let ((@x614 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x508) $x397)) (|unit-resolution| ((_ |th-lemma| arith) (or false $x508)) @x62 $x508) $x397))) |
|
2081 |
(let (($x601 (>= (+ |n$| ?x13 ?x350 ?x541 (* (~ 1) (div |n$| 2))) 2))) |
|
2082 |
(let ((@x620 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x439) (>= ?x438 0))) (|unit-resolution| (mp ((_ |quant-inst| |n$| 2) (or $x247 $x433)) @x451 $x444) @x194 $x439) (>= ?x438 0)))) |
|
2083 |
(let ((@x621 ((_ |th-lemma| arith farkas -1 -2 1 1 1 1 1) @x620 (hypothesis $x601) @x614 @x570 @x577 @x581 (hypothesis $x606) false))) |
|
2084 |
(let ((@x403 (|unit-resolution| (lemma @x621 $x623) (|unit-resolution| @x292 @x295 $x606) (not $x601)))) |
|
2085 |
(let ((@x406 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x508) (>= ?x491 0))) (|unit-resolution| ((_ |th-lemma| arith) (or false $x508)) @x62 $x508) (>= ?x491 0)))) |
|
2086 |
(let ((@x411 (|unit-resolution| ((_ |th-lemma| arith) (or false (>= ?x430 0))) @x62 (>= ?x430 0)))) |
|
2087 |
(let (($x169 (or (not $x18) $x168))) |
|
2088 |
(let ((@x175 (monotonicity (rewrite (= (and $x18 $x20) (not $x169))) (= (not (and $x18 $x20)) (not (not $x169)))))) |
|
2089 |
(let ((@x179 (trans @x175 (rewrite (= (not (not $x169)) $x169)) (= (not (and $x18 $x20)) $x169)))) |
|
2090 |
(let ((@x180 (mp (asserted (not (and $x18 $x20))) @x179 $x169))) |
|
2091 |
(let ((@x664 (|unit-resolution| @x180 (lemma ((_ |th-lemma| arith farkas -1/2 -1/2 -1/2 -1/2 -1/2 1) @x411 @x406 @x473 @x474 @x261 @x403 false) $x18) $x168))) |
|
2092 |
(let ((@x670 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x20 (not $x509) $x666)) @x664 (or (not $x509) $x666)))) |
|
2093 |
((_ |th-lemma| arith farkas 1/2 -1/2 -1/2 -1/2 -1/2 -1/2 -1/2 -1/2 -1/2 1) (|unit-resolution| @x670 @x663 $x666) @x653 @x261 @x474 @x377 @x371 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x11) $x421)) @x63 $x421) @x473 @x648 (lemma @x494 (not $x535)) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2094 |
|
| 56111 | 2095 |
5e6ffeb79676694a9ab7732936a1e448ef9134cd 12 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2096 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2097 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2098 |
(proof |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2099 |
(let (($x6 (exists ((?v0 Int) )false) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2100 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2101 |
(let (($x5 (not $x6))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2102 |
(let (($x7 (not $x5))) |
| 56111 | 2103 |
(let ((@x33 (monotonicity (|elim-unused| (= $x6 false)) (= $x5 (not false))))) |
2104 |
(let ((@x40 (monotonicity (trans @x33 (rewrite (= (not false) true)) (= $x5 true)) (= $x7 (not true))))) |
|
2105 |
(let ((@x44 (trans @x40 (rewrite (= (not true) false)) (= $x7 false)))) |
|
2106 |
(mp (asserted $x7) @x44 false))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2107 |
|
| 56111 | 2108 |
d02a9dcd83dfb0d3e50a887c4f5274a79c10c85e 12 0 |
| 56109 | 2109 |
unsat |
2110 |
((set-logic AUFLIRA) |
|
2111 |
(proof |
|
2112 |
(let (($x6 (exists ((?v0 Real) )false) |
|
2113 |
)) |
|
2114 |
(let (($x5 (not $x6))) |
|
2115 |
(let (($x7 (not $x5))) |
|
| 56111 | 2116 |
(let ((@x33 (monotonicity (|elim-unused| (= $x6 false)) (= $x5 (not false))))) |
2117 |
(let ((@x40 (monotonicity (trans @x33 (rewrite (= (not false) true)) (= $x5 true)) (= $x7 (not true))))) |
|
2118 |
(let ((@x44 (trans @x40 (rewrite (= (not true) false)) (= $x7 false)))) |
|
2119 |
(mp (asserted $x7) @x44 false))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2120 |
|
| 56111 | 2121 |
1a820d07cf476448545d144873b309b9cfc3a238 2 0 |
2122 |
unknown |
|
2123 |
(error "line 6 column 10: proof is not available") |
|
2124 |
23ed6364c527ef515dd659de8b496cfd59df4ec7 2 0 |
|
2125 |
unknown |
|
2126 |
(error "line 6 column 10: proof is not available") |
|
2127 |
9722ff2e938783a69202c957c858fb219ec0cdb0 2 0 |
|
2128 |
unknown |
|
2129 |
(error "line 6 column 10: proof is not available") |
|
2130 |
cb87115705dc568881932b35aa82751f3f97049c 22 0 |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2131 |
unsat |
| 56109 | 2132 |
((set-logic AUFLIA) |
2133 |
(declare-fun ?v1!0 () Int) |
|
2134 |
(declare-fun ?v0!1 () Int) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2135 |
(proof |
| 56111 | 2136 |
(let (($x51 (= ?v1!0 1))) |
2137 |
(let (($x57 (not (or (not (and (= ?v0!1 0) $x51)) (not (= ?v0!1 ?v1!0)))))) |
|
2138 |
(let (($x41 (forall ((?v0 Int) (?v1 Int) )(or (not (and (= ?v0 0) (= ?v1 1))) (not (= ?v0 ?v1)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2139 |
)) |
| 56111 | 2140 |
(let (($x44 (not $x41))) |
| 56109 | 2141 |
(let (($x15 (forall ((?v0 Int) (?v1 Int) )(=> (and (= ?v0 0) (= ?v1 1)) (not (= ?v0 ?v1)))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2142 |
)) |
| 56109 | 2143 |
(let (($x16 (not $x15))) |
| 56111 | 2144 |
(let (($x39 (= (=> (and (= ?1 0) (= ?0 1)) (not (= ?1 ?0))) (or (not (and (= ?1 0) (= ?0 1))) (not (= ?1 ?0)))))) |
2145 |
(let ((@x46 (monotonicity (|quant-intro| (rewrite $x39) (= $x15 $x41)) (= $x16 $x44)))) |
|
2146 |
(let ((@x63 (|not-or-elim| (|mp~| (mp (asserted $x16) @x46 $x44) (sk (|~| $x44 $x57)) $x57) (and (= ?v0!1 0) $x51)))) |
|
2147 |
(let ((@x65 (|and-elim| @x63 $x51))) |
|
2148 |
(let (($x54 (= ?v0!1 ?v1!0))) |
|
2149 |
(let ((@x66 (|not-or-elim| (|mp~| (mp (asserted $x16) @x46 $x44) (sk (|~| $x44 $x57)) $x57) $x54))) |
|
2150 |
(let ((@x68 (trans (symm (|and-elim| @x63 (= ?v0!1 0)) (= 0 ?v0!1)) @x66 (= 0 ?v1!0)))) |
|
2151 |
(mp (trans @x68 @x65 (= 0 1)) (rewrite (= (= 0 1) false)) false)))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2152 |
|
| 56111 | 2153 |
d2d0a7794c4de3708d5541374fd9e0075ad5fa36 55 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2154 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2155 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2156 |
(proof |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2157 |
(let (($x14 (exists ((?v0 Int) )(forall ((?v1 Int) )(let (($x10 (<= 0 ?v1))) |
| 56111 | 2158 |
(let (($x9 (< ?v1 0))) |
2159 |
(let (($x11 (or $x9 $x10))) |
|
2160 |
(let (($x7 (< ?v0 ?v1))) |
|
2161 |
(=> $x7 $x11)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2162 |
) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2163 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2164 |
(let (($x15 (not $x14))) |
| 56111 | 2165 |
(let (($x43 (exists ((?v0 Int) )(forall ((?v1 Int) )(let (($x10 (<= 0 ?v1))) |
2166 |
(let (($x9 (< ?v1 0))) |
|
2167 |
(let (($x11 (or $x9 $x10))) |
|
2168 |
(let (($x7 (< ?v0 ?v1))) |
|
2169 |
(let (($x36 (not $x7))) |
|
2170 |
(or $x36 $x11))))))) |
|
2171 |
) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2172 |
)) |
| 56111 | 2173 |
(let (($x46 (not $x43))) |
2174 |
(let (($x86 (exists ((?v0 Int) )true) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2175 |
)) |
| 56111 | 2176 |
(let (($x40 (forall ((?v1 Int) )(let (($x10 (<= 0 ?v1))) |
2177 |
(let (($x9 (< ?v1 0))) |
|
2178 |
(let (($x11 (or $x9 $x10))) |
|
2179 |
(let (($x7 (< ?0 ?v1))) |
|
2180 |
(let (($x36 (not $x7))) |
|
2181 |
(or $x36 $x11))))))) |
|
2182 |
)) |
|
2183 |
(let (($x79 (forall ((?v1 Int) )true) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2184 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2185 |
(let (($x10 (<= 0 ?0))) |
| 56111 | 2186 |
(let (($x9 (< ?0 0))) |
2187 |
(let (($x11 (or $x9 $x10))) |
|
2188 |
(let (($x7 (< ?1 ?0))) |
|
2189 |
(let (($x36 (not $x7))) |
|
2190 |
(let (($x37 (or $x36 $x11))) |
|
2191 |
(let (($x58 (<= (+ ?0 (* (~ 1) ?1)) 0))) |
|
2192 |
(let ((@x76 (rewrite (= (or $x58 (or (not (>= ?0 0)) (>= ?0 0))) true)))) |
|
2193 |
(let ((@x71 (monotonicity (rewrite (= $x9 (not (>= ?0 0)))) (rewrite (= $x10 (>= ?0 0))) (= $x11 (or (not (>= ?0 0)) (>= ?0 0)))))) |
|
2194 |
(let ((@x64 (monotonicity (rewrite (= $x7 (not $x58))) (= $x36 (not (not $x58)))))) |
|
2195 |
(let ((@x74 (monotonicity (trans @x64 (rewrite (= (not (not $x58)) $x58)) (= $x36 $x58)) @x71 (= $x37 (or $x58 (or (not (>= ?0 0)) (>= ?0 0))))))) |
|
2196 |
(let ((@x85 (trans (|quant-intro| (trans @x74 @x76 (= $x37 true)) (= $x40 $x79)) (|elim-unused| (= $x79 true)) (= $x40 true)))) |
|
2197 |
(let ((@x92 (trans (|quant-intro| @x85 (= $x43 $x86)) (|elim-unused| (= $x86 true)) (= $x43 true)))) |
|
2198 |
(let ((@x99 (trans (monotonicity @x92 (= $x46 (not true))) (rewrite (= (not true) false)) (= $x46 false)))) |
|
2199 |
(let (($x13 (forall ((?v1 Int) )(let (($x10 (<= 0 ?v1))) |
|
2200 |
(let (($x9 (< ?v1 0))) |
|
2201 |
(let (($x11 (or $x9 $x10))) |
|
2202 |
(let (($x7 (< ?0 ?v1))) |
|
2203 |
(=> $x7 $x11)))))) |
|
2204 |
)) |
|
2205 |
(let ((@x45 (|quant-intro| (|quant-intro| (rewrite (= (=> $x7 $x11) $x37)) (= $x13 $x40)) (= $x14 $x43)))) |
|
2206 |
(let ((@x48 (monotonicity @x45 (= $x15 $x46)))) |
|
2207 |
(mp (asserted $x15) (trans @x48 @x99 (= $x15 false)) false))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2208 |
|
| 56111 | 2209 |
75e4df9c205f7c15d7e530b5e1e97635aed16d82 42 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2210 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2211 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2212 |
(proof |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2213 |
(let (($x15 (forall ((?v0 Int) (?v1 Int) )(let ((?x12 (* 2 ?v1))) |
| 56111 | 2214 |
(let ((?x9 (* 2 ?v0))) |
2215 |
(let ((?x11 (+ ?x9 1))) |
|
2216 |
(let (($x13 (< ?x11 ?x12))) |
|
2217 |
(let (($x7 (< ?v0 ?v1))) |
|
2218 |
(=> $x7 $x13))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2219 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2220 |
(let (($x16 (not $x15))) |
| 56111 | 2221 |
(let (($x53 (forall ((?v0 Int) (?v1 Int) )(let ((?x12 (* 2 ?v1))) |
2222 |
(let ((?x9 (* 2 ?v0))) |
|
2223 |
(let ((?x38 (+ 1 ?x9))) |
|
2224 |
(let (($x41 (< ?x38 ?x12))) |
|
2225 |
(let (($x7 (< ?v0 ?v1))) |
|
2226 |
(let (($x47 (not $x7))) |
|
2227 |
(or $x47 $x41)))))))) |
|
2228 |
)) |
|
2229 |
(let (($x56 (not $x53))) |
|
2230 |
(let (($x82 (forall ((?v0 Int) (?v1 Int) )true) |
|
2231 |
)) |
|
2232 |
(let ((?x12 (* 2 ?0))) |
|
2233 |
(let ((?x9 (* 2 ?1))) |
|
2234 |
(let ((?x38 (+ 1 ?x9))) |
|
2235 |
(let (($x41 (< ?x38 ?x12))) |
|
2236 |
(let (($x7 (< ?1 ?0))) |
|
2237 |
(let (($x47 (not $x7))) |
|
2238 |
(let (($x48 (or $x47 $x41))) |
|
2239 |
(let (($x61 (>= (+ ?1 (* (~ 1) ?0)) 0))) |
|
2240 |
(let (($x60 (not $x61))) |
|
2241 |
(let ((@x72 (trans (monotonicity (rewrite (= $x7 $x60)) (= $x47 (not $x60))) (rewrite (= (not $x60) $x61)) (= $x47 $x61)))) |
|
2242 |
(let ((@x77 (monotonicity @x72 (rewrite (= $x41 $x60)) (= $x48 (or $x61 $x60))))) |
|
2243 |
(let ((@x84 (|quant-intro| (trans @x77 (rewrite (= (or $x61 $x60) true)) (= $x48 true)) (= $x53 $x82)))) |
|
2244 |
(let ((@x91 (monotonicity (trans @x84 (|elim-unused| (= $x82 true)) (= $x53 true)) (= $x56 (not true))))) |
|
2245 |
(let ((@x95 (trans @x91 (rewrite (= (not true) false)) (= $x56 false)))) |
|
2246 |
(let ((@x43 (monotonicity (rewrite (= (+ ?x9 1) ?x38)) (= (< (+ ?x9 1) ?x12) $x41)))) |
|
2247 |
(let ((@x46 (monotonicity @x43 (= (=> $x7 (< (+ ?x9 1) ?x12)) (=> $x7 $x41))))) |
|
2248 |
(let ((@x52 (trans @x46 (rewrite (= (=> $x7 $x41) $x48)) (= (=> $x7 (< (+ ?x9 1) ?x12)) $x48)))) |
|
2249 |
(let ((@x58 (monotonicity (|quant-intro| @x52 (= $x15 $x53)) (= $x16 $x56)))) |
|
2250 |
(mp (asserted $x16) (trans @x58 @x95 (= $x16 false)) false)))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2251 |
|
| 56111 | 2252 |
591a3beb5d84c4e2d6724bf947c2fd4fa44c6bbc 32 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2253 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2254 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2255 |
(proof |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2256 |
(let (($x14 (forall ((?v0 Int) (?v1 Int) )(let ((?x11 (* 2 ?v1))) |
| 56111 | 2257 |
(let ((?x8 (* 2 ?v0))) |
2258 |
(let ((?x10 (+ ?x8 1))) |
|
2259 |
(let (($x12 (= ?x10 ?x11))) |
|
2260 |
(not $x12)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2261 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2262 |
(let (($x15 (not $x14))) |
| 56111 | 2263 |
(let (($x46 (forall ((?v0 Int) (?v1 Int) )(let ((?x11 (* 2 ?v1))) |
2264 |
(let ((?x8 (* 2 ?v0))) |
|
2265 |
(let ((?x37 (+ 1 ?x8))) |
|
2266 |
(let (($x40 (= ?x37 ?x11))) |
|
2267 |
(not $x40)))))) |
|
2268 |
)) |
|
2269 |
(let (($x49 (not $x46))) |
|
2270 |
(let (($x61 (forall ((?v0 Int) (?v1 Int) )true) |
|
2271 |
)) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2272 |
(let ((?x11 (* 2 ?0))) |
| 56111 | 2273 |
(let ((?x8 (* 2 ?1))) |
2274 |
(let ((?x37 (+ 1 ?x8))) |
|
2275 |
(let (($x40 (= ?x37 ?x11))) |
|
2276 |
(let (($x43 (not $x40))) |
|
2277 |
(let ((@x60 (trans (monotonicity (rewrite (= $x40 false)) (= $x43 (not false))) (rewrite (= (not false) true)) (= $x43 true)))) |
|
2278 |
(let ((@x67 (trans (|quant-intro| @x60 (= $x46 $x61)) (|elim-unused| (= $x61 true)) (= $x46 true)))) |
|
2279 |
(let ((@x74 (trans (monotonicity @x67 (= $x49 (not true))) (rewrite (= (not true) false)) (= $x49 false)))) |
|
2280 |
(let ((@x42 (monotonicity (rewrite (= (+ ?x8 1) ?x37)) (= (= (+ ?x8 1) ?x11) $x40)))) |
|
2281 |
(let ((@x48 (|quant-intro| (monotonicity @x42 (= (not (= (+ ?x8 1) ?x11)) $x43)) (= $x14 $x46)))) |
|
2282 |
(let ((@x51 (monotonicity @x48 (= $x15 $x49)))) |
|
2283 |
(mp (asserted $x15) (trans @x51 @x74 (= $x15 false)) false))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2284 |
|
| 56111 | 2285 |
ed6b5d78e5a12fb3a6471e02bc6e89ebc78c1a34 43 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2286 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2287 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2288 |
(declare-fun ?v0!1 () Int) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2289 |
(declare-fun ?v1!0 () Int) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2290 |
(proof |
| 56111 | 2291 |
(let ((?x78 (+ ?v1!0 ?v0!1))) |
2292 |
(let (($x90 (>= ?x78 2))) |
|
2293 |
(let (($x93 (not $x90))) |
|
2294 |
(let (($x87 (= ?x78 2))) |
|
2295 |
(let (($x81 (<= ?x78 2))) |
|
2296 |
(let (($x84 (not $x81))) |
|
2297 |
(let (($x71 (or (not (<= (+ ?v0!1 ?v1!0) 2)) (= (+ ?v0!1 ?v1!0) 2) (not (>= (+ ?v0!1 ?v1!0) 2))))) |
|
2298 |
(let (($x72 (not $x71))) |
|
2299 |
(let ((@x80 (rewrite (= (+ ?v0!1 ?v1!0) ?x78)))) |
|
2300 |
(let ((@x95 (monotonicity (monotonicity @x80 (= (>= (+ ?v0!1 ?v1!0) 2) $x90)) (= (not (>= (+ ?v0!1 ?v1!0) 2)) $x93)))) |
|
2301 |
(let ((@x86 (monotonicity (monotonicity @x80 (= (<= (+ ?v0!1 ?v1!0) 2) $x81)) (= (not (<= (+ ?v0!1 ?v1!0) 2)) $x84)))) |
|
2302 |
(let ((@x98 (monotonicity @x86 (monotonicity @x80 (= (= (+ ?v0!1 ?v1!0) 2) $x87)) @x95 (= $x71 (or $x84 $x87 $x93))))) |
|
2303 |
(let (($x58 (forall ((?v0 Int) (?v1 Int) )(let (($x39 (not (>= (+ ?v0 ?v1) 2)))) |
|
2304 |
(let ((?x8 (+ ?v0 ?v1))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2305 |
(let (($x10 (= ?x8 2))) |
| 56111 | 2306 |
(let (($x44 (not (<= ?x8 2)))) |
2307 |
(or $x44 $x10 $x39)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2308 |
)) |
| 56111 | 2309 |
(let (($x61 (not $x58))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2310 |
(let (($x14 (forall ((?v0 Int) (?v1 Int) )(or (< 2 (+ ?v0 ?v1)) (or (= (+ ?v0 ?v1) 2) (< (+ ?v0 ?v1) 2)))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2311 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2312 |
(let (($x15 (not $x14))) |
| 56111 | 2313 |
(let (($x39 (not (>= (+ ?1 ?0) 2)))) |
2314 |
(let ((?x8 (+ ?1 ?0))) |
|
2315 |
(let (($x10 (= ?x8 2))) |
|
2316 |
(let (($x44 (not (<= ?x8 2)))) |
|
2317 |
(let (($x53 (or $x44 $x10 $x39))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2318 |
(let (($x13 (or (< 2 ?x8) (or $x10 (< ?x8 2))))) |
| 56111 | 2319 |
(let ((@x49 (monotonicity (rewrite (= (< ?x8 2) $x39)) (= (or $x10 (< ?x8 2)) (or $x10 $x39))))) |
2320 |
(let ((@x52 (monotonicity (rewrite (= (< 2 ?x8) $x44)) @x49 (= $x13 (or $x44 (or $x10 $x39)))))) |
|
2321 |
(let ((@x57 (trans @x52 (rewrite (= (or $x44 (or $x10 $x39)) $x53)) (= $x13 $x53)))) |
|
2322 |
(let ((@x64 (mp (asserted $x15) (monotonicity (|quant-intro| @x57 (= $x14 $x58)) (= $x15 $x61)) $x61))) |
|
2323 |
(let ((@x76 (mp (|mp~| @x64 (sk (|~| $x61 $x72)) $x72) (monotonicity @x98 (= $x72 (not (or $x84 $x87 $x93)))) (not (or $x84 $x87 $x93))))) |
|
2324 |
(let ((@x103 (|not-or-elim| @x76 (not $x87)))) |
|
2325 |
(let ((@x104 (|not-or-elim| @x76 $x90))) |
|
2326 |
(let ((@x77 (|not-or-elim| @x76 $x81))) |
|
2327 |
(|unit-resolution| (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x87 $x84 $x93)) @x77 (or $x87 $x93)) @x104 @x103 false))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2328 |
|
| 56111 | 2329 |
092a8c0984dc61be1fab786d699cb79093b7c5f2 46 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2330 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2331 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2332 |
(declare-fun ?v0!0 () Int) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2333 |
(proof |
| 56111 | 2334 |
(let (($x81 (<= ?v0!0 0))) |
2335 |
(let (($x84 (<= ?v0!0 (~ 1)))) |
|
2336 |
(let (($x85 (not $x84))) |
|
2337 |
(let ((@x103 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x85 $x81)) (hypothesis (not $x81)) $x85))) |
|
2338 |
(let (($x82 (>= ?v0!0 1))) |
|
2339 |
(let (($x83 (not $x82))) |
|
2340 |
(let (($x86 (ite $x81 $x83 $x85))) |
|
2341 |
(let (($x87 (not $x86))) |
|
2342 |
(let (($x71 (forall ((?v0 Int) )(let (($x56 (not (<= ?v0 (~ 1))))) |
|
2343 |
(let (($x59 (not (>= ?v0 1)))) |
|
2344 |
(ite (<= ?v0 0) $x59 $x56)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2345 |
)) |
| 56111 | 2346 |
(let (($x74 (not $x71))) |
2347 |
(let (($x13 (forall ((?v0 Int) )(let (($x11 (< ?v0 1))) |
|
2348 |
(let (($x7 (< 0 ?v0))) |
|
2349 |
(ite $x7 (< 0 (+ ?v0 1)) $x11)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2350 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2351 |
(let (($x14 (not $x13))) |
| 56111 | 2352 |
(let (($x44 (forall ((?v0 Int) )(let (($x11 (< ?v0 1))) |
2353 |
(let (($x38 (< 0 (+ 1 ?v0)))) |
|
2354 |
(let (($x7 (< 0 ?v0))) |
|
2355 |
(ite $x7 $x38 $x11))))) |
|
2356 |
)) |
|
2357 |
(let (($x56 (not (<= ?0 (~ 1))))) |
|
2358 |
(let (($x59 (not (>= ?0 1)))) |
|
2359 |
(let (($x66 (ite (<= ?0 0) $x59 $x56))) |
|
2360 |
(let (($x11 (< ?0 1))) |
|
2361 |
(let (($x38 (< 0 (+ 1 ?0)))) |
|
2362 |
(let (($x7 (< 0 ?0))) |
|
2363 |
(let (($x41 (ite $x7 $x38 $x11))) |
|
2364 |
(let ((@x65 (monotonicity (rewrite (= $x7 (not (<= ?0 0)))) (rewrite (= $x38 $x56)) (rewrite (= $x11 $x59)) (= $x41 (ite (not (<= ?0 0)) $x56 $x59))))) |
|
2365 |
(let ((@x70 (trans @x65 (rewrite (= (ite (not (<= ?0 0)) $x56 $x59) $x66)) (= $x41 $x66)))) |
|
2366 |
(let ((@x76 (monotonicity (|quant-intro| @x70 (= $x44 $x71)) (= (not $x44) $x74)))) |
|
2367 |
(let ((@x40 (monotonicity (rewrite (= (+ ?0 1) (+ 1 ?0))) (= (< 0 (+ ?0 1)) $x38)))) |
|
2368 |
(let ((@x43 (monotonicity @x40 (= (ite $x7 (< 0 (+ ?0 1)) $x11) $x41)))) |
|
2369 |
(let ((@x49 (monotonicity (|quant-intro| @x43 (= $x13 $x44)) (= $x14 (not $x44))))) |
|
2370 |
(let ((@x90 (|mp~| (mp (asserted $x14) (trans @x49 @x76 (= $x14 $x74)) $x74) (sk (|~| $x74 $x87)) $x87))) |
|
2371 |
(let ((@x106 (|unit-resolution| (|unit-resolution| (|def-axiom| (or $x86 $x81 $x84)) @x90 (or $x81 $x84)) @x103 (hypothesis (not $x81)) false))) |
|
2372 |
(let ((@x107 (lemma @x106 $x81))) |
|
2373 |
(let ((@x112 (|unit-resolution| (|def-axiom| (or $x86 (not $x81) $x82)) @x90 (or (not $x81) $x82)))) |
|
2374 |
(|unit-resolution| @x112 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x83 (not $x81))) @x107 $x83) @x107 false))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2375 |
|
| 56111 | 2376 |
a5ac1b17c244dd3aef6c7c1289500bca02b482d0 2 0 |
2377 |
unknown |
|
2378 |
(error "line 6 column 10: proof is not available") |
|
2379 |
f697308f77e23a8625c050b2aa7a7f131faf390d 2 0 |
|
2380 |
unknown |
|
2381 |
(error "line 6 column 10: proof is not available") |
|
2382 |
ad02a5379962c0c41aaf5c95191947c03228f5e6 39 0 |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2383 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2384 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2385 |
(proof |
| 56111 | 2386 |
(let (($x16 (exists ((?v0 Int) (?v1 Int) (?v2 Int) )(let ((?x11 (- 6))) |
2387 |
(let ((?x12 (* ?x11 ?v1))) |
|
2388 |
(let ((?x9 (* 4 ?v0))) |
|
2389 |
(let ((?x13 (+ ?x9 ?x12))) |
|
2390 |
(= ?x13 1)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2391 |
)) |
| 56111 | 2392 |
(let (($x7 (not $x16))) |
2393 |
(let (($x17 (not $x7))) |
|
2394 |
(let (($x59 (exists ((?v0 Int) (?v1 Int) )(let ((?x56 (* (~ 6) ?v1))) |
|
2395 |
(let ((?x55 (* 4 ?v0))) |
|
2396 |
(let ((?x57 (+ ?x55 ?x56))) |
|
2397 |
(= ?x57 1))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2398 |
)) |
| 56111 | 2399 |
(let (($x75 (exists ((?v0 Int) (?v1 Int) )false) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2400 |
)) |
| 56111 | 2401 |
(let ((@x79 (|quant-intro| (rewrite (= (= (+ (* 4 ?1) (* (~ 6) ?0)) 1) false)) (= $x59 $x75)))) |
2402 |
(let ((@x83 (trans @x79 (|elim-unused| (= $x75 false)) (= $x59 false)))) |
|
2403 |
(let (($x51 (exists ((?v0 Int) (?v1 Int) (?v2 Int) )(let ((?x42 (* (~ 6) ?v1))) |
|
2404 |
(let ((?x9 (* 4 ?v0))) |
|
2405 |
(let ((?x45 (+ ?x9 ?x42))) |
|
2406 |
(= ?x45 1))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2407 |
)) |
| 56111 | 2408 |
(let ((?x42 (* (~ 6) ?1))) |
2409 |
(let ((?x9 (* 4 ?2))) |
|
2410 |
(let ((?x45 (+ ?x9 ?x42))) |
|
2411 |
(let (($x48 (= ?x45 1))) |
|
2412 |
(let ((?x11 (- 6))) |
|
2413 |
(let ((?x12 (* ?x11 ?1))) |
|
2414 |
(let ((?x13 (+ ?x9 ?x12))) |
|
2415 |
(let (($x15 (= ?x13 1))) |
|
2416 |
(let ((@x47 (monotonicity (monotonicity (rewrite (= ?x11 (~ 6))) (= ?x12 ?x42)) (= ?x13 ?x45)))) |
|
2417 |
(let ((@x63 (trans (|quant-intro| (monotonicity @x47 (= $x15 $x48)) (= $x16 $x51)) (|elim-unused| (= $x51 $x59)) (= $x16 $x59)))) |
|
2418 |
(let ((@x69 (monotonicity (monotonicity @x63 (= $x7 (not $x59))) (= $x17 (not (not $x59)))))) |
|
2419 |
(let ((@x73 (trans @x69 (rewrite (= (not (not $x59)) $x59)) (= $x17 $x59)))) |
|
2420 |
(mp (asserted $x17) (trans @x73 @x83 (= $x17 false)) false))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2421 |
|
| 56111 | 2422 |
8a423de6b668d07fe5d90dcad74d7fbb1fcb9c11 52 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2423 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2424 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2425 |
(declare-fun ?v1!1 () Int) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2426 |
(declare-fun ?v2!0 () Int) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2427 |
(proof |
| 56111 | 2428 |
(let ((?x103 (+ ?v2!0 ?v1!1))) |
2429 |
(let (($x104 (<= ?x103 0))) |
|
2430 |
(let (($x106 (or (not (and (not (<= ?v1!1 0)) (not (<= ?v2!0 0)))) (not $x104)))) |
|
2431 |
(let (($x86 (forall ((?v1 Int) (?v2 Int) )(or (not (and (not (<= ?v1 0)) (not (<= ?v2 0)))) (not (<= (+ ?v2 ?v1) 0)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2432 |
)) |
| 56111 | 2433 |
(let (($x89 (not $x86))) |
2434 |
(let (($x15 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Int) )(let (($x10 (and (< 0 ?v1) (< 0 ?v2)))) |
|
2435 |
(=> $x10 (< 0 (+ ?v1 ?v2))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2436 |
) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2437 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2438 |
(let (($x16 (not $x15))) |
| 56111 | 2439 |
(let (($x52 (forall ((?v1 Int) (?v2 Int) )(let ((?x37 (+ ?v2 ?v1))) |
2440 |
(let (($x40 (< 0 ?x37))) |
|
2441 |
(or (not (and (< 0 ?v1) (< 0 ?v2))) $x40)))) |
|
2442 |
)) |
|
2443 |
(let (($x83 (or (not (and (not (<= ?1 0)) (not (<= ?0 0)))) (not (<= (+ ?0 ?1) 0))))) |
|
2444 |
(let ((?x37 (+ ?0 ?1))) |
|
2445 |
(let (($x40 (< 0 ?x37))) |
|
2446 |
(let (($x47 (or (not (and (< 0 ?1) (< 0 ?0))) $x40))) |
|
2447 |
(let (($x77 (= (not (and (< 0 ?1) (< 0 ?0))) (not (and (not (<= ?1 0)) (not (<= ?0 0))))))) |
|
2448 |
(let (($x10 (and (< 0 ?1) (< 0 ?0)))) |
|
2449 |
(let ((@x75 (monotonicity (rewrite (= (< 0 ?1) (not (<= ?1 0)))) (rewrite (= (< 0 ?0) (not (<= ?0 0)))) (= $x10 (and (not (<= ?1 0)) (not (<= ?0 0))))))) |
|
2450 |
(let ((@x85 (monotonicity (monotonicity @x75 $x77) (rewrite (= $x40 (not (<= ?x37 0)))) (= $x47 $x83)))) |
|
2451 |
(let ((@x91 (monotonicity (|quant-intro| @x85 (= $x52 $x86)) (= (not $x52) $x89)))) |
|
2452 |
(let (($x55 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Int) )(let ((?x37 (+ ?v2 ?v1))) |
|
2453 |
(let (($x40 (< 0 ?x37))) |
|
2454 |
(or (not (and (< 0 ?v1) (< 0 ?v2))) $x40)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2455 |
) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2456 |
)) |
| 56111 | 2457 |
(let (($x14 (forall ((?v1 Int) (?v2 Int) )(let (($x10 (and (< 0 ?v1) (< 0 ?v2)))) |
2458 |
(=> $x10 (< 0 (+ ?v1 ?v2))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2459 |
)) |
| 56111 | 2460 |
(let ((@x42 (monotonicity (rewrite (= (+ ?1 ?0) ?x37)) (= (< 0 (+ ?1 ?0)) $x40)))) |
2461 |
(let ((@x45 (monotonicity @x42 (= (=> $x10 (< 0 (+ ?1 ?0))) (=> $x10 $x40))))) |
|
2462 |
(let ((@x51 (trans @x45 (rewrite (= (=> $x10 $x40) $x47)) (= (=> $x10 (< 0 (+ ?1 ?0))) $x47)))) |
|
2463 |
(let ((@x61 (trans (|quant-intro| (|quant-intro| @x51 (= $x14 $x52)) (= $x15 $x55)) (|elim-unused| (= $x55 $x52)) (= $x15 $x52)))) |
|
2464 |
(let ((@x93 (trans (monotonicity @x61 (= $x16 (not $x52))) @x91 (= $x16 $x89)))) |
|
2465 |
(let ((@x110 (|mp~| (mp (asserted $x16) @x93 $x89) (sk (|~| $x89 (not $x106))) (not $x106)))) |
|
2466 |
(let ((@x116 (|not-or-elim| @x110 $x104))) |
|
2467 |
(let (($x97 (<= ?v1!1 0))) |
|
2468 |
(let (($x98 (not $x97))) |
|
2469 |
(let ((@x114 (|and-elim| (|not-or-elim| @x110 (and $x98 (not (<= ?v2!0 0)))) $x98))) |
|
2470 |
(let (($x99 (<= ?v2!0 0))) |
|
2471 |
(let (($x100 (not $x99))) |
|
2472 |
(let ((@x115 (|and-elim| (|not-or-elim| @x110 (and $x98 $x100)) $x100))) |
|
2473 |
((_ |th-lemma| arith farkas 1 1 1) @x115 @x114 @x116 false))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2474 |
|
| 56111 | 2475 |
7c93c190dc21779c8214786ce8c1fd4de433814f 46 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2476 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2477 |
((set-logic AUFLIRA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2478 |
(declare-fun ?v1!1 () Int) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2479 |
(declare-fun ?v2!0 () Real) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2480 |
(proof |
| 56111 | 2481 |
(let (($x103 (<= ?v1!1 (~ 1)))) |
2482 |
(let (($x104 (not $x103))) |
|
2483 |
(let (($x105 (or (not (and (not (<= ?v1!1 0)) (not (<= ?v2!0 0.0)))) $x104))) |
|
2484 |
(let (($x86 (forall ((?v1 Int) (?v2 Real) )(or (not (and (not (<= ?v1 0)) (not (<= ?v2 0.0)))) (not (<= ?v1 (~ 1))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2485 |
)) |
| 56111 | 2486 |
(let (($x89 (not $x86))) |
2487 |
(let (($x18 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Real) )(let (($x12 (and (< 0 ?v1) (< 0.0 ?v2)))) |
|
2488 |
(=> $x12 (< (- 1) ?v1)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2489 |
) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2490 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2491 |
(let (($x5 (not $x18))) |
| 56111 | 2492 |
(let (($x52 (forall ((?v1 Int) (?v2 Real) )(let (($x40 (< (~ 1) ?v1))) |
2493 |
(or (not (and (< 0 ?v1) (< 0.0 ?v2))) $x40))) |
|
2494 |
)) |
|
2495 |
(let (($x83 (or (not (and (not (<= ?1 0)) (not (<= ?0 0.0)))) (not (<= ?1 (~ 1)))))) |
|
2496 |
(let (($x40 (< (~ 1) ?1))) |
|
2497 |
(let (($x47 (or (not (and (< 0 ?1) (< 0.0 ?0))) $x40))) |
|
2498 |
(let (($x77 (= (not (and (< 0 ?1) (< 0.0 ?0))) (not (and (not (<= ?1 0)) (not (<= ?0 0.0))))))) |
|
2499 |
(let (($x12 (and (< 0 ?1) (< 0.0 ?0)))) |
|
2500 |
(let ((@x75 (monotonicity (rewrite (= (< 0 ?1) (not (<= ?1 0)))) (rewrite (= (< 0.0 ?0) (not (<= ?0 0.0)))) (= $x12 (and (not (<= ?1 0)) (not (<= ?0 0.0))))))) |
|
2501 |
(let ((@x85 (monotonicity (monotonicity @x75 $x77) (rewrite (= $x40 (not (<= ?1 (~ 1))))) (= $x47 $x83)))) |
|
2502 |
(let ((@x91 (monotonicity (|quant-intro| @x85 (= $x52 $x86)) (= (not $x52) $x89)))) |
|
2503 |
(let (($x55 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Real) )(let (($x40 (< (~ 1) ?v1))) |
|
2504 |
(or (not (and (< 0 ?v1) (< 0.0 ?v2))) $x40))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2505 |
) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2506 |
)) |
| 56111 | 2507 |
(let (($x17 (forall ((?v1 Int) (?v2 Real) )(let (($x12 (and (< 0 ?v1) (< 0.0 ?v2)))) |
2508 |
(=> $x12 (< (- 1) ?v1)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2509 |
)) |
| 56111 | 2510 |
(let ((@x42 (monotonicity (rewrite (= (- 1) (~ 1))) (= (< (- 1) ?1) $x40)))) |
2511 |
(let ((@x45 (monotonicity @x42 (= (=> $x12 (< (- 1) ?1)) (=> $x12 $x40))))) |
|
2512 |
(let ((@x51 (trans @x45 (rewrite (= (=> $x12 $x40) $x47)) (= (=> $x12 (< (- 1) ?1)) $x47)))) |
|
2513 |
(let ((@x61 (trans (|quant-intro| (|quant-intro| @x51 (= $x17 $x52)) (= $x18 $x55)) (|elim-unused| (= $x55 $x52)) (= $x18 $x52)))) |
|
2514 |
(let ((@x93 (trans (monotonicity @x61 (= $x5 (not $x52))) @x91 (= $x5 $x89)))) |
|
2515 |
(let ((@x109 (|mp~| (mp (asserted $x5) @x93 $x89) (sk (|~| $x89 (not $x105))) (not $x105)))) |
|
2516 |
(let ((@x115 (|not-or-elim| @x109 $x103))) |
|
2517 |
(let (($x97 (<= ?v1!1 0))) |
|
2518 |
(let (($x98 (not $x97))) |
|
2519 |
(let ((@x113 (|and-elim| (|not-or-elim| @x109 (and $x98 (not (<= ?v2!0 0.0)))) $x98))) |
|
2520 |
(|unit-resolution| (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x104 $x97)) @x113 $x104) @x115 false))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2521 |
|
| 56111 | 2522 |
39a3c02f6687608102bd092d376b8901575e5356 2 0 |
2523 |
unknown |
|
2524 |
(error "line 6 column 10: proof is not available") |
|
2525 |
3bdf1da3a49c7c0ce726c85bf6e844aabdd6afa0 36 0 |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2526 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2527 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2528 |
(proof |
| 56111 | 2529 |
(let (($x13 (forall ((?v0 Int) )(let ((?x10 (* 2 |a$|))) |
2530 |
(let ((?x9 (* 2 ?v0))) |
|
2531 |
(let (($x11 (< ?x9 ?x10))) |
|
2532 |
(let (($x7 (< ?v0 |a$|))) |
|
2533 |
(=> $x7 $x11)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2534 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2535 |
(let (($x14 (not $x13))) |
| 56111 | 2536 |
(let (($x40 (forall ((?v0 Int) )(let ((?x10 (* 2 |a$|))) |
2537 |
(let ((?x9 (* 2 ?v0))) |
|
2538 |
(let (($x11 (< ?x9 ?x10))) |
|
2539 |
(let (($x7 (< ?v0 |a$|))) |
|
2540 |
(let (($x36 (not $x7))) |
|
2541 |
(or $x36 $x11))))))) |
|
2542 |
)) |
|
2543 |
(let (($x43 (not $x40))) |
|
2544 |
(let (($x69 (forall ((?v0 Int) )true) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2545 |
)) |
| 56111 | 2546 |
(let ((?x10 (* 2 |a$|))) |
2547 |
(let ((?x9 (* 2 ?0))) |
|
2548 |
(let (($x11 (< ?x9 ?x10))) |
|
2549 |
(let (($x7 (< ?0 |a$|))) |
|
2550 |
(let (($x36 (not $x7))) |
|
2551 |
(let (($x37 (or $x36 $x11))) |
|
2552 |
(let (($x48 (>= (+ ?0 (* (~ 1) |a$|)) 0))) |
|
2553 |
(let (($x47 (not $x48))) |
|
2554 |
(let ((@x59 (trans (monotonicity (rewrite (= $x7 $x47)) (= $x36 (not $x47))) (rewrite (= (not $x47) $x48)) (= $x36 $x48)))) |
|
2555 |
(let ((@x64 (monotonicity @x59 (rewrite (= $x11 $x47)) (= $x37 (or $x48 $x47))))) |
|
2556 |
(let ((@x71 (|quant-intro| (trans @x64 (rewrite (= (or $x48 $x47) true)) (= $x37 true)) (= $x40 $x69)))) |
|
2557 |
(let ((@x78 (monotonicity (trans @x71 (|elim-unused| (= $x69 true)) (= $x40 true)) (= $x43 (not true))))) |
|
2558 |
(let ((@x82 (trans @x78 (rewrite (= (not true) false)) (= $x43 false)))) |
|
2559 |
(let ((@x45 (monotonicity (|quant-intro| (rewrite (= (=> $x7 $x11) $x37)) (= $x13 $x40)) (= $x14 $x43)))) |
|
2560 |
(mp (asserted $x14) (trans @x45 @x82 (= $x14 false)) false)))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2561 |
|
| 56111 | 2562 |
0737ab0e9619ba68da155fd5dcce2691243e7d8d 24 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2563 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2564 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2565 |
(declare-fun ?v1!0 () Int) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2566 |
(proof |
| 56111 | 2567 |
(let (($x62 (>= ?v1!0 1))) |
2568 |
(let (($x50 (forall ((?v1 Int) )(or (not (<= ?v1 0)) (not (>= ?v1 1)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2569 |
)) |
| 56111 | 2570 |
(let (($x53 (not $x50))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2571 |
(let (($x12 (forall ((?v0 Int) (?v1 Int) )(or (< 0 ?v1) (< ?v1 1))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2572 |
)) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2573 |
(let (($x5 (not $x12))) |
| 56111 | 2574 |
(let (($x33 (forall ((?v1 Int) )(or (< 0 ?v1) (< ?v1 1))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2575 |
)) |
| 56111 | 2576 |
(let (($x11 (or (< 0 ?0) (< ?0 1)))) |
2577 |
(let ((@x49 (monotonicity (rewrite (= (< 0 ?0) (not (<= ?0 0)))) (rewrite (= (< ?0 1) (not (>= ?0 1)))) (= $x11 (or (not (<= ?0 0)) (not (>= ?0 1))))))) |
|
2578 |
(let ((@x55 (monotonicity (|quant-intro| @x49 (= $x33 $x50)) (= (not $x33) $x53)))) |
|
2579 |
(let ((@x57 (trans (monotonicity (|elim-unused| (= $x12 $x33)) (= $x5 (not $x33))) @x55 (= $x5 $x53)))) |
|
2580 |
(let ((@x68 (|mp~| (mp (asserted $x5) @x57 $x53) (sk (|~| $x53 (not (or (not (<= ?v1!0 0)) (not $x62))))) (not (or (not (<= ?v1!0 0)) (not $x62)))))) |
|
2581 |
(let ((@x72 (|not-or-elim| @x68 $x62))) |
|
2582 |
(let (($x63 (not $x62))) |
|
2583 |
(let (($x60 (<= ?v1!0 0))) |
|
2584 |
(let ((@x71 (|not-or-elim| @x68 $x60))) |
|
2585 |
(|unit-resolution| (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x63 (not $x60))) @x71 $x63) @x72 false)))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2586 |
|
| 56111 | 2587 |
40bda8c0d6f113a97f5dc1db7c4465fe4cb9ac06 26 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2588 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2589 |
((set-logic <null>) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2590 |
(proof |
| 56111 | 2591 |
(let (($x56 (<= |b$| 0))) |
2592 |
(let (($x60 (or (not (and (not (<= |a$| 0)) (not (<= (* |a$| |b$|) 0)))) (not $x56)))) |
|
2593 |
(let (($x63 (not $x60))) |
|
2594 |
(let (($x14 (not (=> (and (< 0 |a$|) (< 0 (* |a$| |b$|))) (< 0 |b$|))))) |
|
2595 |
(let (($x12 (< 0 |b$|))) |
|
2596 |
(let (($x36 (or (not (and (< 0 |a$|) (< 0 (* |a$| |b$|)))) $x12))) |
|
2597 |
(let (($x54 (= (not (and (< 0 |a$|) (< 0 (* |a$| |b$|)))) (not (and (not (<= |a$| 0)) (not (<= (* |a$| |b$|) 0))))))) |
|
2598 |
(let ((?x9 (* |a$| |b$|))) |
|
2599 |
(let (($x46 (<= ?x9 0))) |
|
2600 |
(let (($x47 (not $x46))) |
|
2601 |
(let (($x42 (<= |a$| 0))) |
|
2602 |
(let (($x43 (not $x42))) |
|
2603 |
(let (($x50 (and $x43 $x47))) |
|
2604 |
(let (($x11 (and (< 0 |a$|) (< 0 ?x9)))) |
|
2605 |
(let ((@x52 (monotonicity (rewrite (= (< 0 |a$|) $x43)) (rewrite (= (< 0 ?x9) $x47)) (= $x11 $x50)))) |
|
2606 |
(let ((@x62 (monotonicity (monotonicity @x52 $x54) (rewrite (= $x12 (not $x56))) (= $x36 $x60)))) |
|
2607 |
(let ((@x41 (monotonicity (rewrite (= (=> $x11 $x12) $x36)) (= $x14 (not $x36))))) |
|
2608 |
(let ((@x67 (trans @x41 (monotonicity @x62 (= (not $x36) $x63)) (= $x14 $x63)))) |
|
2609 |
(let ((@x72 (|not-or-elim| (mp (asserted $x14) @x67 $x63) $x56))) |
|
2610 |
(let ((@x70 (|and-elim| (|not-or-elim| (mp (asserted $x14) @x67 $x63) $x50) $x43))) |
|
2611 |
(let ((@x71 (|and-elim| (|not-or-elim| (mp (asserted $x14) @x67 $x63) $x50) $x47))) |
|
2612 |
((_ |th-lemma| arith farkas 1 1 1) @x71 @x70 @x72 false)))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2613 |
|
| 56111 | 2614 |
3f9914c501829bba4f4b416ce311c4f49855326d 26 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2615 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2616 |
((set-logic <null>) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2617 |
(proof |
| 56111 | 2618 |
(let ((?x13 (+ |y$| 1))) |
2619 |
(let ((?x14 (* |a$| ?x13))) |
|
2620 |
(let ((?x12 (* |a$| |x$|))) |
|
2621 |
(let ((?x15 (+ ?x12 ?x14))) |
|
2622 |
(let ((?x8 (+ |x$| 1))) |
|
2623 |
(let ((?x10 (+ ?x8 |y$|))) |
|
2624 |
(let ((?x11 (* |a$| ?x10))) |
|
2625 |
(let (($x16 (= ?x11 ?x15))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2626 |
(let (($x17 (not $x16))) |
| 56111 | 2627 |
(let (($x80 (= (= (+ |a$| ?x12 (* |a$| |y$|)) (+ |a$| ?x12 (* |a$| |y$|))) true))) |
2628 |
(let (($x78 (= $x16 (= (+ |a$| ?x12 (* |a$| |y$|)) (+ |a$| ?x12 (* |a$| |y$|)))))) |
|
2629 |
(let ((@x74 (rewrite (= (+ ?x12 (+ |a$| (* |a$| |y$|))) (+ |a$| ?x12 (* |a$| |y$|)))))) |
|
2630 |
(let ((@x64 (monotonicity (rewrite (= ?x13 (+ 1 |y$|))) (= ?x14 (* |a$| (+ 1 |y$|)))))) |
|
2631 |
(let ((@x69 (trans @x64 (rewrite (= (* |a$| (+ 1 |y$|)) (+ |a$| (* |a$| |y$|)))) (= ?x14 (+ |a$| (* |a$| |y$|)))))) |
|
2632 |
(let ((@x76 (trans (monotonicity @x69 (= ?x15 (+ ?x12 (+ |a$| (* |a$| |y$|))))) @x74 (= ?x15 (+ |a$| ?x12 (* |a$| |y$|)))))) |
|
2633 |
(let ((@x56 (rewrite (= (* |a$| (+ 1 |x$| |y$|)) (+ |a$| ?x12 (* |a$| |y$|)))))) |
|
2634 |
(let ((@x44 (monotonicity (rewrite (= ?x8 (+ 1 |x$|))) (= ?x10 (+ (+ 1 |x$|) |y$|))))) |
|
2635 |
(let ((@x49 (trans @x44 (rewrite (= (+ (+ 1 |x$|) |y$|) (+ 1 |x$| |y$|))) (= ?x10 (+ 1 |x$| |y$|))))) |
|
2636 |
(let ((@x58 (trans (monotonicity @x49 (= ?x11 (* |a$| (+ 1 |x$| |y$|)))) @x56 (= ?x11 (+ |a$| ?x12 (* |a$| |y$|)))))) |
|
2637 |
(let ((@x86 (monotonicity (trans (monotonicity @x58 @x76 $x78) (rewrite $x80) (= $x16 true)) (= $x17 (not true))))) |
|
2638 |
(let ((@x90 (trans @x86 (rewrite (= (not true) false)) (= $x17 false)))) |
|
2639 |
(mp (asserted $x17) @x90 false)))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2640 |
|
| 56111 | 2641 |
f65cca85cf5c1c666974448574788ae3b34595b7 23 0 |
| 56109 | 2642 |
unsat |
2643 |
((set-logic <null>) |
|
2644 |
(proof |
|
| 56111 | 2645 |
(let ((?x14 (* 2.0 |x$|))) |
2646 |
(let ((?x15 (* ?x14 |y$|))) |
|
2647 |
(let ((?x10 (- 1.0 |y$|))) |
|
2648 |
(let ((?x11 (* |x$| ?x10))) |
|
2649 |
(let ((?x8 (+ 1.0 |y$|))) |
|
2650 |
(let ((?x9 (* |x$| ?x8))) |
|
2651 |
(let ((?x12 (- ?x9 ?x11))) |
|
2652 |
(let (($x16 (= ?x12 ?x15))) |
|
2653 |
(let (($x17 (not $x16))) |
|
2654 |
(let ((@x71 (rewrite (= (= (* 2.0 (* |x$| |y$|)) (* 2.0 (* |x$| |y$|))) true)))) |
|
2655 |
(let ((?x39 (* |x$| |y$|))) |
|
2656 |
(let ((?x61 (* 2.0 ?x39))) |
|
2657 |
(let ((@x54 (rewrite (= (* |x$| (+ 1.0 (* (~ 1.0) |y$|))) (+ |x$| (* (~ 1.0) ?x39)))))) |
|
2658 |
(let ((@x50 (monotonicity (rewrite (= ?x10 (+ 1.0 (* (~ 1.0) |y$|)))) (= ?x11 (* |x$| (+ 1.0 (* (~ 1.0) |y$|))))))) |
|
2659 |
(let ((@x59 (monotonicity (rewrite (= ?x9 (+ |x$| ?x39))) (trans @x50 @x54 (= ?x11 (+ |x$| (* (~ 1.0) ?x39)))) (= ?x12 (- (+ |x$| ?x39) (+ |x$| (* (~ 1.0) ?x39))))))) |
|
2660 |
(let ((@x64 (trans @x59 (rewrite (= (- (+ |x$| ?x39) (+ |x$| (* (~ 1.0) ?x39))) ?x61)) (= ?x12 ?x61)))) |
|
2661 |
(let ((@x73 (trans (monotonicity @x64 (rewrite (= ?x15 ?x61)) (= $x16 (= ?x61 ?x61))) @x71 (= $x16 true)))) |
|
2662 |
(let ((@x80 (trans (monotonicity @x73 (= $x17 (not true))) (rewrite (= (not true) false)) (= $x17 false)))) |
|
2663 |
(mp (asserted $x17) @x80 false))))))))))))))))))))) |
|
| 56109 | 2664 |
|
| 56111 | 2665 |
2643ba95811453f95121cf28c15c748e73c8c127 51 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2666 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2667 |
((set-logic <null>) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2668 |
(proof |
| 56111 | 2669 |
(let ((?x25 (+ |b$| |d$|))) |
2670 |
(let ((?x26 (+ ?x25 |e$|))) |
|
| 56109 | 2671 |
(let ((?x8 (+ 1 |p$|))) |
| 56111 | 2672 |
(let ((?x27 (* ?x8 ?x26))) |
2673 |
(let ((?x22 (* |d$| |p$|))) |
|
2674 |
(let ((?x20 (* ?x8 |d$|))) |
|
| 56109 | 2675 |
(let ((?x11 (+ |b$| |e$|))) |
| 56111 | 2676 |
(let ((?x18 (* 2 ?x8))) |
2677 |
(let ((?x19 (* ?x18 ?x11))) |
|
2678 |
(let ((?x21 (+ ?x19 ?x20))) |
|
2679 |
(let ((?x23 (+ ?x21 ?x22))) |
|
2680 |
(let ((?x24 (+ |u$| ?x23))) |
|
2681 |
(let ((?x28 (- ?x24 ?x27))) |
|
2682 |
(let ((?x15 (* |p$| |d$|))) |
|
| 56109 | 2683 |
(let ((?x12 (* ?x8 ?x11))) |
| 56111 | 2684 |
(let ((?x13 (+ |u$| ?x12))) |
2685 |
(let ((?x16 (+ ?x13 ?x15))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2686 |
(let (($x29 (= ?x16 ?x28))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2687 |
(let (($x30 (not $x29))) |
| 56111 | 2688 |
(let ((?x53 (* |p$| |e$|))) |
2689 |
(let ((?x52 (* |p$| |b$|))) |
|
2690 |
(let ((?x68 (+ |u$| |b$| |e$| ?x15 ?x52 ?x53))) |
|
2691 |
(let ((?x125 (+ |b$| |e$| |d$| ?x15 ?x52 ?x53))) |
|
2692 |
(let ((?x83 (* 2 ?x53))) |
|
2693 |
(let ((?x81 (* 2 ?x52))) |
|
2694 |
(let ((?x82 (* 2 |e$|))) |
|
2695 |
(let ((?x80 (* 2 |b$|))) |
|
2696 |
(let ((?x114 (+ |u$| ?x80 ?x82 |d$| (* 2 ?x15) ?x81 ?x83))) |
|
2697 |
(let ((@x124 (monotonicity (rewrite (= ?x26 (+ |b$| |e$| |d$|))) (= ?x27 (* ?x8 (+ |b$| |e$| |d$|)))))) |
|
2698 |
(let ((@x129 (trans @x124 (rewrite (= (* ?x8 (+ |b$| |e$| |d$|)) ?x125)) (= ?x27 ?x125)))) |
|
2699 |
(let ((@x116 (rewrite (= (+ |u$| (+ ?x80 ?x82 |d$| (* 2 ?x15) ?x81 ?x83)) ?x114)))) |
|
2700 |
(let ((?x106 (+ ?x80 ?x82 |d$| (* 2 ?x15) ?x81 ?x83))) |
|
2701 |
(let ((?x95 (+ ?x80 ?x82 |d$| ?x15 ?x81 ?x83))) |
|
2702 |
(let ((@x86 (rewrite (= (* (+ 2 (* 2 |p$|)) ?x11) (+ ?x80 ?x82 ?x81 ?x83))))) |
|
2703 |
(let ((@x79 (monotonicity (rewrite (= ?x18 (+ 2 (* 2 |p$|)))) (= ?x19 (* (+ 2 (* 2 |p$|)) ?x11))))) |
|
2704 |
(let ((@x94 (monotonicity (trans @x79 @x86 (= ?x19 (+ ?x80 ?x82 ?x81 ?x83))) (rewrite (= ?x20 (+ |d$| ?x15))) (= ?x21 (+ (+ ?x80 ?x82 ?x81 ?x83) (+ |d$| ?x15)))))) |
|
2705 |
(let ((@x99 (trans @x94 (rewrite (= (+ (+ ?x80 ?x82 ?x81 ?x83) (+ |d$| ?x15)) ?x95)) (= ?x21 ?x95)))) |
|
2706 |
(let ((@x110 (trans (monotonicity @x99 (rewrite (= ?x22 ?x15)) (= ?x23 (+ ?x95 ?x15))) (rewrite (= (+ ?x95 ?x15) ?x106)) (= ?x23 ?x106)))) |
|
2707 |
(let ((@x118 (trans (monotonicity @x110 (= ?x24 (+ |u$| ?x106))) @x116 (= ?x24 ?x114)))) |
|
2708 |
(let ((@x137 (trans (monotonicity @x118 @x129 (= ?x28 (- ?x114 ?x125))) (rewrite (= (- ?x114 ?x125) ?x68)) (= ?x28 ?x68)))) |
|
2709 |
(let ((@x62 (rewrite (= (+ |u$| (+ |b$| |e$| ?x52 ?x53)) (+ |u$| |b$| |e$| ?x52 ?x53))))) |
|
2710 |
(let ((@x59 (monotonicity (rewrite (= ?x12 (+ |b$| |e$| ?x52 ?x53))) (= ?x13 (+ |u$| (+ |b$| |e$| ?x52 ?x53)))))) |
|
2711 |
(let ((@x67 (monotonicity (trans @x59 @x62 (= ?x13 (+ |u$| |b$| |e$| ?x52 ?x53))) (= ?x16 (+ (+ |u$| |b$| |e$| ?x52 ?x53) ?x15))))) |
|
2712 |
(let ((@x72 (trans @x67 (rewrite (= (+ (+ |u$| |b$| |e$| ?x52 ?x53) ?x15) ?x68)) (= ?x16 ?x68)))) |
|
2713 |
(let ((@x143 (trans (monotonicity @x72 @x137 (= $x29 (= ?x68 ?x68))) (rewrite (= (= ?x68 ?x68) true)) (= $x29 true)))) |
|
2714 |
(let ((@x150 (trans (monotonicity @x143 (= $x30 (not true))) (rewrite (= (not true) false)) (= $x30 false)))) |
|
2715 |
(mp (asserted $x30) @x150 false))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2716 |
|
| 56111 | 2717 |
9377273e8e637d8916ed13b81bd56a602ea76d29 126 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2718 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2719 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2720 |
(proof |
| 56111 | 2721 |
(let ((?x7 (|of_nat$| |x$|))) |
2722 |
(let ((?x8 (* 2 ?x7))) |
|
2723 |
(let ((?x9 (|nat$| ?x8))) |
|
2724 |
(let ((?x147 (|of_nat$| ?x9))) |
|
2725 |
(let ((?x160 (* (~ 1) ?x147))) |
|
2726 |
(let ((?x161 (+ ?x8 ?x160))) |
|
2727 |
(let (($x177 (<= ?x161 0))) |
|
2728 |
(let (($x158 (= ?x161 0))) |
|
2729 |
(let (($x150 (>= ?x7 0))) |
|
2730 |
(let (($x239 (>= ?x147 1))) |
|
2731 |
(let (($x237 (= ?x147 1))) |
|
2732 |
(let ((?x11 (|nat$| 1))) |
|
2733 |
(let ((?x200 (|of_nat$| ?x11))) |
|
2734 |
(let (($x201 (= ?x200 1))) |
|
2735 |
(let (($x128 (forall ((?v0 Int) )(!(let ((?x23 (|nat$| ?v0))) |
|
2736 |
(let ((?x24 (|of_nat$| ?x23))) |
|
2737 |
(let (($x25 (= ?x24 ?v0))) |
|
2738 |
(let (($x66 (>= ?v0 0))) |
|
2739 |
(let (($x67 (not $x66))) |
|
2740 |
(or $x67 $x25)))))) :pattern ( (|nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2741 |
)) |
| 56111 | 2742 |
(let (($x73 (forall ((?v0 Int) )(let ((?x23 (|nat$| ?v0))) |
2743 |
(let ((?x24 (|of_nat$| ?x23))) |
|
2744 |
(let (($x25 (= ?x24 ?v0))) |
|
2745 |
(let (($x66 (>= ?v0 0))) |
|
2746 |
(let (($x67 (not $x66))) |
|
2747 |
(or $x67 $x25))))))) |
|
2748 |
)) |
|
2749 |
(let ((?x23 (|nat$| ?0))) |
|
2750 |
(let ((?x24 (|of_nat$| ?x23))) |
|
2751 |
(let (($x25 (= ?x24 ?0))) |
|
2752 |
(let (($x66 (>= ?0 0))) |
|
2753 |
(let (($x67 (not $x66))) |
|
2754 |
(let (($x70 (or $x67 $x25))) |
|
2755 |
(let (($x27 (forall ((?v0 Int) )(let ((?x23 (|nat$| ?v0))) |
|
2756 |
(let ((?x24 (|of_nat$| ?x23))) |
|
2757 |
(let (($x25 (= ?x24 ?v0))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2758 |
(let (($x22 (<= 0 ?v0))) |
| 56111 | 2759 |
(=> $x22 $x25)))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2760 |
)) |
| 56111 | 2761 |
(let (($x61 (forall ((?v0 Int) )(let ((?x23 (|nat$| ?v0))) |
2762 |
(let ((?x24 (|of_nat$| ?x23))) |
|
2763 |
(let (($x25 (= ?x24 ?v0))) |
|
2764 |
(or (not (<= 0 ?v0)) $x25))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2765 |
)) |
| 56111 | 2766 |
(let ((@x69 (monotonicity (rewrite (= (<= 0 ?0) $x66)) (= (not (<= 0 ?0)) $x67)))) |
2767 |
(let ((@x75 (|quant-intro| (monotonicity @x69 (= (or (not (<= 0 ?0)) $x25) $x70)) (= $x61 $x73)))) |
|
2768 |
(let ((@x60 (rewrite (= (=> (<= 0 ?0) $x25) (or (not (<= 0 ?0)) $x25))))) |
|
2769 |
(let ((@x78 (mp (asserted $x27) (trans (|quant-intro| @x60 (= $x27 $x61)) @x75 (= $x27 $x73)) $x73))) |
|
2770 |
(let ((@x133 (mp (|mp~| @x78 (|nnf-pos| (refl (|~| $x70 $x70)) (|~| $x73 $x73)) $x73) (|quant-intro| (refl (= $x70 $x70)) (= $x73 $x128)) $x128))) |
|
2771 |
(let (($x165 (not $x128))) |
|
2772 |
(let (($x219 (or $x165 $x201))) |
|
2773 |
(let ((@x204 (rewrite (= (>= 1 0) true)))) |
|
2774 |
(let ((@x211 (trans (monotonicity @x204 (= (not (>= 1 0)) (not true))) (rewrite (= (not true) false)) (= (not (>= 1 0)) false)))) |
|
2775 |
(let ((@x214 (monotonicity @x211 (= (or (not (>= 1 0)) $x201) (or false $x201))))) |
|
2776 |
(let ((@x218 (trans @x214 (rewrite (= (or false $x201) $x201)) (= (or (not (>= 1 0)) $x201) $x201)))) |
|
2777 |
(let ((@x223 (monotonicity @x218 (= (or $x165 (or (not (>= 1 0)) $x201)) $x219)))) |
|
2778 |
(let ((@x226 (trans @x223 (rewrite (= $x219 $x219)) (= (or $x165 (or (not (>= 1 0)) $x201)) $x219)))) |
|
2779 |
(let ((@x227 (mp ((_ |quant-inst| 1) (or $x165 (or (not (>= 1 0)) $x201))) @x226 $x219))) |
|
2780 |
(let (($x12 (= ?x9 ?x11))) |
|
2781 |
(let ((@x56 (mp (asserted (not (not $x12))) (rewrite (= (not (not $x12)) $x12)) $x12))) |
|
2782 |
(let ((@x252 (trans (monotonicity @x56 (= ?x147 ?x200)) (|unit-resolution| @x227 @x133 $x201) $x237))) |
|
2783 |
(let ((@x261 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or (not $x239) (not (<= ?x147 0)))) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x237) $x239)) @x252 $x239) (not (<= ?x147 0))))) |
|
2784 |
(let ((@x265 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not (= ?x147 0)) (<= ?x147 0))) @x261 (not (= ?x147 0))))) |
|
2785 |
(let (($x179 (= ?x147 0))) |
|
2786 |
(let (($x181 (or $x150 $x179))) |
|
2787 |
(let (($x134 (forall ((?v0 Int) )(!(let ((?x23 (|nat$| ?v0))) |
|
2788 |
(let ((?x24 (|of_nat$| ?x23))) |
|
2789 |
(let (($x29 (= ?x24 0))) |
|
2790 |
(let (($x66 (>= ?v0 0))) |
|
2791 |
(or $x66 $x29))))) :pattern ( (|nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2792 |
)) |
| 56111 | 2793 |
(let (($x99 (forall ((?v0 Int) )(let ((?x23 (|nat$| ?v0))) |
2794 |
(let ((?x24 (|of_nat$| ?x23))) |
|
2795 |
(let (($x29 (= ?x24 0))) |
|
2796 |
(let (($x66 (>= ?v0 0))) |
|
2797 |
(or $x66 $x29)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2798 |
)) |
| 56111 | 2799 |
(let ((@x138 (|quant-intro| (refl (= (or $x66 (= ?x24 0)) (or $x66 (= ?x24 0)))) (= $x99 $x134)))) |
2800 |
(let ((@x118 (|nnf-pos| (refl (|~| (or $x66 (= ?x24 0)) (or $x66 (= ?x24 0)))) (|~| $x99 $x99)))) |
|
2801 |
(let (($x31 (forall ((?v0 Int) )(let ((?x23 (|nat$| ?v0))) |
|
2802 |
(let ((?x24 (|of_nat$| ?x23))) |
|
2803 |
(let (($x29 (= ?x24 0))) |
|
2804 |
(let (($x28 (< ?v0 0))) |
|
2805 |
(=> $x28 $x29)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2806 |
)) |
| 56111 | 2807 |
(let (($x84 (forall ((?v0 Int) )(let ((?x23 (|nat$| ?v0))) |
2808 |
(let ((?x24 (|of_nat$| ?x23))) |
|
2809 |
(let (($x29 (= ?x24 0))) |
|
2810 |
(let (($x28 (< ?v0 0))) |
|
2811 |
(let (($x80 (not $x28))) |
|
2812 |
(or $x80 $x29))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2813 |
)) |
| 56111 | 2814 |
(let (($x29 (= ?x24 0))) |
2815 |
(let (($x96 (or $x66 $x29))) |
|
2816 |
(let (($x28 (< ?0 0))) |
|
2817 |
(let (($x80 (not $x28))) |
|
2818 |
(let (($x81 (or $x80 $x29))) |
|
2819 |
(let ((@x95 (trans (monotonicity (rewrite (= $x28 $x67)) (= $x80 (not $x67))) (rewrite (= (not $x67) $x66)) (= $x80 $x66)))) |
|
2820 |
(let ((@x103 (trans (|quant-intro| (rewrite (= (=> $x28 $x29) $x81)) (= $x31 $x84)) (|quant-intro| (monotonicity @x95 (= $x81 $x96)) (= $x84 $x99)) (= $x31 $x99)))) |
|
2821 |
(let ((@x139 (mp (|mp~| (mp (asserted $x31) @x103 $x99) @x118 $x99) @x138 $x134))) |
|
2822 |
(let (($x184 (not $x134))) |
|
2823 |
(let (($x185 (or $x184 $x150 $x179))) |
|
2824 |
(let ((@x152 (rewrite (= (>= ?x8 0) $x150)))) |
|
2825 |
(let ((@x190 (monotonicity (monotonicity @x152 (= (or (>= ?x8 0) $x179) $x181)) (= (or $x184 (or (>= ?x8 0) $x179)) (or $x184 $x181))))) |
|
2826 |
(let ((@x194 (trans @x190 (rewrite (= (or $x184 $x181) $x185)) (= (or $x184 (or (>= ?x8 0) $x179)) $x185)))) |
|
2827 |
(let ((@x195 (mp ((_ |quant-inst| (* 2 ?x7)) (or $x184 (or (>= ?x8 0) $x179))) @x194 $x185))) |
|
2828 |
(let (($x153 (not $x150))) |
|
2829 |
(let (($x162 (or $x153 $x158))) |
|
2830 |
(let (($x166 (or $x165 $x153 $x158))) |
|
2831 |
(let (($x148 (= ?x147 ?x8))) |
|
2832 |
(let (($x142 (>= ?x8 0))) |
|
2833 |
(let (($x143 (not $x142))) |
|
2834 |
(let (($x149 (or $x143 $x148))) |
|
2835 |
(let (($x167 (or $x165 $x149))) |
|
2836 |
(let ((@x164 (monotonicity (monotonicity @x152 (= $x143 $x153)) (rewrite (= $x148 $x158)) (= $x149 $x162)))) |
|
2837 |
(let ((@x175 (trans (monotonicity @x164 (= $x167 (or $x165 $x162))) (rewrite (= (or $x165 $x162) $x166)) (= $x167 $x166)))) |
|
2838 |
(let ((@x176 (mp ((_ |quant-inst| (* 2 ?x7)) $x167) @x175 $x166))) |
|
2839 |
(let ((@x269 (|unit-resolution| (|unit-resolution| @x176 @x133 $x162) (|unit-resolution| (|unit-resolution| @x195 @x139 $x181) @x265 $x150) $x158))) |
|
2840 |
(let (($x178 (>= ?x161 0))) |
|
2841 |
(let (($x238 (<= ?x147 1))) |
|
2842 |
((_ |th-lemma| arith gcd-test -1/2 -1/2 -1/2 -1/2) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x237) $x239)) @x252 $x239) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x237) $x238)) @x252 $x238) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x158) $x178)) @x269 $x178) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x158) $x177)) @x269 $x177) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2843 |
|
| 56111 | 2844 |
7540f10f61e5a987b0848b309bd25f2a2ae1cd0a 22 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2845 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2846 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2847 |
(proof |
| 56109 | 2848 |
(let ((?x6 (|of_nat$| |a$|))) |
| 56111 | 2849 |
(let (($x71 (>= ?x6 4))) |
2850 |
(let (($x78 (not (or (>= ?x6 3) (not $x71))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2851 |
(let (($x12 (< (* 2 ?x6) 7))) |
| 56111 | 2852 |
(let (($x8 (< ?x6 3))) |
2853 |
(let (($x52 (not $x8))) |
|
2854 |
(let (($x53 (or $x52 $x12))) |
|
2855 |
(let ((@x65 (monotonicity (rewrite (= $x8 (not (>= ?x6 3)))) (= $x52 (not (not (>= ?x6 3))))))) |
|
2856 |
(let ((@x69 (trans @x65 (rewrite (= (not (not (>= ?x6 3))) (>= ?x6 3))) (= $x52 (>= ?x6 3))))) |
|
2857 |
(let ((@x77 (monotonicity @x69 (rewrite (= $x12 (not $x71))) (= $x53 (or (>= ?x6 3) (not $x71)))))) |
|
2858 |
(let ((@x58 (monotonicity (rewrite (= (=> $x8 $x12) $x53)) (= (not (=> $x8 $x12)) (not $x53))))) |
|
2859 |
(let ((@x82 (trans @x58 (monotonicity @x77 (= (not $x53) $x78)) (= (not (=> $x8 $x12)) $x78)))) |
|
2860 |
(let ((@x85 (|not-or-elim| (mp (asserted (not (=> $x8 $x12))) @x82 $x78) $x71))) |
|
2861 |
(let (($x72 (not $x71))) |
|
2862 |
(let (($x61 (>= ?x6 3))) |
|
2863 |
(let (($x59 (not $x61))) |
|
2864 |
(let ((@x84 (|not-or-elim| (mp (asserted (not (=> $x8 $x12))) @x82 $x78) $x59))) |
|
2865 |
(|unit-resolution| (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x72 $x61)) @x84 $x72) @x85 false)))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2866 |
|
| 56111 | 2867 |
3a9a1f0f87885c249813dfb78d14e1062fc20ce3 147 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2868 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2869 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2870 |
(proof |
| 56109 | 2871 |
(let ((?x8 (|of_nat$| |y$|))) |
| 56111 | 2872 |
(let ((?x9 (+ 1 ?x8))) |
2873 |
(let ((?x10 (|nat$| ?x9))) |
|
2874 |
(let ((?x11 (|of_nat$| ?x10))) |
|
2875 |
(let ((?x57 (* (~ 1) ?x8))) |
|
2876 |
(let ((?x58 (+ ?x57 ?x11))) |
|
2877 |
(let ((?x61 (|nat$| ?x58))) |
|
2878 |
(let ((?x64 (|of_nat$| ?x61))) |
|
2879 |
(let ((?x195 (* (~ 1) ?x11))) |
|
2880 |
(let ((?x246 (+ ?x8 ?x195 ?x64))) |
|
2881 |
(let (($x265 (>= ?x246 0))) |
|
2882 |
(let (($x247 (= ?x246 0))) |
|
2883 |
(let ((?x196 (+ ?x8 ?x195))) |
|
2884 |
(let (($x240 (<= ?x196 0))) |
|
2885 |
(let (($x215 (<= ?x196 (~ 1)))) |
|
2886 |
(let (($x197 (= ?x196 (~ 1)))) |
|
2887 |
(let (($x189 (>= ?x8 (~ 1)))) |
|
2888 |
(let (($x283 (>= ?x8 0))) |
|
2889 |
(let ((?x172 (|nat$| ?x8))) |
|
2890 |
(let ((?x284 (|of_nat$| ?x172))) |
|
2891 |
(let (($x285 (= ?x284 0))) |
|
2892 |
(let (($x286 (or $x283 $x285))) |
|
2893 |
(let (($x166 (forall ((?v0 Int) )(!(let ((?x25 (|nat$| ?v0))) |
|
2894 |
(let ((?x26 (|of_nat$| ?x25))) |
|
2895 |
(let (($x31 (= ?x26 0))) |
|
2896 |
(let (($x97 (>= ?v0 0))) |
|
2897 |
(or $x97 $x31))))) :pattern ( (|nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2898 |
)) |
| 56111 | 2899 |
(let (($x131 (forall ((?v0 Int) )(let ((?x25 (|nat$| ?v0))) |
2900 |
(let ((?x26 (|of_nat$| ?x25))) |
|
2901 |
(let (($x31 (= ?x26 0))) |
|
2902 |
(let (($x97 (>= ?v0 0))) |
|
2903 |
(or $x97 $x31)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2904 |
)) |
| 56111 | 2905 |
(let ((?x25 (|nat$| ?0))) |
2906 |
(let ((?x26 (|of_nat$| ?x25))) |
|
2907 |
(let (($x31 (= ?x26 0))) |
|
2908 |
(let (($x97 (>= ?0 0))) |
|
2909 |
(let (($x128 (or $x97 $x31))) |
|
2910 |
(let (($x33 (forall ((?v0 Int) )(let ((?x25 (|nat$| ?v0))) |
|
2911 |
(let ((?x26 (|of_nat$| ?x25))) |
|
2912 |
(let (($x31 (= ?x26 0))) |
|
2913 |
(let (($x30 (< ?v0 0))) |
|
2914 |
(=> $x30 $x31)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2915 |
)) |
| 56111 | 2916 |
(let (($x116 (forall ((?v0 Int) )(let ((?x25 (|nat$| ?v0))) |
2917 |
(let ((?x26 (|of_nat$| ?x25))) |
|
2918 |
(let (($x31 (= ?x26 0))) |
|
2919 |
(let (($x30 (< ?v0 0))) |
|
2920 |
(let (($x112 (not $x30))) |
|
2921 |
(or $x112 $x31))))))) |
|
2922 |
)) |
|
2923 |
(let ((@x123 (monotonicity (rewrite (= (< ?0 0) (not $x97))) (= (not (< ?0 0)) (not (not $x97)))))) |
|
2924 |
(let ((@x127 (trans @x123 (rewrite (= (not (not $x97)) $x97)) (= (not (< ?0 0)) $x97)))) |
|
2925 |
(let ((@x133 (|quant-intro| (monotonicity @x127 (= (or (not (< ?0 0)) $x31) $x128)) (= $x116 $x131)))) |
|
2926 |
(let ((@x115 (rewrite (= (=> (< ?0 0) $x31) (or (not (< ?0 0)) $x31))))) |
|
2927 |
(let ((@x136 (mp (asserted $x33) (trans (|quant-intro| @x115 (= $x33 $x116)) @x133 (= $x33 $x131)) $x131))) |
|
2928 |
(let ((@x171 (mp (|mp~| @x136 (|nnf-pos| (refl (|~| $x128 $x128)) (|~| $x131 $x131)) $x131) (|quant-intro| (refl (= $x128 $x128)) (= $x131 $x166)) $x166))) |
|
2929 |
(let (($x222 (not $x166))) |
|
2930 |
(let (($x289 (or $x222 $x283 $x285))) |
|
2931 |
(let ((@x294 (mp ((_ |quant-inst| (|of_nat$| |y$|)) (or $x222 $x286)) (rewrite (= (or $x222 $x286) $x289)) $x289))) |
|
2932 |
(let ((@x316 (|unit-resolution| (|unit-resolution| @x294 @x171 $x286) (hypothesis (not $x283)) $x285))) |
|
2933 |
(let (($x173 (= ?x172 |y$|))) |
|
2934 |
(let (($x153 (forall ((?v0 |Nat$|) )(!(= (|nat$| (|of_nat$| ?v0)) ?v0) :pattern ( (|of_nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2935 |
)) |
| 56109 | 2936 |
(let (($x22 (forall ((?v0 |Nat$|) )(= (|nat$| (|of_nat$| ?v0)) ?v0)) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2937 |
)) |
| 56111 | 2938 |
(let ((@x155 (refl (= (= (|nat$| (|of_nat$| ?0)) ?0) (= (|nat$| (|of_nat$| ?0)) ?0))))) |
2939 |
(let ((@x140 (refl (|~| (= (|nat$| (|of_nat$| ?0)) ?0) (= (|nat$| (|of_nat$| ?0)) ?0))))) |
|
2940 |
(let ((@x158 (mp (|mp~| (asserted $x22) (|nnf-pos| @x140 (|~| $x22 $x22)) $x22) (|quant-intro| @x155 (= $x22 $x153)) $x153))) |
|
2941 |
(let (($x176 (not $x153))) |
|
2942 |
(let (($x177 (or $x176 $x173))) |
|
2943 |
(let ((@x178 ((_ |quant-inst| |y$|) $x177))) |
|
2944 |
(let ((@x321 (monotonicity (symm (|unit-resolution| @x178 @x158 $x173) (= |y$| ?x172)) (= ?x8 ?x284)))) |
|
2945 |
(let ((@x326 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not (= ?x8 0)) $x283)) (hypothesis (not $x283)) (trans @x321 @x316 (= ?x8 0)) false))) |
|
2946 |
(let ((@x329 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or (not $x283) $x189)) (lemma @x326 $x283) $x189))) |
|
2947 |
(let (($x192 (not $x189))) |
|
2948 |
(let (($x200 (or $x192 $x197))) |
|
2949 |
(let (($x160 (forall ((?v0 Int) )(!(let ((?x25 (|nat$| ?v0))) |
|
2950 |
(let ((?x26 (|of_nat$| ?x25))) |
|
2951 |
(let (($x27 (= ?x26 ?v0))) |
|
2952 |
(let (($x97 (>= ?v0 0))) |
|
2953 |
(let (($x99 (not $x97))) |
|
2954 |
(or $x99 $x27)))))) :pattern ( (|nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2955 |
)) |
| 56111 | 2956 |
(let (($x105 (forall ((?v0 Int) )(let ((?x25 (|nat$| ?v0))) |
2957 |
(let ((?x26 (|of_nat$| ?x25))) |
|
2958 |
(let (($x27 (= ?x26 ?v0))) |
|
2959 |
(let (($x97 (>= ?v0 0))) |
|
2960 |
(let (($x99 (not $x97))) |
|
2961 |
(or $x99 $x27))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2962 |
)) |
| 56111 | 2963 |
(let ((@x162 (refl (= (or (not $x97) (= ?x26 ?0)) (or (not $x97) (= ?x26 ?0)))))) |
2964 |
(let ((@x143 (refl (|~| (or (not $x97) (= ?x26 ?0)) (or (not $x97) (= ?x26 ?0)))))) |
|
2965 |
(let (($x29 (forall ((?v0 Int) )(let ((?x25 (|nat$| ?v0))) |
|
2966 |
(let ((?x26 (|of_nat$| ?x25))) |
|
2967 |
(let (($x27 (= ?x26 ?v0))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2968 |
(let (($x24 (<= 0 ?v0))) |
| 56111 | 2969 |
(=> $x24 $x27)))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2970 |
)) |
| 56111 | 2971 |
(let (($x93 (forall ((?v0 Int) )(let ((?x25 (|nat$| ?v0))) |
2972 |
(let ((?x26 (|of_nat$| ?x25))) |
|
2973 |
(let (($x27 (= ?x26 ?v0))) |
|
2974 |
(or (not (<= 0 ?v0)) $x27))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2975 |
)) |
| 56111 | 2976 |
(let (($x27 (= ?x26 ?0))) |
2977 |
(let (($x99 (not $x97))) |
|
2978 |
(let (($x102 (or $x99 $x27))) |
|
2979 |
(let (($x90 (or (not (<= 0 ?0)) $x27))) |
|
2980 |
(let ((@x101 (monotonicity (rewrite (= (<= 0 ?0) $x97)) (= (not (<= 0 ?0)) $x99)))) |
|
2981 |
(let ((@x95 (|quant-intro| (rewrite (= (=> (<= 0 ?0) $x27) $x90)) (= $x29 $x93)))) |
|
2982 |
(let ((@x109 (trans @x95 (|quant-intro| (monotonicity @x101 (= $x90 $x102)) (= $x93 $x105)) (= $x29 $x105)))) |
|
2983 |
(let ((@x146 (|mp~| (mp (asserted $x29) @x109 $x105) (|nnf-pos| @x143 (|~| $x105 $x105)) $x105))) |
|
2984 |
(let ((@x165 (mp @x146 (|quant-intro| @x162 (= $x105 $x160)) $x160))) |
|
2985 |
(let (($x203 (not $x160))) |
|
2986 |
(let (($x204 (or $x203 $x192 $x197))) |
|
2987 |
(let (($x188 (or (not (>= ?x9 0)) (= ?x11 ?x9)))) |
|
2988 |
(let (($x205 (or $x203 $x188))) |
|
2989 |
(let ((@x194 (monotonicity (rewrite (= (>= ?x9 0) $x189)) (= (not (>= ?x9 0)) $x192)))) |
|
2990 |
(let ((@x202 (monotonicity @x194 (rewrite (= (= ?x11 ?x9) $x197)) (= $x188 $x200)))) |
|
2991 |
(let ((@x213 (trans (monotonicity @x202 (= $x205 (or $x203 $x200))) (rewrite (= (or $x203 $x200) $x204)) (= $x205 $x204)))) |
|
2992 |
(let ((@x214 (mp ((_ |quant-inst| (+ 1 ?x8)) $x205) @x213 $x204))) |
|
2993 |
(let ((@x335 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x197) $x215)) (|unit-resolution| (|unit-resolution| @x214 @x165 $x200) @x329 $x197) $x215))) |
|
2994 |
(let (($x243 (not $x240))) |
|
2995 |
(let (($x250 (or $x243 $x247))) |
|
2996 |
(let (($x253 (or $x203 $x243 $x247))) |
|
2997 |
(let (($x239 (or (not (>= ?x58 0)) (= ?x64 ?x58)))) |
|
2998 |
(let (($x254 (or $x203 $x239))) |
|
2999 |
(let ((@x245 (monotonicity (rewrite (= (>= ?x58 0) $x240)) (= (not (>= ?x58 0)) $x243)))) |
|
3000 |
(let ((@x252 (monotonicity @x245 (rewrite (= (= ?x64 ?x58) $x247)) (= $x239 $x250)))) |
|
3001 |
(let ((@x262 (trans (monotonicity @x252 (= $x254 (or $x203 $x250))) (rewrite (= (or $x203 $x250) $x253)) (= $x254 $x253)))) |
|
3002 |
(let ((@x263 (mp ((_ |quant-inst| (+ ?x57 ?x11)) $x254) @x262 $x253))) |
|
3003 |
(let ((@x341 (|unit-resolution| (|unit-resolution| @x263 @x165 $x250) (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or (not $x215) $x240)) @x335 $x240) $x247))) |
|
3004 |
(let (($x73 (<= ?x64 0))) |
|
3005 |
(let ((@x79 (monotonicity (rewrite (= (< 0 ?x64) (not $x73))) (= (not (< 0 ?x64)) (not (not $x73)))))) |
|
3006 |
(let ((@x83 (trans @x79 (rewrite (= (not (not $x73)) $x73)) (= (not (< 0 ?x64)) $x73)))) |
|
3007 |
(let (($x67 (< 0 ?x64))) |
|
3008 |
(let (($x70 (not $x67))) |
|
3009 |
(let (($x17 (not (< (* 0 ?x11) (|of_nat$| (|nat$| (- ?x11 ?x8))))))) |
|
3010 |
(let ((@x63 (monotonicity (rewrite (= (- ?x11 ?x8) ?x58)) (= (|nat$| (- ?x11 ?x8)) ?x61)))) |
|
3011 |
(let ((@x69 (monotonicity (rewrite (= (* 0 ?x11) 0)) (monotonicity @x63 (= (|of_nat$| (|nat$| (- ?x11 ?x8))) ?x64)) (= (< (* 0 ?x11) (|of_nat$| (|nat$| (- ?x11 ?x8)))) $x67)))) |
|
3012 |
(let ((@x86 (mp (asserted $x17) (trans (monotonicity @x69 (= $x17 $x70)) @x83 (= $x17 $x73)) $x73))) |
|
3013 |
((_ |th-lemma| arith farkas -1 -1 1) @x86 @x335 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x247) $x265)) @x341 $x265) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3014 |
|
| 56111 | 3015 |
72e646f619a773762ccf2e62425eb512a9cd35f3 144 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3016 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3017 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3018 |
(proof |
| 56109 | 3019 |
(let ((?x8 (|of_nat$| |y$|))) |
| 56111 | 3020 |
(let ((?x9 (+ 1 ?x8))) |
3021 |
(let ((?x10 (|nat$| ?x9))) |
|
3022 |
(let ((?x11 (|of_nat$| ?x10))) |
|
3023 |
(let ((?x62 (+ (~ 1) ?x11))) |
|
3024 |
(let ((?x65 (|nat$| ?x62))) |
|
3025 |
(let ((?x281 (|of_nat$| ?x65))) |
|
3026 |
(let ((?x291 (* (~ 1) ?x281))) |
|
3027 |
(let ((?x330 (+ ?x8 ?x291))) |
|
3028 |
(let (($x332 (>= ?x330 0))) |
|
3029 |
(let (($x329 (= ?x8 ?x281))) |
|
3030 |
(let (($x68 (= ?x65 |y$|))) |
|
3031 |
(let (($x102 (<= ?x11 0))) |
|
3032 |
(let (($x112 (not (or (= (not $x102) $x68) (not $x102))))) |
|
3033 |
(let (($x19 (=> (not (ite (< 0 ?x11) true false)) false))) |
|
3034 |
(let (($x12 (< 0 ?x11))) |
|
3035 |
(let (($x13 (ite $x12 true false))) |
|
| 56109 | 3036 |
(let (($x17 (= $x13 (= (|nat$| (- ?x11 1)) |y$|)))) |
| 56111 | 3037 |
(let (($x21 (or false (or $x17 $x19)))) |
3038 |
(let (($x22 (not $x21))) |
|
3039 |
(let (($x74 (= $x12 $x68))) |
|
3040 |
(let (($x89 (or $x74 $x12))) |
|
3041 |
(let ((@x108 (monotonicity (rewrite (= $x12 (not $x102))) (= $x74 (= (not $x102) $x68))))) |
|
3042 |
(let ((@x111 (monotonicity @x108 (rewrite (= $x12 (not $x102))) (= $x89 (or (= (not $x102) $x68) (not $x102)))))) |
|
3043 |
(let ((@x84 (monotonicity (monotonicity (rewrite (= $x13 $x12)) (= (not $x13) (not $x12))) (= $x19 (=> (not $x12) false))))) |
|
3044 |
(let ((@x88 (trans @x84 (rewrite (= (=> (not $x12) false) $x12)) (= $x19 $x12)))) |
|
3045 |
(let ((@x67 (monotonicity (rewrite (= (- ?x11 1) ?x62)) (= (|nat$| (- ?x11 1)) ?x65)))) |
|
3046 |
(let ((@x73 (monotonicity (rewrite (= $x13 $x12)) (monotonicity @x67 (= (= (|nat$| (- ?x11 1)) |y$|) $x68)) (= $x17 (= $x12 $x68))))) |
|
3047 |
(let ((@x91 (monotonicity (trans @x73 (rewrite (= (= $x12 $x68) $x74)) (= $x17 $x74)) @x88 (= (or $x17 $x19) $x89)))) |
|
3048 |
(let ((@x98 (trans (monotonicity @x91 (= $x21 (or false $x89))) (rewrite (= (or false $x89) $x89)) (= $x21 $x89)))) |
|
3049 |
(let ((@x116 (trans (monotonicity @x98 (= $x22 (not $x89))) (monotonicity @x111 (= (not $x89) $x112)) (= $x22 $x112)))) |
|
3050 |
(let ((@x120 (|not-or-elim| (mp (asserted $x22) @x116 $x112) $x102))) |
|
3051 |
(let (($x171 (= $x102 $x68))) |
|
3052 |
(let ((@x119 (|not-or-elim| (mp (asserted $x22) @x116 $x112) (not (= (not $x102) $x68))))) |
|
3053 |
(let ((@x173 (mp @x119 (rewrite (= (not (= (not $x102) $x68)) $x171)) $x171))) |
|
3054 |
(let ((@x219 (|unit-resolution| (|def-axiom| (or (not $x102) $x68 (not $x171))) @x173 (or (not $x102) $x68)))) |
|
3055 |
(let ((@x345 (monotonicity (symm (|unit-resolution| @x219 @x120 $x68) (= |y$| ?x65)) $x329))) |
|
3056 |
(let ((?x241 (* (~ 1) ?x11))) |
|
3057 |
(let ((?x242 (+ ?x8 ?x241))) |
|
3058 |
(let (($x259 (<= ?x242 (~ 1)))) |
|
3059 |
(let (($x240 (= ?x242 (~ 1)))) |
|
3060 |
(let (($x233 (>= ?x8 (~ 1)))) |
|
3061 |
(let (($x328 (>= ?x281 0))) |
|
3062 |
(let (($x311 (= ?x281 0))) |
|
3063 |
(let (($x284 (>= ?x11 1))) |
|
3064 |
(let (($x287 (not $x284))) |
|
3065 |
(let (($x204 (forall ((?v0 Int) )(!(let ((?x30 (|nat$| ?v0))) |
|
3066 |
(let ((?x31 (|of_nat$| ?x30))) |
|
3067 |
(let (($x36 (= ?x31 0))) |
|
3068 |
(let (($x131 (>= ?v0 0))) |
|
3069 |
(or $x131 $x36))))) :pattern ( (|nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3070 |
)) |
| 56111 | 3071 |
(let (($x165 (forall ((?v0 Int) )(let ((?x30 (|nat$| ?v0))) |
3072 |
(let ((?x31 (|of_nat$| ?x30))) |
|
3073 |
(let (($x36 (= ?x31 0))) |
|
3074 |
(let (($x131 (>= ?v0 0))) |
|
3075 |
(or $x131 $x36)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3076 |
)) |
| 56111 | 3077 |
(let ((?x30 (|nat$| ?0))) |
3078 |
(let ((?x31 (|of_nat$| ?x30))) |
|
3079 |
(let (($x36 (= ?x31 0))) |
|
3080 |
(let (($x131 (>= ?0 0))) |
|
3081 |
(let (($x162 (or $x131 $x36))) |
|
3082 |
(let (($x38 (forall ((?v0 Int) )(let ((?x30 (|nat$| ?v0))) |
|
3083 |
(let ((?x31 (|of_nat$| ?x30))) |
|
3084 |
(let (($x36 (= ?x31 0))) |
|
3085 |
(let (($x35 (< ?v0 0))) |
|
3086 |
(=> $x35 $x36)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3087 |
)) |
| 56111 | 3088 |
(let (($x150 (forall ((?v0 Int) )(let ((?x30 (|nat$| ?v0))) |
3089 |
(let ((?x31 (|of_nat$| ?x30))) |
|
3090 |
(let (($x36 (= ?x31 0))) |
|
3091 |
(let (($x35 (< ?v0 0))) |
|
3092 |
(let (($x146 (not $x35))) |
|
3093 |
(or $x146 $x36))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3094 |
)) |
| 56111 | 3095 |
(let ((@x157 (monotonicity (rewrite (= (< ?0 0) (not $x131))) (= (not (< ?0 0)) (not (not $x131)))))) |
3096 |
(let ((@x161 (trans @x157 (rewrite (= (not (not $x131)) $x131)) (= (not (< ?0 0)) $x131)))) |
|
3097 |
(let ((@x167 (|quant-intro| (monotonicity @x161 (= (or (not (< ?0 0)) $x36) $x162)) (= $x150 $x165)))) |
|
3098 |
(let ((@x149 (rewrite (= (=> (< ?0 0) $x36) (or (not (< ?0 0)) $x36))))) |
|
3099 |
(let ((@x170 (mp (asserted $x38) (trans (|quant-intro| @x149 (= $x38 $x150)) @x167 (= $x38 $x165)) $x165))) |
|
3100 |
(let ((@x209 (mp (|mp~| @x170 (|nnf-pos| (refl (|~| $x162 $x162)) (|~| $x165 $x165)) $x165) (|quant-intro| (refl (= $x162 $x162)) (= $x165 $x204)) $x204))) |
|
3101 |
(let (($x266 (not $x204))) |
|
3102 |
(let (($x316 (or $x266 $x284 $x311))) |
|
3103 |
(let ((@x286 (rewrite (= (>= ?x62 0) $x284)))) |
|
3104 |
(let ((@x321 (monotonicity (monotonicity @x286 (= (or (>= ?x62 0) $x311) (or $x284 $x311))) (= (or $x266 (or (>= ?x62 0) $x311)) (or $x266 (or $x284 $x311)))))) |
|
3105 |
(let ((@x325 (trans @x321 (rewrite (= (or $x266 (or $x284 $x311)) $x316)) (= (or $x266 (or (>= ?x62 0) $x311)) $x316)))) |
|
3106 |
(let ((@x326 (mp ((_ |quant-inst| (+ (~ 1) ?x11)) (or $x266 (or (>= ?x62 0) $x311))) @x325 $x316))) |
|
3107 |
(let ((@x353 (|unit-resolution| @x326 @x209 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x287 (not $x102))) @x120 $x287) $x311))) |
|
3108 |
(let ((@x362 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1) (or $x233 (not $x328) (not $x332))) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x311) $x328)) @x353 $x328) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x329) $x332)) @x345 $x332) $x233))) |
|
3109 |
(let (($x236 (not $x233))) |
|
3110 |
(let (($x244 (or $x236 $x240))) |
|
3111 |
(let (($x198 (forall ((?v0 Int) )(!(let ((?x30 (|nat$| ?v0))) |
|
3112 |
(let ((?x31 (|of_nat$| ?x30))) |
|
3113 |
(let (($x32 (= ?x31 ?v0))) |
|
3114 |
(let (($x131 (>= ?v0 0))) |
|
3115 |
(let (($x133 (not $x131))) |
|
3116 |
(or $x133 $x32)))))) :pattern ( (|nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3117 |
)) |
| 56111 | 3118 |
(let (($x139 (forall ((?v0 Int) )(let ((?x30 (|nat$| ?v0))) |
3119 |
(let ((?x31 (|of_nat$| ?x30))) |
|
3120 |
(let (($x32 (= ?x31 ?v0))) |
|
3121 |
(let (($x131 (>= ?v0 0))) |
|
3122 |
(let (($x133 (not $x131))) |
|
3123 |
(or $x133 $x32))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3124 |
)) |
| 56111 | 3125 |
(let ((@x200 (refl (= (or (not $x131) (= ?x31 ?0)) (or (not $x131) (= ?x31 ?0)))))) |
3126 |
(let ((@x181 (refl (|~| (or (not $x131) (= ?x31 ?0)) (or (not $x131) (= ?x31 ?0)))))) |
|
3127 |
(let (($x34 (forall ((?v0 Int) )(let ((?x30 (|nat$| ?v0))) |
|
3128 |
(let ((?x31 (|of_nat$| ?x30))) |
|
3129 |
(let (($x32 (= ?x31 ?v0))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3130 |
(let (($x29 (<= 0 ?v0))) |
| 56111 | 3131 |
(=> $x29 $x32)))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3132 |
)) |
| 56111 | 3133 |
(let (($x127 (forall ((?v0 Int) )(let ((?x30 (|nat$| ?v0))) |
3134 |
(let ((?x31 (|of_nat$| ?x30))) |
|
3135 |
(let (($x32 (= ?x31 ?v0))) |
|
3136 |
(or (not (<= 0 ?v0)) $x32))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3137 |
)) |
| 56111 | 3138 |
(let (($x32 (= ?x31 ?0))) |
3139 |
(let (($x133 (not $x131))) |
|
3140 |
(let (($x136 (or $x133 $x32))) |
|
3141 |
(let (($x124 (or (not (<= 0 ?0)) $x32))) |
|
3142 |
(let ((@x135 (monotonicity (rewrite (= (<= 0 ?0) $x131)) (= (not (<= 0 ?0)) $x133)))) |
|
3143 |
(let ((@x129 (|quant-intro| (rewrite (= (=> (<= 0 ?0) $x32) $x124)) (= $x34 $x127)))) |
|
3144 |
(let ((@x143 (trans @x129 (|quant-intro| (monotonicity @x135 (= $x124 $x136)) (= $x127 $x139)) (= $x34 $x139)))) |
|
3145 |
(let ((@x184 (|mp~| (mp (asserted $x34) @x143 $x139) (|nnf-pos| @x181 (|~| $x139 $x139)) $x139))) |
|
3146 |
(let ((@x203 (mp @x184 (|quant-intro| @x200 (= $x139 $x198)) $x198))) |
|
3147 |
(let (($x247 (not $x198))) |
|
3148 |
(let (($x248 (or $x247 $x236 $x240))) |
|
3149 |
(let (($x231 (= ?x11 ?x9))) |
|
3150 |
(let (($x227 (>= ?x9 0))) |
|
3151 |
(let (($x228 (not $x227))) |
|
3152 |
(let (($x232 (or $x228 $x231))) |
|
3153 |
(let (($x249 (or $x247 $x232))) |
|
3154 |
(let ((@x246 (monotonicity (monotonicity (rewrite (= $x227 $x233)) (= $x228 $x236)) (rewrite (= $x231 $x240)) (= $x232 $x244)))) |
|
3155 |
(let ((@x257 (trans (monotonicity @x246 (= $x249 (or $x247 $x244))) (rewrite (= (or $x247 $x244) $x248)) (= $x249 $x248)))) |
|
3156 |
(let ((@x258 (mp ((_ |quant-inst| (+ 1 ?x8)) $x249) @x257 $x248))) |
|
3157 |
(let ((@x368 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x240) $x259)) (|unit-resolution| (|unit-resolution| @x258 @x203 $x244) @x362 $x240) $x259))) |
|
3158 |
((_ |th-lemma| arith farkas 1 -1 -1 1) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x311) $x328)) @x353 $x328) @x120 @x368 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x329) $x332)) @x345 $x332) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3159 |
|
| 56111 | 3160 |
bda6be21dc699a816acc75c786757ad36dd913c8 78 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3161 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3162 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3163 |
(proof |
| 56111 | 3164 |
(let ((?x51 (* (~ 1) |x$|))) |
3165 |
(let (($x69 (>= |x$| 0))) |
|
3166 |
(let ((?x76 (ite $x69 |x$| ?x51))) |
|
3167 |
(let ((?x213 (* (~ 1) ?x76))) |
|
3168 |
(let ((?x216 (+ ?x51 ?x213))) |
|
3169 |
(let (($x226 (<= ?x216 0))) |
|
3170 |
(let (($x182 (= ?x51 ?x76))) |
|
3171 |
(let (($x70 (not $x69))) |
|
3172 |
(let (($x181 (= |x$| ?x76))) |
|
3173 |
(let ((@x222 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x181) (<= (+ |x$| ?x213) 0))) (|unit-resolution| (|def-axiom| (or $x70 $x181)) (hypothesis $x69) $x181) (<= (+ |x$| ?x213) 0)))) |
|
3174 |
(let (($x189 (>= ?x76 0))) |
|
3175 |
(let (($x190 (not $x189))) |
|
3176 |
(let (($x169 (forall ((?v0 Int) )(!(let ((?x21 (|nat$| ?v0))) |
|
3177 |
(let ((?x22 (|of_nat$| ?x21))) |
|
3178 |
(let (($x23 (= ?x22 ?v0))) |
|
3179 |
(let (($x106 (>= ?v0 0))) |
|
3180 |
(let (($x108 (not $x106))) |
|
3181 |
(or $x108 $x23)))))) :pattern ( (|nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3182 |
)) |
| 56111 | 3183 |
(let (($x114 (forall ((?v0 Int) )(let ((?x21 (|nat$| ?v0))) |
3184 |
(let ((?x22 (|of_nat$| ?x21))) |
|
3185 |
(let (($x23 (= ?x22 ?v0))) |
|
3186 |
(let (($x106 (>= ?v0 0))) |
|
3187 |
(let (($x108 (not $x106))) |
|
3188 |
(or $x108 $x23))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3189 |
)) |
| 56111 | 3190 |
(let ((?x21 (|nat$| ?0))) |
3191 |
(let ((?x22 (|of_nat$| ?x21))) |
|
3192 |
(let (($x23 (= ?x22 ?0))) |
|
3193 |
(let (($x106 (>= ?0 0))) |
|
3194 |
(let (($x108 (not $x106))) |
|
3195 |
(let (($x111 (or $x108 $x23))) |
|
3196 |
(let (($x25 (forall ((?v0 Int) )(let ((?x21 (|nat$| ?v0))) |
|
3197 |
(let ((?x22 (|of_nat$| ?x21))) |
|
3198 |
(let (($x23 (= ?x22 ?v0))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3199 |
(let (($x20 (<= 0 ?v0))) |
| 56111 | 3200 |
(=> $x20 $x23)))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3201 |
)) |
| 56111 | 3202 |
(let (($x102 (forall ((?v0 Int) )(let ((?x21 (|nat$| ?v0))) |
3203 |
(let ((?x22 (|of_nat$| ?x21))) |
|
3204 |
(let (($x23 (= ?x22 ?v0))) |
|
3205 |
(or (not (<= 0 ?v0)) $x23))))) |
|
3206 |
)) |
|
3207 |
(let ((@x110 (monotonicity (rewrite (= (<= 0 ?0) $x106)) (= (not (<= 0 ?0)) $x108)))) |
|
3208 |
(let ((@x116 (|quant-intro| (monotonicity @x110 (= (or (not (<= 0 ?0)) $x23) $x111)) (= $x102 $x114)))) |
|
3209 |
(let ((@x101 (rewrite (= (=> (<= 0 ?0) $x23) (or (not (<= 0 ?0)) $x23))))) |
|
3210 |
(let ((@x119 (mp (asserted $x25) (trans (|quant-intro| @x101 (= $x25 $x102)) @x116 (= $x25 $x114)) $x114))) |
|
3211 |
(let ((@x174 (mp (|mp~| @x119 (|nnf-pos| (refl (|~| $x111 $x111)) (|~| $x114 $x114)) $x114) (|quant-intro| (refl (= $x111 $x111)) (= $x114 $x169)) $x169))) |
|
3212 |
(let ((?x81 (|nat$| ?x76))) |
|
3213 |
(let ((?x84 (|of_nat$| ?x81))) |
|
3214 |
(let (($x87 (= ?x84 ?x76))) |
|
3215 |
(let (($x90 (not $x87))) |
|
3216 |
(let (($x7 (< |x$| 0))) |
|
3217 |
(let ((?x9 (ite $x7 (- |x$|) |x$|))) |
|
| 56109 | 3218 |
(let (($x13 (not (= (|of_nat$| (|nat$| ?x9)) ?x9)))) |
| 56111 | 3219 |
(let (($x91 (= (not (= (|of_nat$| (|nat$| (ite $x7 ?x51 |x$|))) (ite $x7 ?x51 |x$|))) $x90))) |
3220 |
(let ((?x54 (ite $x7 ?x51 |x$|))) |
|
3221 |
(let ((?x57 (|nat$| ?x54))) |
|
3222 |
(let ((?x60 (|of_nat$| ?x57))) |
|
3223 |
(let (($x63 (= ?x60 ?x54))) |
|
3224 |
(let ((@x80 (trans (monotonicity (rewrite (= $x7 $x70)) (= ?x54 (ite $x70 ?x51 |x$|))) (rewrite (= (ite $x70 ?x51 |x$|) ?x76)) (= ?x54 ?x76)))) |
|
3225 |
(let ((@x89 (monotonicity (monotonicity (monotonicity @x80 (= ?x57 ?x81)) (= ?x60 ?x84)) @x80 (= $x63 $x87)))) |
|
3226 |
(let ((@x59 (monotonicity (monotonicity (rewrite (= (- |x$|) ?x51)) (= ?x9 ?x54)) (= (|nat$| ?x9) ?x57)))) |
|
3227 |
(let ((@x65 (monotonicity (monotonicity @x59 (= (|of_nat$| (|nat$| ?x9)) ?x60)) (monotonicity (rewrite (= (- |x$|) ?x51)) (= ?x9 ?x54)) (= (= (|of_nat$| (|nat$| ?x9)) ?x9) $x63)))) |
|
3228 |
(let ((@x94 (trans (monotonicity @x65 (= $x13 (not $x63))) (monotonicity @x89 $x91) (= $x13 $x90)))) |
|
3229 |
(let ((@x95 (mp (asserted $x13) @x94 $x90))) |
|
3230 |
(let (($x198 (or (not $x169) $x190 $x87))) |
|
3231 |
(let ((@x203 (mp ((_ |quant-inst| (ite $x69 |x$| ?x51)) (or (not $x169) (or $x190 $x87))) (rewrite (= (or (not $x169) (or $x190 $x87)) $x198)) $x198))) |
|
3232 |
(let ((@x224 ((_ |th-lemma| arith farkas -1 1 1) (hypothesis $x69) (|unit-resolution| @x203 @x95 @x174 $x190) @x222 false))) |
|
3233 |
(let ((@x225 (lemma @x224 $x70))) |
|
3234 |
(let ((@x232 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x182) $x226)) (|unit-resolution| (|def-axiom| (or $x69 $x182)) @x225 $x182) $x226))) |
|
3235 |
(let (($x205 (<= ?x76 0))) |
|
3236 |
(let ((@x235 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or $x205 $x189)) (|unit-resolution| @x203 @x95 @x174 $x190) $x205))) |
|
3237 |
((_ |th-lemma| arith farkas 1 1 1) @x235 @x225 @x232 false))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3238 |
|
| 56111 | 3239 |
777f9032b35b7e1c0dce62f13109424c73d5d094 312 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3240 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3241 |
((set-logic AUFLIA) |
| 56109 | 3242 |
(declare-fun ?v1!0 (|Nat$|) |Nat$|) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3243 |
(proof |
| 56109 | 3244 |
(let ((?x23 (|of_nat$| |m$|))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3245 |
(let ((?x24 (* 4 ?x23))) |
| 56111 | 3246 |
(let ((?x110 (+ 1 ?x24))) |
3247 |
(let ((?x113 (|nat$| ?x110))) |
|
3248 |
(let ((?x344 (|of_nat$| ?x113))) |
|
3249 |
(let ((?x491 (* (~ 1) ?x344))) |
|
3250 |
(let ((?x492 (+ ?x24 ?x491))) |
|
3251 |
(let (($x509 (>= ?x492 (~ 1)))) |
|
3252 |
(let (($x489 (= ?x492 (~ 1)))) |
|
3253 |
(let (($x481 (>= ?x23 0))) |
|
3254 |
(let (($x345 (<= ?x344 1))) |
|
3255 |
(let (($x373 (not $x345))) |
|
3256 |
(let (($x351 (forall ((?v1 |Nat$|) )(!(let ((?x23 (|of_nat$| |m$|))) |
|
3257 |
(let ((?x24 (* 4 ?x23))) |
|
3258 |
(let ((?x110 (+ 1 ?x24))) |
|
3259 |
(let ((?x113 (|nat$| ?x110))) |
|
3260 |
(let (($x348 (= ?v1 ?x113))) |
|
3261 |
(let ((?x12 (|nat$| 1))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3262 |
(let (($x13 (= ?v1 ?x12))) |
| 56111 | 3263 |
(let (($x346 (|dvd$| ?v1 ?x113))) |
3264 |
(let (($x347 (not $x346))) |
|
3265 |
(or $x347 $x13 $x348)))))))))) :pattern ( (|dvd$| ?v1 (|nat$| (+ 1 (* 4 (|of_nat$| |m$|))))) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3266 |
)) |
| 56111 | 3267 |
(let (($x352 (not $x351))) |
3268 |
(let (($x353 (or $x345 $x352))) |
|
3269 |
(let (($x354 (not $x353))) |
|
3270 |
(let (($x116 (|prime_nat$| ?x113))) |
|
3271 |
(let (($x122 (not $x116))) |
|
3272 |
(let (($x355 (or $x122 $x354))) |
|
3273 |
(let ((?x357 (?v1!0 ?x113))) |
|
3274 |
(let (($x361 (= ?x357 ?x113))) |
|
3275 |
(let ((?x12 (|nat$| 1))) |
|
3276 |
(let (($x360 (= ?x357 ?x12))) |
|
3277 |
(let (($x358 (|dvd$| ?x357 ?x113))) |
|
3278 |
(let (($x359 (not $x358))) |
|
3279 |
(let (($x362 (or $x359 $x360 $x361))) |
|
3280 |
(let (($x363 (not $x362))) |
|
3281 |
(let (($x364 (or $x116 $x345 $x363))) |
|
3282 |
(let (($x365 (not $x364))) |
|
3283 |
(let (($x356 (not $x355))) |
|
3284 |
(let (($x366 (or $x356 $x365))) |
|
3285 |
(let (($x367 (not $x366))) |
|
3286 |
(let (($x321 (forall ((?v0 |Nat$|) )(!(let (($x217 (or (not (|dvd$| (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (|nat$| 1)) (= (?v1!0 ?v0) ?v0)))) |
|
3287 |
(let (($x218 (not $x217))) |
|
| 56109 | 3288 |
(let ((?x8 (|of_nat$| ?v0))) |
| 56111 | 3289 |
(let (($x87 (<= ?x8 1))) |
| 56109 | 3290 |
(let (($x6 (|prime_nat$| ?v0))) |
| 56111 | 3291 |
(let (($x245 (or $x6 $x87 $x218))) |
3292 |
(let (($x293 (forall ((?v1 |Nat$|) )(!(let ((?x12 (|nat$| 1))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3293 |
(let (($x13 (= ?v1 ?x12))) |
| 56109 | 3294 |
(or (not (|dvd$| ?v1 ?v0)) $x13 (= ?v1 ?v0)))) :pattern ( (|dvd$| ?v1 ?v0) ))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3295 |
)) |
| 56111 | 3296 |
(let (($x198 (not $x6))) |
3297 |
(not (or (not (or $x198 (not (or $x87 (not $x293))))) (not $x245))))))))))) :pattern ( (|prime_nat$| ?v0) ) :pattern ( (|of_nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3298 |
)) |
| 56111 | 3299 |
(let (($x288 (forall ((?v0 |Nat$|) )(let (($x217 (or (not (|dvd$| (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (|nat$| 1)) (= (?v1!0 ?v0) ?v0)))) |
3300 |
(let (($x218 (not $x217))) |
|
| 56109 | 3301 |
(let ((?x8 (|of_nat$| ?v0))) |
| 56111 | 3302 |
(let (($x87 (<= ?x8 1))) |
| 56109 | 3303 |
(let (($x6 (|prime_nat$| ?v0))) |
| 56111 | 3304 |
(let (($x245 (or $x6 $x87 $x218))) |
3305 |
(let (($x94 (forall ((?v1 |Nat$|) )(let ((?x12 (|nat$| 1))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3306 |
(let (($x13 (= ?v1 ?x12))) |
| 56109 | 3307 |
(or (not (|dvd$| ?v1 ?v0)) $x13 (= ?v1 ?v0))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3308 |
)) |
| 56111 | 3309 |
(let (($x219 (not $x94))) |
3310 |
(let (($x271 (not (or $x87 $x219)))) |
|
3311 |
(let (($x198 (not $x6))) |
|
3312 |
(let (($x274 (or $x198 $x271))) |
|
3313 |
(not (or (not $x274) (not $x245))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3314 |
)) |
| 56111 | 3315 |
(let (($x217 (or (not (|dvd$| (?v1!0 ?0) ?0)) (= (?v1!0 ?0) ?x12) (= (?v1!0 ?0) ?0)))) |
3316 |
(let (($x218 (not $x217))) |
|
| 56109 | 3317 |
(let ((?x8 (|of_nat$| ?0))) |
| 56111 | 3318 |
(let (($x87 (<= ?x8 1))) |
| 56109 | 3319 |
(let (($x6 (|prime_nat$| ?0))) |
| 56111 | 3320 |
(let (($x245 (or $x6 $x87 $x218))) |
3321 |
(let (($x293 (forall ((?v1 |Nat$|) )(!(let ((?x12 (|nat$| 1))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3322 |
(let (($x13 (= ?v1 ?x12))) |
| 56109 | 3323 |
(or (not (|dvd$| ?v1 ?0)) $x13 (= ?v1 ?0)))) :pattern ( (|dvd$| ?v1 ?0) ))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3324 |
)) |
| 56111 | 3325 |
(let (($x198 (not $x6))) |
3326 |
(let (($x94 (forall ((?v1 |Nat$|) )(let ((?x12 (|nat$| 1))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3327 |
(let (($x13 (= ?v1 ?x12))) |
| 56109 | 3328 |
(or (not (|dvd$| ?v1 ?0)) $x13 (= ?v1 ?0))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3329 |
)) |
| 56111 | 3330 |
(let (($x219 (not $x94))) |
3331 |
(let (($x271 (not (or $x87 $x219)))) |
|
3332 |
(let (($x274 (or $x198 $x271))) |
|
3333 |
(let (($x283 (not (or (not $x274) (not $x245))))) |
|
3334 |
(let (($x317 (= $x283 (not (or (not (or $x198 (not (or $x87 (not $x293))))) (not $x245)))))) |
|
3335 |
(let (($x314 (= (or (not $x274) (not $x245)) (or (not (or $x198 (not (or $x87 (not $x293))))) (not $x245))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3336 |
(let (($x13 (= ?0 ?x12))) |
| 56111 | 3337 |
(let (($x91 (or (not (|dvd$| ?0 ?1)) $x13 (= ?0 ?1)))) |
3338 |
(let ((@x300 (monotonicity (|quant-intro| (refl (= $x91 $x91)) (= $x94 $x293)) (= $x219 (not $x293))))) |
|
3339 |
(let ((@x306 (monotonicity (monotonicity @x300 (= (or $x87 $x219) (or $x87 (not $x293)))) (= $x271 (not (or $x87 (not $x293))))))) |
|
3340 |
(let ((@x312 (monotonicity (monotonicity @x306 (= $x274 (or $x198 (not (or $x87 (not $x293)))))) (= (not $x274) (not (or $x198 (not (or $x87 (not $x293))))))))) |
|
3341 |
(let ((@x323 (|quant-intro| (monotonicity (monotonicity @x312 $x314) $x317) (= $x288 $x321)))) |
|
3342 |
(let (($x253 (forall ((?v0 |Nat$|) )(let (($x217 (or (not (|dvd$| (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (|nat$| 1)) (= (?v1!0 ?v0) ?v0)))) |
|
3343 |
(let (($x218 (not $x217))) |
|
| 56109 | 3344 |
(let ((?x8 (|of_nat$| ?v0))) |
| 56111 | 3345 |
(let (($x87 (<= ?x8 1))) |
| 56109 | 3346 |
(let (($x6 (|prime_nat$| ?v0))) |
| 56111 | 3347 |
(let (($x245 (or $x6 $x87 $x218))) |
3348 |
(let (($x94 (forall ((?v1 |Nat$|) )(let ((?x12 (|nat$| 1))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3349 |
(let (($x13 (= ?v1 ?x12))) |
| 56109 | 3350 |
(or (not (|dvd$| ?v1 ?v0)) $x13 (= ?v1 ?v0))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3351 |
)) |
| 56111 | 3352 |
(let (($x88 (not $x87))) |
3353 |
(let (($x97 (and $x88 $x94))) |
|
3354 |
(let (($x198 (not $x6))) |
|
3355 |
(let (($x227 (or $x198 $x97))) |
|
3356 |
(and $x227 $x245))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3357 |
)) |
| 56111 | 3358 |
(let ((@x276 (monotonicity (rewrite (= (and (not $x87) $x94) $x271)) (= (or $x198 (and (not $x87) $x94)) $x274)))) |
3359 |
(let ((@x279 (monotonicity @x276 (= (and (or $x198 (and (not $x87) $x94)) $x245) (and $x274 $x245))))) |
|
3360 |
(let ((@x287 (trans @x279 (rewrite (= (and $x274 $x245) $x283)) (= (and (or $x198 (and (not $x87) $x94)) $x245) $x283)))) |
|
3361 |
(let (($x231 (forall ((?v0 |Nat$|) )(let (($x217 (or (not (|dvd$| (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (|nat$| 1)) (= (?v1!0 ?v0) ?v0)))) |
|
3362 |
(let (($x218 (not $x217))) |
|
| 56109 | 3363 |
(let ((?x8 (|of_nat$| ?v0))) |
| 56111 | 3364 |
(let (($x87 (<= ?x8 1))) |
3365 |
(let (($x88 (not $x87))) |
|
3366 |
(let (($x209 (not $x88))) |
|
3367 |
(let (($x222 (or $x209 $x218))) |
|
| 56109 | 3368 |
(let (($x6 (|prime_nat$| ?v0))) |
| 56111 | 3369 |
(let (($x226 (or $x6 $x222))) |
3370 |
(let (($x94 (forall ((?v1 |Nat$|) )(let ((?x12 (|nat$| 1))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3371 |
(let (($x13 (= ?v1 ?x12))) |
| 56109 | 3372 |
(or (not (|dvd$| ?v1 ?v0)) $x13 (= ?v1 ?v0))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3373 |
)) |
| 56111 | 3374 |
(let (($x97 (and $x88 $x94))) |
3375 |
(let (($x198 (not $x6))) |
|
3376 |
(let (($x227 (or $x198 $x97))) |
|
3377 |
(and $x227 $x226))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3378 |
)) |
| 56111 | 3379 |
(let (($x88 (not $x87))) |
3380 |
(let (($x97 (and $x88 $x94))) |
|
3381 |
(let (($x227 (or $x198 $x97))) |
|
3382 |
(let (($x250 (and $x227 $x245))) |
|
3383 |
(let (($x209 (not $x88))) |
|
3384 |
(let (($x222 (or $x209 $x218))) |
|
3385 |
(let (($x226 (or $x6 $x222))) |
|
3386 |
(let (($x228 (and $x227 $x226))) |
|
3387 |
(let ((@x244 (monotonicity (monotonicity (rewrite (= $x209 $x87)) (= $x222 (or $x87 $x218))) (= $x226 (or $x6 (or $x87 $x218)))))) |
|
3388 |
(let ((@x249 (trans @x244 (rewrite (= (or $x6 (or $x87 $x218)) $x245)) (= $x226 $x245)))) |
|
3389 |
(let (($x103 (forall ((?v0 |Nat$|) )(let (($x94 (forall ((?v1 |Nat$|) )(let ((?x12 (|nat$| 1))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3390 |
(let (($x13 (= ?v1 ?x12))) |
| 56109 | 3391 |
(or (not (|dvd$| ?v1 ?v0)) $x13 (= ?v1 ?v0))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3392 |
)) |
| 56109 | 3393 |
(let ((?x8 (|of_nat$| ?v0))) |
| 56111 | 3394 |
(let (($x87 (<= ?x8 1))) |
3395 |
(let (($x88 (not $x87))) |
|
3396 |
(let (($x97 (and $x88 $x94))) |
|
| 56109 | 3397 |
(let (($x6 (|prime_nat$| ?v0))) |
| 56111 | 3398 |
(= $x6 $x97)))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3399 |
)) |
| 56111 | 3400 |
(let ((@x225 (|nnf-neg| (refl (|~| $x209 $x209)) (sk (|~| $x219 $x218)) (|~| (not $x97) $x222)))) |
3401 |
(let ((@x208 (monotonicity (refl (|~| $x88 $x88)) (|nnf-pos| (refl (|~| $x91 $x91)) (|~| $x94 $x94)) (|~| $x97 $x97)))) |
|
3402 |
(let ((@x230 (|nnf-pos| (refl (|~| $x6 $x6)) (refl (|~| $x198 $x198)) @x208 @x225 (|~| (= $x6 $x97) $x228)))) |
|
| 56109 | 3403 |
(let (($x20 (forall ((?v0 |Nat$|) )(let (($x17 (forall ((?v1 |Nat$|) )(let (($x11 (|dvd$| ?v1 ?v0))) |
3404 |
(=> $x11 (or (= ?v1 (|nat$| 1)) (= ?v1 ?v0))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3405 |
)) |
| 56111 | 3406 |
(let ((?x8 (|of_nat$| ?v0))) |
3407 |
(let (($x9 (< 1 ?x8))) |
|
| 56109 | 3408 |
(let (($x6 (|prime_nat$| ?v0))) |
| 56111 | 3409 |
(= $x6 (and $x9 $x17))))))) |
3410 |
)) |
|
3411 |
(let (($x84 (forall ((?v0 |Nat$|) )(let (($x70 (forall ((?v1 |Nat$|) )(or (not (|dvd$| ?v1 ?v0)) (or (= ?v1 (|nat$| 1)) (= ?v1 ?v0)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3412 |
)) |
| 56111 | 3413 |
(let ((?x8 (|of_nat$| ?v0))) |
3414 |
(let (($x9 (< 1 ?x8))) |
|
3415 |
(let (($x73 (and $x9 $x70))) |
|
3416 |
(let (($x6 (|prime_nat$| ?v0))) |
|
3417 |
(= $x6 $x73))))))) |
|
3418 |
)) |
|
3419 |
(let (($x100 (= $x6 $x97))) |
|
3420 |
(let (($x70 (forall ((?v1 |Nat$|) )(or (not (|dvd$| ?v1 ?0)) (or (= ?v1 (|nat$| 1)) (= ?v1 ?0)))) |
|
3421 |
)) |
|
3422 |
(let (($x9 (< 1 ?x8))) |
|
3423 |
(let (($x73 (and $x9 $x70))) |
|
3424 |
(let (($x79 (= $x6 $x73))) |
|
3425 |
(let ((@x93 (rewrite (= (or (not (|dvd$| ?0 ?1)) (or $x13 (= ?0 ?1))) $x91)))) |
|
3426 |
(let ((@x99 (monotonicity (rewrite (= $x9 $x88)) (|quant-intro| @x93 (= $x70 $x94)) (= $x73 $x97)))) |
|
| 56109 | 3427 |
(let (($x17 (forall ((?v1 |Nat$|) )(let (($x11 (|dvd$| ?v1 ?0))) |
3428 |
(=> $x11 (or (= ?v1 (|nat$| 1)) (= ?v1 ?0))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3429 |
)) |
| 56111 | 3430 |
(let (($x19 (= $x6 (and $x9 $x17)))) |
3431 |
(let (($x67 (or (not (|dvd$| ?0 ?1)) (or $x13 (= ?0 ?1))))) |
|
3432 |
(let ((@x72 (|quant-intro| (rewrite (= (=> (|dvd$| ?0 ?1) (or $x13 (= ?0 ?1))) $x67)) (= $x17 $x70)))) |
|
3433 |
(let ((@x78 (monotonicity (monotonicity @x72 (= (and $x9 $x17) $x73)) (= $x19 (= $x6 $x73))))) |
|
3434 |
(let ((@x86 (|quant-intro| (trans @x78 (rewrite (= (= $x6 $x73) $x79)) (= $x19 $x79)) (= $x20 $x84)))) |
|
3435 |
(let ((@x107 (trans @x86 (|quant-intro| (monotonicity @x99 (= $x79 $x100)) (= $x84 $x103)) (= $x20 $x103)))) |
|
3436 |
(let ((@x234 (|mp~| (mp (asserted $x20) @x107 $x103) (|nnf-pos| @x230 (|~| $x103 $x231)) $x231))) |
|
3437 |
(let ((@x235 (mp @x234 (|quant-intro| (monotonicity @x249 (= $x228 $x250)) (= $x231 $x253)) $x253))) |
|
3438 |
(let ((@x324 (mp (mp @x235 (|quant-intro| @x287 (= $x253 $x288)) $x288) @x323 $x321))) |
|
3439 |
(let (($x371 (or (not $x321) $x367))) |
|
3440 |
(let ((@x372 ((_ |quant-inst| (|nat$| ?x110)) $x371))) |
|
3441 |
(let ((@x530 (|unit-resolution| (|def-axiom| (or $x366 $x355)) (|unit-resolution| @x372 @x324 $x367) $x355))) |
|
3442 |
(let (($x137 (not (or $x122 (>= ?x23 1))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3443 |
(let (($x28 (<= 1 ?x23))) |
| 56109 | 3444 |
(let (($x29 (=> (|prime_nat$| (|nat$| (+ ?x24 1))) $x28))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3445 |
(let (($x30 (not $x29))) |
| 56111 | 3446 |
(let ((@x136 (monotonicity (rewrite (= $x28 (>= ?x23 1))) (= (or $x122 $x28) (or $x122 (>= ?x23 1)))))) |
3447 |
(let ((@x115 (monotonicity (rewrite (= (+ ?x24 1) ?x110)) (= (|nat$| (+ ?x24 1)) ?x113)))) |
|
3448 |
(let ((@x121 (monotonicity (monotonicity @x115 (= (|prime_nat$| (|nat$| (+ ?x24 1))) $x116)) (= $x29 (=> $x116 $x28))))) |
|
3449 |
(let ((@x127 (trans @x121 (rewrite (= (=> $x116 $x28) (or $x122 $x28))) (= $x29 (or $x122 $x28))))) |
|
3450 |
(let ((@x141 (trans (monotonicity @x127 (= $x30 (not (or $x122 $x28)))) (monotonicity @x136 (= (not (or $x122 $x28)) $x137)) (= $x30 $x137)))) |
|
3451 |
(let ((@x143 (|not-or-elim| (mp (asserted $x30) @x141 $x137) $x116))) |
|
3452 |
(let ((@x533 (|unit-resolution| (|unit-resolution| (|def-axiom| (or $x356 $x122 $x354)) @x143 (or $x356 $x354)) @x530 $x354))) |
|
3453 |
(let ((@x538 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or (not (<= ?x344 0)) $x345)) (|unit-resolution| (|def-axiom| (or $x353 $x373)) @x533 $x373) (not (<= ?x344 0))))) |
|
3454 |
(let ((@x542 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not (= ?x344 0)) (<= ?x344 0))) @x538 (not (= ?x344 0))))) |
|
3455 |
(let (($x510 (= ?x344 0))) |
|
3456 |
(let (($x512 (or $x481 $x510))) |
|
3457 |
(let (($x338 (forall ((?v0 Int) )(!(let ((?x37 (|nat$| ?v0))) |
|
3458 |
(let ((?x38 (|of_nat$| ?x37))) |
|
3459 |
(let (($x43 (= ?x38 0))) |
|
3460 |
(let (($x157 (>= ?v0 0))) |
|
3461 |
(or $x157 $x43))))) :pattern ( (|nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3462 |
)) |
| 56111 | 3463 |
(let (($x190 (forall ((?v0 Int) )(let ((?x37 (|nat$| ?v0))) |
3464 |
(let ((?x38 (|of_nat$| ?x37))) |
|
3465 |
(let (($x43 (= ?x38 0))) |
|
3466 |
(let (($x157 (>= ?v0 0))) |
|
3467 |
(or $x157 $x43)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3468 |
)) |
| 56111 | 3469 |
(let ((?x37 (|nat$| ?0))) |
3470 |
(let ((?x38 (|of_nat$| ?x37))) |
|
3471 |
(let (($x43 (= ?x38 0))) |
|
3472 |
(let (($x157 (>= ?0 0))) |
|
3473 |
(let (($x187 (or $x157 $x43))) |
|
3474 |
(let (($x45 (forall ((?v0 Int) )(let ((?x37 (|nat$| ?v0))) |
|
3475 |
(let ((?x38 (|of_nat$| ?x37))) |
|
3476 |
(let (($x43 (= ?x38 0))) |
|
3477 |
(let (($x42 (< ?v0 0))) |
|
3478 |
(=> $x42 $x43)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3479 |
)) |
| 56111 | 3480 |
(let (($x175 (forall ((?v0 Int) )(let ((?x37 (|nat$| ?v0))) |
3481 |
(let ((?x38 (|of_nat$| ?x37))) |
|
3482 |
(let (($x43 (= ?x38 0))) |
|
3483 |
(let (($x42 (< ?v0 0))) |
|
3484 |
(let (($x171 (not $x42))) |
|
3485 |
(or $x171 $x43))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3486 |
)) |
| 56111 | 3487 |
(let ((@x182 (monotonicity (rewrite (= (< ?0 0) (not $x157))) (= (not (< ?0 0)) (not (not $x157)))))) |
3488 |
(let ((@x186 (trans @x182 (rewrite (= (not (not $x157)) $x157)) (= (not (< ?0 0)) $x157)))) |
|
3489 |
(let ((@x192 (|quant-intro| (monotonicity @x186 (= (or (not (< ?0 0)) $x43) $x187)) (= $x175 $x190)))) |
|
3490 |
(let ((@x174 (rewrite (= (=> (< ?0 0) $x43) (or (not (< ?0 0)) $x43))))) |
|
3491 |
(let ((@x195 (mp (asserted $x45) (trans (|quant-intro| @x174 (= $x45 $x175)) @x192 (= $x45 $x190)) $x190))) |
|
3492 |
(let ((@x343 (mp (|mp~| @x195 (|nnf-pos| (refl (|~| $x187 $x187)) (|~| $x190 $x190)) $x190) (|quant-intro| (refl (= $x187 $x187)) (= $x190 $x338)) $x338))) |
|
3493 |
(let (($x515 (not $x338))) |
|
3494 |
(let (($x516 (or $x515 $x481 $x510))) |
|
3495 |
(let ((@x483 (rewrite (= (>= ?x110 0) $x481)))) |
|
3496 |
(let ((@x514 (monotonicity @x483 (= (or (>= ?x110 0) $x510) $x512)))) |
|
3497 |
(let ((@x521 (monotonicity @x514 (= (or $x515 (or (>= ?x110 0) $x510)) (or $x515 $x512))))) |
|
3498 |
(let ((@x525 (trans @x521 (rewrite (= (or $x515 $x512) $x516)) (= (or $x515 (or (>= ?x110 0) $x510)) $x516)))) |
|
3499 |
(let ((@x526 (mp ((_ |quant-inst| (+ 1 ?x24)) (or $x515 (or (>= ?x110 0) $x510))) @x525 $x516))) |
|
3500 |
(let (($x484 (not $x481))) |
|
3501 |
(let (($x493 (or $x484 $x489))) |
|
3502 |
(let (($x332 (forall ((?v0 Int) )(!(let ((?x37 (|nat$| ?v0))) |
|
3503 |
(let ((?x38 (|of_nat$| ?x37))) |
|
3504 |
(let (($x39 (= ?x38 ?v0))) |
|
3505 |
(let (($x157 (>= ?v0 0))) |
|
3506 |
(let (($x158 (not $x157))) |
|
3507 |
(or $x158 $x39)))))) :pattern ( (|nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3508 |
)) |
| 56111 | 3509 |
(let (($x164 (forall ((?v0 Int) )(let ((?x37 (|nat$| ?v0))) |
3510 |
(let ((?x38 (|of_nat$| ?x37))) |
|
3511 |
(let (($x39 (= ?x38 ?v0))) |
|
3512 |
(let (($x157 (>= ?v0 0))) |
|
3513 |
(let (($x158 (not $x157))) |
|
3514 |
(or $x158 $x39))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3515 |
)) |
| 56111 | 3516 |
(let ((@x334 (refl (= (or (not $x157) (= ?x38 ?0)) (or (not $x157) (= ?x38 ?0)))))) |
3517 |
(let ((@x261 (refl (|~| (or (not $x157) (= ?x38 ?0)) (or (not $x157) (= ?x38 ?0)))))) |
|
3518 |
(let (($x41 (forall ((?v0 Int) )(let ((?x37 (|nat$| ?v0))) |
|
3519 |
(let ((?x38 (|of_nat$| ?x37))) |
|
3520 |
(let (($x39 (= ?x38 ?v0))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3521 |
(let (($x36 (<= 0 ?v0))) |
| 56111 | 3522 |
(=> $x36 $x39)))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3523 |
)) |
| 56111 | 3524 |
(let (($x152 (forall ((?v0 Int) )(let ((?x37 (|nat$| ?v0))) |
3525 |
(let ((?x38 (|of_nat$| ?x37))) |
|
3526 |
(let (($x39 (= ?x38 ?v0))) |
|
3527 |
(or (not (<= 0 ?v0)) $x39))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3528 |
)) |
| 56111 | 3529 |
(let (($x39 (= ?x38 ?0))) |
3530 |
(let (($x158 (not $x157))) |
|
3531 |
(let (($x161 (or $x158 $x39))) |
|
3532 |
(let (($x149 (or (not (<= 0 ?0)) $x39))) |
|
3533 |
(let ((@x160 (monotonicity (rewrite (= (<= 0 ?0) $x157)) (= (not (<= 0 ?0)) $x158)))) |
|
3534 |
(let ((@x154 (|quant-intro| (rewrite (= (=> (<= 0 ?0) $x39) $x149)) (= $x41 $x152)))) |
|
3535 |
(let ((@x168 (trans @x154 (|quant-intro| (monotonicity @x160 (= $x149 $x161)) (= $x152 $x164)) (= $x41 $x164)))) |
|
3536 |
(let ((@x264 (|mp~| (mp (asserted $x41) @x168 $x164) (|nnf-pos| @x261 (|~| $x164 $x164)) $x164))) |
|
3537 |
(let ((@x337 (mp @x264 (|quant-intro| @x334 (= $x164 $x332)) $x332))) |
|
3538 |
(let (($x496 (not $x332))) |
|
3539 |
(let (($x497 (or $x496 $x484 $x489))) |
|
3540 |
(let (($x479 (= ?x344 ?x110))) |
|
3541 |
(let (($x474 (>= ?x110 0))) |
|
3542 |
(let (($x475 (not $x474))) |
|
3543 |
(let (($x480 (or $x475 $x479))) |
|
3544 |
(let (($x498 (or $x496 $x480))) |
|
3545 |
(let ((@x495 (monotonicity (monotonicity @x483 (= $x475 $x484)) (rewrite (= $x479 $x489)) (= $x480 $x493)))) |
|
3546 |
(let ((@x506 (trans (monotonicity @x495 (= $x498 (or $x496 $x493))) (rewrite (= (or $x496 $x493) $x497)) (= $x498 $x497)))) |
|
3547 |
(let ((@x507 (mp ((_ |quant-inst| (+ 1 ?x24)) $x498) @x506 $x497))) |
|
3548 |
(let ((@x546 (|unit-resolution| (|unit-resolution| @x507 @x337 $x493) (|unit-resolution| (|unit-resolution| @x526 @x343 $x512) @x542 $x481) $x489))) |
|
3549 |
(let ((@x145 (|not-or-elim| (mp (asserted $x30) @x141 $x137) (not (>= ?x23 1))))) |
|
3550 |
((_ |th-lemma| arith farkas -4 1 1) @x145 (|unit-resolution| (|def-axiom| (or $x353 $x373)) @x533 $x373) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x489) $x509)) @x546 $x509) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3551 |
|
| 56111 | 3552 |
c7efedca31e5e8360d3c81014f43c447bc784df3 23 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3553 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3554 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3555 |
(proof |
| 56109 | 3556 |
(let (($x17 (= |x$| |a$|))) |
| 56111 | 3557 |
(let ((?x13 (|pair$| |x$| |y$|))) |
3558 |
(let ((?x14 (|fst$| ?x13))) |
|
| 56109 | 3559 |
(let (($x16 (= ?x14 |a$|))) |
| 56111 | 3560 |
(let ((@x48 (monotonicity (rewrite (= (=> $x16 $x17) (or (not $x16) $x17))) (= (not (=> $x16 $x17)) (not (or (not $x16) $x17)))))) |
3561 |
(let ((@x49 (|not-or-elim| (mp (asserted (not (=> $x16 $x17))) @x48 (not (or (not $x16) $x17))) $x16))) |
|
3562 |
(let (($x65 (= ?x14 |x$|))) |
|
3563 |
(let (($x59 (forall ((?v0 |A$|) (?v1 |B$|) )(!(= (|fst$| (|pair$| ?v0 ?v1)) ?v0) :pattern ( (|pair$| ?v0 ?v1) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3564 |
)) |
| 56109 | 3565 |
(let (($x10 (forall ((?v0 |A$|) (?v1 |B$|) )(= (|fst$| (|pair$| ?v0 ?v1)) ?v0)) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3566 |
)) |
| 56109 | 3567 |
(let (($x9 (= (|fst$| (|pair$| ?1 ?0)) ?1))) |
| 56111 | 3568 |
(let ((@x57 (|mp~| (asserted $x10) (|nnf-pos| (refl (|~| $x9 $x9)) (|~| $x10 $x10)) $x10))) |
3569 |
(let ((@x64 (mp @x57 (|quant-intro| (refl (= $x9 $x9)) (= $x10 $x59)) $x59))) |
|
3570 |
(let (($x69 (or (not $x59) $x65))) |
|
3571 |
(let ((@x70 ((_ |quant-inst| |x$| |y$|) $x69))) |
|
3572 |
(let ((@x72 (trans (symm (|unit-resolution| @x70 @x64 $x65) (= |x$| ?x14)) @x49 $x17))) |
|
3573 |
(let ((@x52 (|not-or-elim| (mp (asserted (not (=> $x16 $x17))) @x48 (not (or (not $x16) $x17))) (not $x17)))) |
|
3574 |
(|unit-resolution| @x52 @x72 false))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3575 |
|
| 56111 | 3576 |
aea156a69bb23683148bfccfaa255f874937bce0 42 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3577 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3578 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3579 |
(proof |
| 56109 | 3580 |
(let ((?x33 (|snd$a| |p2$|))) |
3581 |
(let ((?x32 (|fst$a| |p1$|))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3582 |
(let (($x34 (= ?x32 ?x33))) |
| 56111 | 3583 |
(let ((?x29 (|pair$| |y$| |x$|))) |
3584 |
(let (($x30 (= |p2$| ?x29))) |
|
3585 |
(let ((?x26 (|pair$a| |x$| |y$|))) |
|
3586 |
(let (($x27 (= |p1$| ?x26))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3587 |
(let (($x31 (and $x27 $x30))) |
| 56111 | 3588 |
(let ((@x68 (monotonicity (rewrite (= (=> $x31 $x34) (or (not $x31) $x34))) (= (not (=> $x31 $x34)) (not (or (not $x31) $x34)))))) |
3589 |
(let ((@x69 (|not-or-elim| (mp (asserted (not (=> $x31 $x34))) @x68 (not (or (not $x31) $x34))) $x31))) |
|
3590 |
(let ((@x72 (|and-elim| @x69 $x30))) |
|
3591 |
(let ((@x150 (symm (monotonicity @x72 (= ?x33 (|snd$a| ?x29))) (= (|snd$a| ?x29) ?x33)))) |
|
3592 |
(let ((?x123 (|snd$a| ?x29))) |
|
3593 |
(let (($x124 (= ?x123 |x$|))) |
|
3594 |
(let (($x115 (forall ((?v0 |B$|) (?v1 |A$|) )(!(= (|snd$a| (|pair$| ?v0 ?v1)) ?v1) :pattern ( (|pair$| ?v0 ?v1) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3595 |
)) |
| 56109 | 3596 |
(let (($x22 (forall ((?v0 |B$|) (?v1 |A$|) )(= (|snd$a| (|pair$| ?v0 ?v1)) ?v1)) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3597 |
)) |
| 56109 | 3598 |
(let (($x21 (= (|snd$a| (|pair$| ?1 ?0)) ?0))) |
| 56111 | 3599 |
(let ((@x94 (|mp~| (asserted $x22) (|nnf-pos| (refl (|~| $x21 $x21)) (|~| $x22 $x22)) $x22))) |
3600 |
(let ((@x120 (mp @x94 (|quant-intro| (refl (= $x21 $x21)) (= $x22 $x115)) $x115))) |
|
3601 |
(let (($x131 (or (not $x115) $x124))) |
|
3602 |
(let ((@x132 ((_ |quant-inst| |y$| |x$|) $x131))) |
|
3603 |
(let ((?x128 (|fst$a| ?x26))) |
|
3604 |
(let (($x129 (= ?x128 |x$|))) |
|
3605 |
(let (($x103 (forall ((?v0 |A$|) (?v1 |B$|) )(!(= (|fst$a| (|pair$a| ?v0 ?v1)) ?v0) :pattern ( (|pair$a| ?v0 ?v1) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3606 |
)) |
| 56109 | 3607 |
(let (($x16 (forall ((?v0 |A$|) (?v1 |B$|) )(= (|fst$a| (|pair$a| ?v0 ?v1)) ?v0)) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3608 |
)) |
| 56109 | 3609 |
(let (($x15 (= (|fst$a| (|pair$a| ?1 ?0)) ?1))) |
| 56111 | 3610 |
(let ((@x84 (|mp~| (asserted $x16) (|nnf-pos| (refl (|~| $x15 $x15)) (|~| $x16 $x16)) $x16))) |
3611 |
(let ((@x108 (mp @x84 (|quant-intro| (refl (= $x15 $x15)) (= $x16 $x103)) $x103))) |
|
3612 |
(let (($x136 (or (not $x103) $x129))) |
|
3613 |
(let ((@x137 ((_ |quant-inst| |x$| |y$|) $x136))) |
|
3614 |
(let ((@x152 (trans (monotonicity (|and-elim| @x69 $x27) (= ?x32 ?x128)) (|unit-resolution| @x137 @x108 $x129) (= ?x32 |x$|)))) |
|
3615 |
(let ((@x154 (trans @x152 (symm (|unit-resolution| @x132 @x120 $x124) (= |x$| ?x123)) (= ?x32 ?x123)))) |
|
3616 |
(let ((@x74 (|not-or-elim| (mp (asserted (not (=> $x31 $x34))) @x68 (not (or (not $x31) $x34))) (not $x34)))) |
|
3617 |
(|unit-resolution| @x74 (trans @x154 @x150 $x34) false)))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3618 |
|
| 56111 | 3619 |
9e587b4eedc0dc25b019cb54b54b4a4e643bf93e 49 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3620 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3621 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3622 |
(proof |
| 56111 | 3623 |
(let ((?x45 (|fun_app$| |f$| |i$|))) |
3624 |
(let ((?x36 (|fun_upd$| |f$|))) |
|
3625 |
(let ((?x37 (|fun_app$b| ?x36 |i1$|))) |
|
3626 |
(let ((?x39 (|fun_app$a| ?x37 |v1$|))) |
|
3627 |
(let ((?x40 (|fun_upd$| ?x39))) |
|
3628 |
(let ((?x41 (|fun_app$b| ?x40 |i2$|))) |
|
3629 |
(let ((?x43 (|fun_app$a| ?x41 |v2$|))) |
|
3630 |
(let ((?x44 (|fun_app$| ?x43 |i$|))) |
|
3631 |
(let (($x46 (= ?x44 ?x45))) |
|
| 56109 | 3632 |
(let (($x29 (= |i$| |i1$|))) |
| 56111 | 3633 |
(let ((?x178 (ite $x29 |v1$| ?x45))) |
3634 |
(let (($x185 (= ?x45 ?x178))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3635 |
(let (($x30 (not $x29))) |
| 56109 | 3636 |
(let (($x32 (= |i$| |i2$|))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3637 |
(let (($x33 (not $x32))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3638 |
(let (($x34 (and $x30 $x33))) |
| 56111 | 3639 |
(let ((@x78 (monotonicity (rewrite (= (=> $x34 $x46) (or (not $x34) $x46))) (= (not (=> $x34 $x46)) (not (or (not $x34) $x46)))))) |
3640 |
(let ((@x79 (|not-or-elim| (mp (asserted (not (=> $x34 $x46))) @x78 (not (or (not $x34) $x46))) $x34))) |
|
3641 |
(let ((@x80 (|and-elim| @x79 $x30))) |
|
3642 |
(let ((@x197 (symm (|unit-resolution| (|def-axiom| (or $x29 $x185)) @x80 $x185) (= ?x178 ?x45)))) |
|
3643 |
(let ((?x116 (|fun_app$| ?x39 |i$|))) |
|
3644 |
(let (($x179 (= ?x116 ?x178))) |
|
3645 |
(let (($x103 (forall ((?v0 |A_b_fun$|) (?v1 |A$|) (?v2 |B$|) (?v3 |A$|) )(!(let ((?x21 (|fun_app$| (|fun_app$a| (|fun_app$b| (|fun_upd$| ?v0) ?v1) ?v2) ?v3))) |
|
3646 |
(= ?x21 (ite (= ?v3 ?v1) ?v2 (|fun_app$| ?v0 ?v3)))) :pattern ( (|fun_app$| (|fun_app$a| (|fun_app$b| (|fun_upd$| ?v0) ?v1) ?v2) ?v3) ))) |
|
3647 |
)) |
|
3648 |
(let (($x26 (forall ((?v0 |A_b_fun$|) (?v1 |A$|) (?v2 |B$|) (?v3 |A$|) )(let ((?x21 (|fun_app$| (|fun_app$a| (|fun_app$b| (|fun_upd$| ?v0) ?v1) ?v2) ?v3))) |
|
3649 |
(= ?x21 (ite (= ?v3 ?v1) ?v2 (|fun_app$| ?v0 ?v3))))) |
|
3650 |
)) |
|
3651 |
(let ((?x21 (|fun_app$| (|fun_app$a| (|fun_app$b| (|fun_upd$| ?3) ?2) ?1) ?0))) |
|
3652 |
(let (($x25 (= ?x21 (ite (= ?0 ?2) ?1 (|fun_app$| ?3 ?0))))) |
|
3653 |
(let ((@x94 (|mp~| (asserted $x26) (|nnf-pos| (refl (|~| $x25 $x25)) (|~| $x26 $x26)) $x26))) |
|
3654 |
(let ((@x108 (mp @x94 (|quant-intro| (refl (= $x25 $x25)) (= $x26 $x103)) $x103))) |
|
3655 |
(let (($x123 (not $x103))) |
|
3656 |
(let (($x182 (or $x123 $x179))) |
|
3657 |
(let ((@x183 ((_ |quant-inst| |f$| |i1$| |v1$| |i$|) $x182))) |
|
3658 |
(let ((?x117 (ite $x32 |v2$| ?x116))) |
|
3659 |
(let (($x127 (= ?x116 ?x117))) |
|
3660 |
(let ((@x82 (|and-elim| @x79 $x33))) |
|
3661 |
(let ((@x195 (symm (|unit-resolution| (|def-axiom| (or $x32 $x127)) @x82 $x127) (= ?x117 ?x116)))) |
|
3662 |
(let (($x120 (= ?x44 ?x117))) |
|
3663 |
(let (($x124 (or $x123 $x120))) |
|
3664 |
(let ((@x125 ((_ |quant-inst| (|fun_app$a| ?x37 |v1$|) |i2$| |v2$| |i$|) $x124))) |
|
3665 |
(let ((@x201 (trans (trans (|unit-resolution| @x125 @x108 $x120) @x195 (= ?x44 ?x116)) (|unit-resolution| @x183 @x108 $x179) (= ?x44 ?x178)))) |
|
3666 |
(let ((@x84 (|not-or-elim| (mp (asserted (not (=> $x34 $x46))) @x78 (not (or (not $x34) $x46))) (not $x46)))) |
|
3667 |
(|unit-resolution| @x84 (trans @x201 @x197 $x46) false))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3668 |
|
| 56111 | 3669 |
b3ae8e1fe1d7b019d0bef97ff09cdb8e0a1cd7dd 25 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3670 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3671 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3672 |
(proof |
| 56111 | 3673 |
(let (($x7 (|f$| |g$| |x$|))) |
3674 |
(let (($x71 (not $x7))) |
|
3675 |
(let (($x63 (not (or (= $x7 (|fun_app$| |g$| |x$|)) $x7 (|fun_app$| |g$| |x$|))))) |
|
3676 |
(let (($x10 (= $x7 (and (|fun_app$| |g$| |x$|) true)))) |
|
3677 |
(let (($x15 (not (or $x10 (or (= $x7 true) (= (|fun_app$| |g$| |x$|) true)))))) |
|
| 56109 | 3678 |
(let (($x8 (|fun_app$| |g$| |x$|))) |
| 56111 | 3679 |
(let (($x51 (or $x7 $x8))) |
3680 |
(let (($x42 (= $x7 $x8))) |
|
3681 |
(let (($x54 (or $x42 $x51))) |
|
3682 |
(let ((@x65 (monotonicity (rewrite (= $x54 (or $x42 $x7 $x8))) (= (not $x54) $x63)))) |
|
3683 |
(let ((@x53 (monotonicity (rewrite (= (= $x7 true) $x7)) (rewrite (= (= $x8 true) $x8)) (= (or (= $x7 true) (= $x8 true)) $x51)))) |
|
3684 |
(let ((@x41 (monotonicity (rewrite (= (and $x8 true) $x8)) (= $x10 (= $x7 $x8))))) |
|
3685 |
(let ((@x56 (monotonicity (trans @x41 (rewrite (= (= $x7 $x8) $x42)) (= $x10 $x42)) @x53 (= (or $x10 (or (= $x7 true) (= $x8 true))) $x54)))) |
|
3686 |
(let ((@x67 (trans (monotonicity @x56 (= $x15 (not $x54))) @x65 (= $x15 $x63)))) |
|
3687 |
(let ((@x68 (mp (asserted $x15) @x67 $x63))) |
|
3688 |
(let ((@x72 (|not-or-elim| @x68 $x71))) |
|
3689 |
(let (($x73 (not $x8))) |
|
3690 |
(let ((@x74 (|not-or-elim| @x68 $x73))) |
|
3691 |
(let (($x75 (= $x71 $x8))) |
|
3692 |
(let ((@x77 (mp (|not-or-elim| @x68 (not $x42)) (rewrite (= (not $x42) $x75)) $x75))) |
|
3693 |
(|unit-resolution| (|unit-resolution| (|def-axiom| (or $x7 $x8 (not $x75))) @x77 $x51) @x74 @x72 false))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3694 |
|
| 56111 | 3695 |
d9e693c8b48e2988c493bb1e4e83656e750403bf 14 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3696 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3697 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3698 |
(proof |
| 56109 | 3699 |
(let (($x7 (exists ((?v0 |A$|) )(|g$| ?v0)) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3700 |
)) |
| 56111 | 3701 |
(let (($x8 (ite $x7 true false))) |
3702 |
(let (($x9 (|f$| $x8))) |
|
3703 |
(let (($x10 (=> $x9 true))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3704 |
(let (($x11 (not $x10))) |
| 56111 | 3705 |
(let ((@x40 (monotonicity (monotonicity (rewrite (= $x8 $x7)) (= $x9 (|f$| $x7))) (= $x10 (=> (|f$| $x7) true))))) |
3706 |
(let ((@x44 (trans @x40 (rewrite (= (=> (|f$| $x7) true) true)) (= $x10 true)))) |
|
3707 |
(let ((@x51 (trans (monotonicity @x44 (= $x11 (not true))) (rewrite (= (not true) false)) (= $x11 false)))) |
|
3708 |
(mp (asserted $x11) @x51 false))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3709 |
|
| 56111 | 3710 |
389aa7c628b5a2215f1c34b1b3aea4f4becc378c 14 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3711 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3712 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3713 |
(proof |
| 56109 | 3714 |
(let (($x7 (forall ((?v0 |A$|) )(|g$| ?v0)) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3715 |
)) |
| 56111 | 3716 |
(let (($x8 (ite $x7 true false))) |
3717 |
(let (($x9 (|f$| $x8))) |
|
3718 |
(let (($x10 (=> $x9 true))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3719 |
(let (($x11 (not $x10))) |
| 56111 | 3720 |
(let ((@x40 (monotonicity (monotonicity (rewrite (= $x8 $x7)) (= $x9 (|f$| $x7))) (= $x10 (=> (|f$| $x7) true))))) |
3721 |
(let ((@x44 (trans @x40 (rewrite (= (=> (|f$| $x7) true) true)) (= $x10 true)))) |
|
3722 |
(let ((@x51 (trans (monotonicity @x44 (= $x11 (not true))) (rewrite (= (not true) false)) (= $x11 false)))) |
|
3723 |
(mp (asserted $x11) @x51 false))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3724 |
|
| 56111 | 3725 |
53b477f55537542d72fa148413e684cc3ff42e5b 46 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3726 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3727 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3728 |
(proof |
| 56111 | 3729 |
(let ((?x17 (|fun_app$a| |le$| 3))) |
3730 |
(let (($x19 (|fun_app$| ?x17 42))) |
|
3731 |
(let (($x73 (not $x19))) |
|
| 56109 | 3732 |
(let (($x15 (= |le$| |uu$|))) |
| 56111 | 3733 |
(let ((@x71 (monotonicity (rewrite (= (=> $x15 $x19) (or (not $x15) $x19))) (= (not (=> $x15 $x19)) (not (or (not $x15) $x19)))))) |
3734 |
(let ((@x72 (|not-or-elim| (mp (asserted (not (=> $x15 $x19))) @x71 (not (or (not $x15) $x19))) $x15))) |
|
3735 |
(let ((@x126 (monotonicity (symm @x72 (= |uu$| |le$|)) (= (|fun_app$a| |uu$| 3) ?x17)))) |
|
3736 |
(let ((@x130 (symm (monotonicity @x126 (= (|fun_app$| (|fun_app$a| |uu$| 3) 42) $x19)) (= $x19 (|fun_app$| (|fun_app$a| |uu$| 3) 42))))) |
|
3737 |
(let ((@x133 (monotonicity @x130 (= $x73 (not (|fun_app$| (|fun_app$a| |uu$| 3) 42)))))) |
|
3738 |
(let ((@x75 (|not-or-elim| (mp (asserted (not (=> $x15 $x19))) @x71 (not (or (not $x15) $x19))) $x73))) |
|
3739 |
(let ((?x81 (|fun_app$a| |uu$| 3))) |
|
3740 |
(let (($x82 (|fun_app$| ?x81 42))) |
|
3741 |
(let (($x58 (forall ((?v0 Int) (?v1 Int) )(!(let (($x52 (<= (+ ?v0 (* (~ 1) ?v1)) 0))) |
|
3742 |
(let (($x9 (|fun_app$| (|fun_app$a| |uu$| ?v0) ?v1))) |
|
3743 |
(= $x9 $x52))) :pattern ( (|fun_app$| (|fun_app$a| |uu$| ?v0) ?v1) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3744 |
)) |
| 56111 | 3745 |
(let (($x52 (<= (+ ?1 (* (~ 1) ?0)) 0))) |
| 56109 | 3746 |
(let (($x9 (|fun_app$| (|fun_app$a| |uu$| ?1) ?0))) |
| 56111 | 3747 |
(let (($x55 (= $x9 $x52))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3748 |
(let (($x13 (forall ((?v0 Int) (?v1 Int) )(!(let (($x10 (<= ?v0 ?v1))) |
| 56109 | 3749 |
(let (($x9 (|fun_app$| (|fun_app$a| |uu$| ?v0) ?v1))) |
3750 |
(= $x9 $x10))) :pattern ( (|fun_app$| (|fun_app$a| |uu$| ?v0) ?v1) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3751 |
)) |
| 56111 | 3752 |
(let (($x46 (forall ((?v0 Int) (?v1 Int) )(!(let (($x10 (<= ?v0 ?v1))) |
| 56109 | 3753 |
(let (($x9 (|fun_app$| (|fun_app$a| |uu$| ?v0) ?v1))) |
3754 |
(= $x9 $x10))) :pattern ( (|fun_app$| (|fun_app$a| |uu$| ?v0) ?v1) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3755 |
)) |
| 56111 | 3756 |
(let ((@x57 (monotonicity (rewrite (= (<= ?1 ?0) $x52)) (= (= $x9 (<= ?1 ?0)) $x55)))) |
3757 |
(let ((@x48 (|quant-intro| (rewrite (= (= $x9 (<= ?1 ?0)) (= $x9 (<= ?1 ?0)))) (= $x13 $x46)))) |
|
3758 |
(let ((@x63 (mp (asserted $x13) (trans @x48 (|quant-intro| @x57 (= $x46 $x58)) (= $x13 $x58)) $x58))) |
|
3759 |
(let ((@x80 (|mp~| @x63 (|nnf-pos| (refl (|~| $x55 $x55)) (|~| $x58 $x58)) $x58))) |
|
3760 |
(let (($x113 (or (not $x58) $x82))) |
|
3761 |
(let (($x116 (= (or (not $x58) (= $x82 (<= (+ 3 (* (~ 1) 42)) 0))) $x113))) |
|
3762 |
(let ((?x83 (* (~ 1) 42))) |
|
3763 |
(let ((?x84 (+ 3 ?x83))) |
|
3764 |
(let (($x85 (<= ?x84 0))) |
|
3765 |
(let (($x86 (= $x82 $x85))) |
|
3766 |
(let ((@x97 (trans (monotonicity (rewrite (= ?x83 (~ 42))) (= ?x84 (+ 3 (~ 42)))) (rewrite (= (+ 3 (~ 42)) (~ 39))) (= ?x84 (~ 39))))) |
|
3767 |
(let ((@x104 (trans (monotonicity @x97 (= $x85 (<= (~ 39) 0))) (rewrite (= (<= (~ 39) 0) true)) (= $x85 true)))) |
|
3768 |
(let ((@x111 (trans (monotonicity @x104 (= $x86 (= $x82 true))) (rewrite (= (= $x82 true) $x82)) (= $x86 $x82)))) |
|
3769 |
(let ((@x121 (mp ((_ |quant-inst| 3 42) (or (not $x58) $x86)) (trans (monotonicity @x111 $x116) (rewrite (= $x113 $x113)) $x116) $x113))) |
|
3770 |
(|unit-resolution| (|unit-resolution| @x121 @x80 $x82) (mp @x75 @x133 (not $x82)) false))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3771 |
|
| 56111 | 3772 |
737e9aeb0ce08125531c37a003d0a11fe8c1aa00 189 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3773 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3774 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3775 |
(proof |
| 56109 | 3776 |
(let ((?x37 (|nat$| 2))) |
3777 |
(let ((?x38 (|cons$| ?x37 |nil$|))) |
|
3778 |
(let ((?x32 (|nat$| 1))) |
|
3779 |
(let ((?x39 (|cons$| ?x32 ?x38))) |
|
3780 |
(let ((?x33 (|cons$| ?x32 |nil$|))) |
|
3781 |
(let ((?x31 (|nat$| 0))) |
|
| 56111 | 3782 |
(let ((?x34 (|cons$| ?x31 ?x33))) |
3783 |
(let ((?x35 (|map$| |uu$| ?x34))) |
|
3784 |
(let (($x40 (= ?x35 ?x39))) |
|
3785 |
(let ((?x208 (|map$| |uu$| ?x33))) |
|
3786 |
(let ((?x326 (|map$| |uu$| |nil$|))) |
|
3787 |
(let ((?x325 (|fun_app$| |uu$| ?x32))) |
|
3788 |
(let ((?x327 (|cons$| ?x325 ?x326))) |
|
3789 |
(let (($x328 (= ?x208 ?x327))) |
|
3790 |
(let (($x181 (forall ((?v0 |Nat_nat_fun$|) (?v1 |Nat$|) (?v2 |Nat_list$|) )(!(let ((?x27 (|cons$| (|fun_app$| ?v0 ?v1) (|map$| ?v0 ?v2)))) |
|
3791 |
(let ((?x24 (|map$| ?v0 (|cons$| ?v1 ?v2)))) |
|
3792 |
(= ?x24 ?x27))) :pattern ( (|map$| ?v0 (|cons$| ?v1 ?v2)) ) :pattern ( (|cons$| (|fun_app$| ?v0 ?v1) (|map$| ?v0 ?v2)) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3793 |
)) |
| 56111 | 3794 |
(let (($x29 (forall ((?v0 |Nat_nat_fun$|) (?v1 |Nat$|) (?v2 |Nat_list$|) )(let ((?x27 (|cons$| (|fun_app$| ?v0 ?v1) (|map$| ?v0 ?v2)))) |
3795 |
(let ((?x24 (|map$| ?v0 (|cons$| ?v1 ?v2)))) |
|
3796 |
(= ?x24 ?x27)))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3797 |
)) |
| 56111 | 3798 |
(let ((?x27 (|cons$| (|fun_app$| ?2 ?1) (|map$| ?2 ?0)))) |
3799 |
(let ((?x24 (|map$| ?2 (|cons$| ?1 ?0)))) |
|
3800 |
(let (($x28 (= ?x24 ?x27))) |
|
3801 |
(let ((@x156 (|mp~| (asserted $x29) (|nnf-pos| (refl (|~| $x28 $x28)) (|~| $x29 $x29)) $x29))) |
|
3802 |
(let ((@x186 (mp @x156 (|quant-intro| (refl (= $x28 $x28)) (= $x29 $x181)) $x181))) |
|
3803 |
(let (($x213 (not $x181))) |
|
3804 |
(let (($x331 (or $x213 $x328))) |
|
3805 |
(let ((@x332 ((_ |quant-inst| |uu$| (|nat$| 1) |nil$|) $x331))) |
|
3806 |
(let (($x339 (= ?x326 |nil$|))) |
|
3807 |
(let (($x173 (forall ((?v0 |Nat_nat_fun$|) )(!(= (|map$| ?v0 |nil$|) |nil$|) :pattern ( (|map$| ?v0 |nil$|) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3808 |
)) |
| 56109 | 3809 |
(let (($x19 (forall ((?v0 |Nat_nat_fun$|) )(= (|map$| ?v0 |nil$|) |nil$|)) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3810 |
)) |
| 56111 | 3811 |
(let ((@x175 (refl (= (= (|map$| ?0 |nil$|) |nil$|) (= (|map$| ?0 |nil$|) |nil$|))))) |
3812 |
(let ((@x148 (refl (|~| (= (|map$| ?0 |nil$|) |nil$|) (= (|map$| ?0 |nil$|) |nil$|))))) |
|
3813 |
(let ((@x178 (mp (|mp~| (asserted $x19) (|nnf-pos| @x148 (|~| $x19 $x19)) $x19) (|quant-intro| @x175 (= $x19 $x173)) $x173))) |
|
3814 |
(let (($x343 (or (not $x173) $x339))) |
|
3815 |
(let ((@x344 ((_ |quant-inst| |uu$|) $x343))) |
|
3816 |
(let ((?x255 (|of_nat$| ?x32))) |
|
3817 |
(let ((?x340 (+ 1 ?x255))) |
|
3818 |
(let ((?x341 (|nat$| ?x340))) |
|
3819 |
(let (($x345 (= ?x325 ?x341))) |
|
3820 |
(let (($x85 (forall ((?v0 |Nat$|) )(!(let ((?x7 (|fun_app$| |uu$| ?v0))) |
|
| 56109 | 3821 |
(= ?x7 (|nat$| (+ 1 (|of_nat$| ?v0))))) :pattern ( (|fun_app$| |uu$| ?v0) ))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3822 |
)) |
| 56109 | 3823 |
(let ((?x7 (|fun_app$| |uu$| ?0))) |
| 56111 | 3824 |
(let (($x82 (= ?x7 (|nat$| (+ 1 (|of_nat$| ?0)))))) |
| 56109 | 3825 |
(let (($x14 (forall ((?v0 |Nat$|) )(!(let ((?x7 (|fun_app$| |uu$| ?v0))) |
3826 |
(= ?x7 (|nat$| (+ (|of_nat$| ?v0) 1)))) :pattern ( (|fun_app$| |uu$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3827 |
)) |
| 56111 | 3828 |
(let ((@x81 (monotonicity (rewrite (= (+ (|of_nat$| ?0) 1) (+ 1 (|of_nat$| ?0)))) (= (|nat$| (+ (|of_nat$| ?0) 1)) (|nat$| (+ 1 (|of_nat$| ?0))))))) |
3829 |
(let ((@x84 (monotonicity @x81 (= (= ?x7 (|nat$| (+ (|of_nat$| ?0) 1))) $x82)))) |
|
3830 |
(let ((@x146 (|mp~| (mp (asserted $x14) (|quant-intro| @x84 (= $x14 $x85)) $x85) (|nnf-pos| (refl (|~| $x82 $x82)) (|~| $x85 $x85)) $x85))) |
|
3831 |
(let (($x348 (or (not $x85) $x345))) |
|
3832 |
(let ((@x349 ((_ |quant-inst| (|nat$| 1)) $x348))) |
|
3833 |
(let ((?x404 (|of_nat$| ?x341))) |
|
3834 |
(let ((?x454 (|nat$| ?x404))) |
|
3835 |
(let (($x455 (= ?x454 ?x341))) |
|
3836 |
(let (($x188 (forall ((?v0 |Nat$|) )(!(= (|nat$| (|of_nat$| ?v0)) ?v0) :pattern ( (|of_nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3837 |
)) |
| 56109 | 3838 |
(let (($x44 (forall ((?v0 |Nat$|) )(= (|nat$| (|of_nat$| ?v0)) ?v0)) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3839 |
)) |
| 56111 | 3840 |
(let ((@x190 (refl (= (= (|nat$| (|of_nat$| ?0)) ?0) (= (|nat$| (|of_nat$| ?0)) ?0))))) |
3841 |
(let ((@x160 (refl (|~| (= (|nat$| (|of_nat$| ?0)) ?0) (= (|nat$| (|of_nat$| ?0)) ?0))))) |
|
3842 |
(let ((@x193 (mp (|mp~| (asserted $x44) (|nnf-pos| @x160 (|~| $x44 $x44)) $x44) (|quant-intro| @x190 (= $x44 $x188)) $x188))) |
|
3843 |
(let (($x461 (or (not $x188) $x455))) |
|
3844 |
(let ((@x462 ((_ |quant-inst| (|nat$| ?x340)) $x461))) |
|
3845 |
(let ((?x415 (* (~ 1) ?x404))) |
|
3846 |
(let ((?x416 (+ ?x255 ?x415))) |
|
3847 |
(let (($x432 (<= ?x416 (~ 1)))) |
|
3848 |
(let (($x414 (= ?x416 (~ 1)))) |
|
3849 |
(let (($x407 (>= ?x255 (~ 1)))) |
|
3850 |
(let (($x401 (>= ?x255 1))) |
|
3851 |
(let (($x256 (= ?x255 1))) |
|
3852 |
(let (($x195 (forall ((?v0 Int) )(!(let (($x49 (= (|of_nat$| (|nat$| ?v0)) ?v0))) |
|
3853 |
(let (($x103 (>= ?v0 0))) |
|
3854 |
(let (($x104 (not $x103))) |
|
3855 |
(or $x104 $x49)))) :pattern ( (|nat$| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3856 |
)) |
| 56111 | 3857 |
(let (($x110 (forall ((?v0 Int) )(let (($x49 (= (|of_nat$| (|nat$| ?v0)) ?v0))) |
3858 |
(let (($x103 (>= ?v0 0))) |
|
3859 |
(let (($x104 (not $x103))) |
|
3860 |
(or $x104 $x49))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3861 |
)) |
| 56109 | 3862 |
(let (($x49 (= (|of_nat$| (|nat$| ?0)) ?0))) |
| 56111 | 3863 |
(let (($x103 (>= ?0 0))) |
3864 |
(let (($x104 (not $x103))) |
|
3865 |
(let (($x107 (or $x104 $x49))) |
|
| 56109 | 3866 |
(let (($x51 (forall ((?v0 Int) )(let (($x49 (= (|of_nat$| (|nat$| ?v0)) ?v0))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3867 |
(let (($x46 (<= 0 ?v0))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3868 |
(=> $x46 $x49)))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3869 |
)) |
| 56111 | 3870 |
(let (($x98 (forall ((?v0 Int) )(let (($x49 (= (|of_nat$| (|nat$| ?v0)) ?v0))) |
3871 |
(or (not (<= 0 ?v0)) $x49))) |
|
3872 |
)) |
|
3873 |
(let ((@x106 (monotonicity (rewrite (= (<= 0 ?0) $x103)) (= (not (<= 0 ?0)) $x104)))) |
|
3874 |
(let ((@x112 (|quant-intro| (monotonicity @x106 (= (or (not (<= 0 ?0)) $x49) $x107)) (= $x98 $x110)))) |
|
3875 |
(let ((@x97 (rewrite (= (=> (<= 0 ?0) $x49) (or (not (<= 0 ?0)) $x49))))) |
|
3876 |
(let ((@x115 (mp (asserted $x51) (trans (|quant-intro| @x97 (= $x51 $x98)) @x112 (= $x51 $x110)) $x110))) |
|
3877 |
(let ((@x200 (mp (|mp~| @x115 (|nnf-pos| (refl (|~| $x107 $x107)) (|~| $x110 $x110)) $x110) (|quant-intro| (refl (= $x107 $x107)) (= $x110 $x195)) $x195))) |
|
3878 |
(let (($x235 (not $x195))) |
|
3879 |
(let (($x271 (or $x235 $x256))) |
|
3880 |
(let ((@x225 (rewrite (= (not true) false)))) |
|
3881 |
(let ((@x259 (rewrite (= (>= 1 0) true)))) |
|
3882 |
(let ((@x263 (trans (monotonicity @x259 (= (not (>= 1 0)) (not true))) @x225 (= (not (>= 1 0)) false)))) |
|
3883 |
(let ((@x266 (monotonicity @x263 (= (or (not (>= 1 0)) $x256) (or false $x256))))) |
|
3884 |
(let ((@x270 (trans @x266 (rewrite (= (or false $x256) $x256)) (= (or (not (>= 1 0)) $x256) $x256)))) |
|
3885 |
(let ((@x275 (monotonicity @x270 (= (or $x235 (or (not (>= 1 0)) $x256)) $x271)))) |
|
3886 |
(let ((@x278 (trans @x275 (rewrite (= $x271 $x271)) (= (or $x235 (or (not (>= 1 0)) $x256)) $x271)))) |
|
3887 |
(let ((@x279 (mp ((_ |quant-inst| 1) (or $x235 (or (not (>= 1 0)) $x256))) @x278 $x271))) |
|
3888 |
(let ((@x477 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x256) $x401)) (|unit-resolution| @x279 @x200 $x256) $x401))) |
|
3889 |
(let (($x410 (not $x407))) |
|
3890 |
(let (($x421 (or $x235 $x410 $x414))) |
|
3891 |
(let (($x405 (= ?x404 ?x340))) |
|
3892 |
(let (($x402 (>= ?x340 0))) |
|
3893 |
(let (($x403 (not $x402))) |
|
3894 |
(let (($x406 (or $x403 $x405))) |
|
3895 |
(let (($x422 (or $x235 $x406))) |
|
3896 |
(let ((@x420 (monotonicity (monotonicity (rewrite (= $x402 $x407)) (= $x403 $x410)) (rewrite (= $x405 $x414)) (= $x406 (or $x410 $x414))))) |
|
3897 |
(let ((@x430 (trans (monotonicity @x420 (= $x422 (or $x235 (or $x410 $x414)))) (rewrite (= (or $x235 (or $x410 $x414)) $x421)) (= $x422 $x421)))) |
|
3898 |
(let ((@x431 (mp ((_ |quant-inst| (+ 1 ?x255)) $x422) @x430 $x421))) |
|
3899 |
(let ((@x482 (|unit-resolution| @x431 @x200 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or (not $x401) $x407)) @x477 $x407) $x414))) |
|
3900 |
(let (($x433 (>= ?x416 (~ 1)))) |
|
3901 |
(let (($x400 (<= ?x255 1))) |
|
3902 |
(let ((@x492 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x256) $x400)) (|unit-resolution| @x279 @x200 $x256) $x400))) |
|
3903 |
(let ((@x494 ((_ |th-lemma| arith eq-propagate -1 -1 1 1) @x477 @x492 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x414) $x433)) @x482 $x433) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x414) $x432)) @x482 $x432) (= ?x404 2)))) |
|
3904 |
(let ((@x502 (trans (monotonicity (symm @x494 (= 2 ?x404)) (= ?x37 ?x454)) (|unit-resolution| @x462 @x193 $x455) (= ?x37 ?x341)))) |
|
3905 |
(let ((@x504 (trans @x502 (symm (|unit-resolution| @x349 @x146 $x345) (= ?x341 ?x325)) (= ?x37 ?x325)))) |
|
3906 |
(let ((@x506 (monotonicity @x504 (symm (|unit-resolution| @x344 @x178 $x339) (= |nil$| ?x326)) (= ?x38 ?x327)))) |
|
3907 |
(let ((@x510 (trans @x506 (symm (|unit-resolution| @x332 @x186 $x328) (= ?x327 ?x208)) (= ?x38 ?x208)))) |
|
3908 |
(let ((?x216 (|of_nat$| ?x31))) |
|
3909 |
(let ((?x329 (+ 1 ?x216))) |
|
3910 |
(let ((?x330 (|nat$| ?x329))) |
|
3911 |
(let ((?x207 (|fun_app$| |uu$| ?x31))) |
|
3912 |
(let (($x333 (= ?x207 ?x330))) |
|
3913 |
(let (($x337 (or (not $x85) $x333))) |
|
3914 |
(let ((@x338 ((_ |quant-inst| (|nat$| 0)) $x337))) |
|
3915 |
(let ((?x350 (|of_nat$| ?x330))) |
|
3916 |
(let ((?x452 (|nat$| ?x350))) |
|
3917 |
(let (($x453 (= ?x452 ?x330))) |
|
3918 |
(let (($x457 (or (not $x188) $x453))) |
|
3919 |
(let ((@x458 ((_ |quant-inst| (|nat$| ?x329)) $x457))) |
|
3920 |
(let ((?x362 (* (~ 1) ?x350))) |
|
3921 |
(let ((?x363 (+ ?x216 ?x362))) |
|
3922 |
(let (($x379 (<= ?x363 (~ 1)))) |
|
3923 |
(let (($x361 (= ?x363 (~ 1)))) |
|
3924 |
(let (($x354 (>= ?x216 (~ 1)))) |
|
3925 |
(let (($x335 (>= ?x216 0))) |
|
3926 |
(let (($x217 (= ?x216 0))) |
|
3927 |
(let (($x236 (or $x235 $x217))) |
|
3928 |
(let ((@x220 (rewrite (= (>= 0 0) true)))) |
|
3929 |
(let ((@x227 (trans (monotonicity @x220 (= (not (>= 0 0)) (not true))) @x225 (= (not (>= 0 0)) false)))) |
|
3930 |
(let ((@x230 (monotonicity @x227 (= (or (not (>= 0 0)) $x217) (or false $x217))))) |
|
3931 |
(let ((@x234 (trans @x230 (rewrite (= (or false $x217) $x217)) (= (or (not (>= 0 0)) $x217) $x217)))) |
|
3932 |
(let ((@x240 (monotonicity @x234 (= (or $x235 (or (not (>= 0 0)) $x217)) $x236)))) |
|
3933 |
(let ((@x243 (trans @x240 (rewrite (= $x236 $x236)) (= (or $x235 (or (not (>= 0 0)) $x217)) $x236)))) |
|
3934 |
(let ((@x244 (mp ((_ |quant-inst| 0) (or $x235 (or (not (>= 0 0)) $x217))) @x243 $x236))) |
|
3935 |
(let ((@x517 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x217) $x335)) (|unit-resolution| @x244 @x200 $x217) $x335))) |
|
3936 |
(let (($x357 (not $x354))) |
|
3937 |
(let (($x368 (or $x235 $x357 $x361))) |
|
3938 |
(let (($x351 (= ?x350 ?x329))) |
|
3939 |
(let (($x346 (>= ?x329 0))) |
|
3940 |
(let (($x347 (not $x346))) |
|
3941 |
(let (($x352 (or $x347 $x351))) |
|
3942 |
(let (($x369 (or $x235 $x352))) |
|
3943 |
(let ((@x367 (monotonicity (monotonicity (rewrite (= $x346 $x354)) (= $x347 $x357)) (rewrite (= $x351 $x361)) (= $x352 (or $x357 $x361))))) |
|
3944 |
(let ((@x377 (trans (monotonicity @x367 (= $x369 (or $x235 (or $x357 $x361)))) (rewrite (= (or $x235 (or $x357 $x361)) $x368)) (= $x369 $x368)))) |
|
3945 |
(let ((@x378 (mp ((_ |quant-inst| (+ 1 ?x216)) $x369) @x377 $x368))) |
|
3946 |
(let ((@x522 (|unit-resolution| @x378 @x200 (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or (not $x335) $x354)) @x517 $x354) $x361))) |
|
3947 |
(let (($x380 (>= ?x363 (~ 1)))) |
|
3948 |
(let (($x334 (<= ?x216 0))) |
|
3949 |
(let ((@x532 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x217) $x334)) (|unit-resolution| @x244 @x200 $x217) $x334))) |
|
3950 |
(let ((@x534 ((_ |th-lemma| arith eq-propagate -1 -1 1 1) @x517 @x532 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x361) $x380)) @x522 $x380) (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x361) $x379)) @x522 $x379) (= ?x350 1)))) |
|
3951 |
(let ((@x542 (trans (monotonicity (symm @x534 (= 1 ?x350)) (= ?x32 ?x452)) (|unit-resolution| @x458 @x193 $x453) (= ?x32 ?x330)))) |
|
3952 |
(let ((@x544 (trans @x542 (symm (|unit-resolution| @x338 @x146 $x333) (= ?x330 ?x207)) (= ?x32 ?x207)))) |
|
3953 |
(let ((@x549 (symm (monotonicity @x544 @x510 (= ?x39 (|cons$| ?x207 ?x208))) (= (|cons$| ?x207 ?x208) ?x39)))) |
|
3954 |
(let ((?x209 (|cons$| ?x207 ?x208))) |
|
3955 |
(let (($x210 (= ?x35 ?x209))) |
|
3956 |
(let (($x214 (or $x213 $x210))) |
|
3957 |
(let ((@x215 ((_ |quant-inst| |uu$| (|nat$| 0) (|cons$| ?x32 |nil$|)) $x214))) |
|
3958 |
(let (($x41 (not $x40))) |
|
3959 |
(let ((@x91 (asserted $x41))) |
|
3960 |
(|unit-resolution| @x91 (trans (|unit-resolution| @x215 @x186 $x210) @x549 $x40) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3961 |
|
| 56111 | 3962 |
516b38db52977db0759f7a2fb4ee2c61d2623ab0 11 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3963 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3964 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3965 |
(proof |
| 56109 | 3966 |
(let (($x7 (forall ((?v0 |A$|) )(|p$| ?v0)) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3967 |
)) |
| 56111 | 3968 |
(let (($x8 (not $x7))) |
3969 |
(let (($x9 (or $x7 $x8))) |
|
3970 |
(let (($x10 (not $x9))) |
|
3971 |
(let ((@x40 (trans (monotonicity (rewrite (= $x9 true)) (= $x10 (not true))) (rewrite (= (not true) false)) (= $x10 false)))) |
|
3972 |
(mp (asserted $x10) @x40 false)))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3973 |
|
| 56111 | 3974 |
120a595aca724e41775e5a997277b8d456a7e9fe 183 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3975 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3976 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3977 |
(proof |
| 56109 | 3978 |
(let ((?x24 (|nat$| 6))) |
3979 |
(let ((?x17 (|nat$| 4))) |
|
3980 |
(let ((?x18 (|dec_10$| ?x17))) |
|
3981 |
(let ((?x19 (|of_nat$| ?x18))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3982 |
(let ((?x20 (* 4 ?x19))) |
| 56109 | 3983 |
(let ((?x21 (|nat$| ?x20))) |
3984 |
(let ((?x22 (|dec_10$| ?x21))) |
|
| 56111 | 3985 |
(let (($x25 (= ?x22 ?x24))) |
3986 |
(let ((?x348 (|of_nat$| ?x24))) |
|
3987 |
(let ((?x393 (+ (~ 10) ?x348))) |
|
3988 |
(let ((?x394 (|nat$| ?x393))) |
|
3989 |
(let ((?x395 (|dec_10$| ?x394))) |
|
3990 |
(let (($x390 (>= ?x348 10))) |
|
3991 |
(let ((?x396 (ite $x390 ?x395 ?x24))) |
|
3992 |
(let (($x403 (= ?x24 ?x396))) |
|
3993 |
(let (($x404 (not $x390))) |
|
3994 |
(let (($x398 (<= ?x348 6))) |
|
3995 |
(let (($x349 (= ?x348 6))) |
|
3996 |
(let (($x188 (forall ((?v0 Int) )(!(let ((?x33 (|nat$| ?v0))) |
|
3997 |
(let ((?x34 (|of_nat$| ?x33))) |
|
3998 |
(let (($x35 (= ?x34 ?v0))) |
|
3999 |
(let (($x114 (>= ?v0 0))) |
|
4000 |
(let (($x115 (not $x114))) |
|
4001 |
(or $x115 $x35)))))) :pattern ( (|nat$| ?v0) ))) |
|
4002 |
)) |
|
4003 |
(let (($x121 (forall ((?v0 Int) )(let ((?x33 (|nat$| ?v0))) |
|
4004 |
(let ((?x34 (|of_nat$| ?x33))) |
|
4005 |
(let (($x35 (= ?x34 ?v0))) |
|
4006 |
(let (($x114 (>= ?v0 0))) |
|
4007 |
(let (($x115 (not $x114))) |
|
4008 |
(or $x115 $x35))))))) |
|
4009 |
)) |
|
4010 |
(let ((?x33 (|nat$| ?0))) |
|
4011 |
(let ((?x34 (|of_nat$| ?x33))) |
|
4012 |
(let (($x35 (= ?x34 ?0))) |
|
4013 |
(let (($x114 (>= ?0 0))) |
|
4014 |
(let (($x115 (not $x114))) |
|
4015 |
(let (($x118 (or $x115 $x35))) |
|
4016 |
(let (($x37 (forall ((?v0 Int) )(let ((?x33 (|nat$| ?v0))) |
|
4017 |
(let ((?x34 (|of_nat$| ?x33))) |
|
4018 |
(let (($x35 (= ?x34 ?v0))) |
|
4019 |
(let (($x32 (<= 0 ?v0))) |
|
4020 |
(=> $x32 $x35)))))) |
|
4021 |
)) |
|
4022 |
(let (($x109 (forall ((?v0 Int) )(let ((?x33 (|nat$| ?v0))) |
|
4023 |
(let ((?x34 (|of_nat$| ?x33))) |
|
4024 |
(let (($x35 (= ?x34 ?v0))) |
|
4025 |
(or (not (<= 0 ?v0)) $x35))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4026 |
)) |
| 56111 | 4027 |
(let ((@x117 (monotonicity (rewrite (= (<= 0 ?0) $x114)) (= (not (<= 0 ?0)) $x115)))) |
4028 |
(let ((@x123 (|quant-intro| (monotonicity @x117 (= (or (not (<= 0 ?0)) $x35) $x118)) (= $x109 $x121)))) |
|
4029 |
(let ((@x108 (rewrite (= (=> (<= 0 ?0) $x35) (or (not (<= 0 ?0)) $x35))))) |
|
4030 |
(let ((@x126 (mp (asserted $x37) (trans (|quant-intro| @x108 (= $x37 $x109)) @x123 (= $x37 $x121)) $x121))) |
|
4031 |
(let ((@x193 (mp (|mp~| @x126 (|nnf-pos| (refl (|~| $x118 $x118)) (|~| $x121 $x121)) $x121) (|quant-intro| (refl (= $x118 $x118)) (= $x121 $x188)) $x188))) |
|
4032 |
(let (($x274 (not $x188))) |
|
4033 |
(let (($x364 (or $x274 $x349))) |
|
4034 |
(let ((@x352 (rewrite (= (>= 6 0) true)))) |
|
4035 |
(let ((@x356 (trans (monotonicity @x352 (= (not (>= 6 0)) (not true))) (rewrite (= (not true) false)) (= (not (>= 6 0)) false)))) |
|
4036 |
(let ((@x359 (monotonicity @x356 (= (or (not (>= 6 0)) $x349) (or false $x349))))) |
|
4037 |
(let ((@x363 (trans @x359 (rewrite (= (or false $x349) $x349)) (= (or (not (>= 6 0)) $x349) $x349)))) |
|
4038 |
(let ((@x368 (monotonicity @x363 (= (or $x274 (or (not (>= 6 0)) $x349)) $x364)))) |
|
4039 |
(let ((@x371 (trans @x368 (rewrite (= $x364 $x364)) (= (or $x274 (or (not (>= 6 0)) $x349)) $x364)))) |
|
4040 |
(let ((@x372 (mp ((_ |quant-inst| 6) (or $x274 (or (not (>= 6 0)) $x349))) @x371 $x364))) |
|
4041 |
(let ((@x422 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x349) $x398)) (|unit-resolution| @x372 @x193 $x349) $x398))) |
|
4042 |
(let ((@x427 (|unit-resolution| (|def-axiom| (or $x390 $x403)) (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or (not $x398) $x404)) @x422 $x404) $x403))) |
|
4043 |
(let ((?x389 (|dec_10$| ?x24))) |
|
4044 |
(let (($x397 (= ?x389 ?x396))) |
|
4045 |
(let (($x175 (forall ((?v0 |Nat$|) )(!(let ((?x69 (|dec_10$| (|nat$| (+ (~ 10) (|of_nat$| ?v0)))))) |
|
4046 |
(let ((?x88 (ite (>= (|of_nat$| ?v0) 10) ?x69 ?v0))) |
|
4047 |
(let ((?x6 (|dec_10$| ?v0))) |
|
4048 |
(= ?x6 ?x88)))) :pattern ( (|dec_10$| ?v0) ) :pattern ( (|of_nat$| ?v0) ))) |
|
4049 |
)) |
|
4050 |
(let (($x96 (forall ((?v0 |Nat$|) )(let ((?x69 (|dec_10$| (|nat$| (+ (~ 10) (|of_nat$| ?v0)))))) |
|
4051 |
(let ((?x88 (ite (>= (|of_nat$| ?v0) 10) ?x69 ?v0))) |
|
4052 |
(let ((?x6 (|dec_10$| ?v0))) |
|
4053 |
(= ?x6 ?x88))))) |
|
4054 |
)) |
|
4055 |
(let ((?x69 (|dec_10$| (|nat$| (+ (~ 10) (|of_nat$| ?0)))))) |
|
4056 |
(let ((?x88 (ite (>= (|of_nat$| ?0) 10) ?x69 ?0))) |
|
4057 |
(let ((?x6 (|dec_10$| ?0))) |
|
4058 |
(let (($x93 (= ?x6 ?x88))) |
|
4059 |
(let (($x15 (forall ((?v0 |Nat$|) )(let ((?x7 (|of_nat$| ?v0))) |
|
4060 |
(let (($x9 (< ?x7 10))) |
|
4061 |
(let ((?x6 (|dec_10$| ?v0))) |
|
4062 |
(= ?x6 (ite $x9 ?v0 (|dec_10$| (|nat$| (- ?x7 10))))))))) |
|
4063 |
)) |
|
4064 |
(let (($x78 (forall ((?v0 |Nat$|) )(let ((?x69 (|dec_10$| (|nat$| (+ (~ 10) (|of_nat$| ?v0)))))) |
|
4065 |
(let ((?x7 (|of_nat$| ?v0))) |
|
4066 |
(let (($x9 (< ?x7 10))) |
|
4067 |
(let ((?x72 (ite $x9 ?v0 ?x69))) |
|
4068 |
(let ((?x6 (|dec_10$| ?v0))) |
|
4069 |
(= ?x6 ?x72))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4070 |
)) |
| 56109 | 4071 |
(let ((?x7 (|of_nat$| ?0))) |
| 56111 | 4072 |
(let (($x9 (< ?x7 10))) |
4073 |
(let ((?x72 (ite $x9 ?0 ?x69))) |
|
4074 |
(let ((@x87 (monotonicity (rewrite (= $x9 (not (>= ?x7 10)))) (= ?x72 (ite (not (>= ?x7 10)) ?0 ?x69))))) |
|
4075 |
(let ((@x92 (trans @x87 (rewrite (= (ite (not (>= ?x7 10)) ?0 ?x69) ?x88)) (= ?x72 ?x88)))) |
|
4076 |
(let ((@x98 (|quant-intro| (monotonicity @x92 (= (= ?x6 ?x72) $x93)) (= $x78 $x96)))) |
|
4077 |
(let (($x75 (= ?x6 ?x72))) |
|
4078 |
(let ((@x68 (monotonicity (rewrite (= (- ?x7 10) (+ (~ 10) ?x7))) (= (|nat$| (- ?x7 10)) (|nat$| (+ (~ 10) ?x7)))))) |
|
4079 |
(let ((@x74 (monotonicity (monotonicity @x68 (= (|dec_10$| (|nat$| (- ?x7 10))) ?x69)) (= (ite $x9 ?0 (|dec_10$| (|nat$| (- ?x7 10)))) ?x72)))) |
|
4080 |
(let ((@x77 (monotonicity @x74 (= (= ?x6 (ite $x9 ?0 (|dec_10$| (|nat$| (- ?x7 10))))) $x75)))) |
|
4081 |
(let ((@x101 (mp (asserted $x15) (trans (|quant-intro| @x77 (= $x15 $x78)) @x98 (= $x15 $x96)) $x96))) |
|
4082 |
(let ((@x180 (mp (|mp~| @x101 (|nnf-pos| (refl (|~| $x93 $x93)) (|~| $x96 $x96)) $x96) (|quant-intro| (refl (= $x93 $x93)) (= $x96 $x175)) $x175))) |
|
4083 |
(let (($x209 (not $x175))) |
|
4084 |
(let (($x400 (or $x209 $x397))) |
|
4085 |
(let ((@x401 ((_ |quant-inst| (|nat$| 6)) $x400))) |
|
4086 |
(let ((?x200 (|of_nat$| ?x17))) |
|
4087 |
(let ((?x383 (* (~ 1) ?x200))) |
|
4088 |
(let ((?x384 (+ ?x19 ?x383))) |
|
4089 |
(let (($x385 (<= ?x384 0))) |
|
4090 |
(let (($x382 (= ?x19 ?x200))) |
|
4091 |
(let ((?x202 (+ (~ 10) ?x200))) |
|
4092 |
(let ((?x203 (|nat$| ?x202))) |
|
4093 |
(let ((?x204 (|dec_10$| ?x203))) |
|
4094 |
(let (($x201 (>= ?x200 10))) |
|
4095 |
(let ((?x205 (ite $x201 ?x204 ?x17))) |
|
4096 |
(let (($x213 (= ?x17 ?x205))) |
|
4097 |
(let (($x214 (not $x201))) |
|
4098 |
(let (($x284 (<= ?x200 4))) |
|
4099 |
(let (($x256 (= ?x200 4))) |
|
4100 |
(let (($x275 (or $x274 $x256))) |
|
4101 |
(let ((@x259 (rewrite (= (>= 4 0) true)))) |
|
4102 |
(let ((@x266 (trans (monotonicity @x259 (= (not (>= 4 0)) (not true))) (rewrite (= (not true) false)) (= (not (>= 4 0)) false)))) |
|
4103 |
(let ((@x269 (monotonicity @x266 (= (or (not (>= 4 0)) $x256) (or false $x256))))) |
|
4104 |
(let ((@x273 (trans @x269 (rewrite (= (or false $x256) $x256)) (= (or (not (>= 4 0)) $x256) $x256)))) |
|
4105 |
(let ((@x279 (monotonicity @x273 (= (or $x274 (or (not (>= 4 0)) $x256)) $x275)))) |
|
4106 |
(let ((@x282 (trans @x279 (rewrite (= $x275 $x275)) (= (or $x274 (or (not (>= 4 0)) $x256)) $x275)))) |
|
4107 |
(let ((@x283 (mp ((_ |quant-inst| 4) (or $x274 (or (not (>= 4 0)) $x256))) @x282 $x275))) |
|
4108 |
(let ((@x433 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x256) $x284)) (|unit-resolution| @x283 @x193 $x256) $x284))) |
|
4109 |
(let ((@x438 (|unit-resolution| (|def-axiom| (or $x201 $x213)) (|unit-resolution| ((_ |th-lemma| arith farkas 1 1) (or (not $x284) $x214)) @x433 $x214) $x213))) |
|
4110 |
(let (($x206 (= ?x18 ?x205))) |
|
4111 |
(let (($x210 (or $x209 $x206))) |
|
4112 |
(let ((@x211 ((_ |quant-inst| (|nat$| 4)) $x210))) |
|
4113 |
(let ((@x443 (trans (|unit-resolution| @x211 @x180 $x206) (symm @x438 (= ?x205 ?x17)) (= ?x18 ?x17)))) |
|
4114 |
(let ((@x448 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x382) $x385)) (monotonicity @x443 $x382) $x385))) |
|
4115 |
(let (($x386 (>= ?x384 0))) |
|
4116 |
(let ((@x451 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x382) $x386)) (monotonicity @x443 $x382) $x386))) |
|
4117 |
(let (($x285 (>= ?x200 4))) |
|
4118 |
(let ((@x454 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x256) $x285)) (|unit-resolution| @x283 @x193 $x256) $x285))) |
|
4119 |
(let ((?x207 (|of_nat$| ?x21))) |
|
4120 |
(let ((?x309 (* (~ 1) ?x207))) |
|
4121 |
(let ((?x310 (+ ?x20 ?x309))) |
|
4122 |
(let (($x325 (<= ?x310 0))) |
|
4123 |
(let (($x307 (= ?x310 0))) |
|
4124 |
(let (($x299 (>= ?x19 0))) |
|
4125 |
(let ((@x459 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 1) (or $x299 (not $x285) (not $x386))) @x454 @x451 $x299))) |
|
4126 |
(let (($x302 (not $x299))) |
|
4127 |
(let (($x311 (or $x302 $x307))) |
|
4128 |
(let (($x314 (or $x274 $x302 $x307))) |
|
4129 |
(let (($x297 (= ?x207 ?x20))) |
|
4130 |
(let (($x295 (>= ?x20 0))) |
|
4131 |
(let (($x296 (not $x295))) |
|
4132 |
(let (($x298 (or $x296 $x297))) |
|
4133 |
(let (($x315 (or $x274 $x298))) |
|
4134 |
(let ((@x313 (monotonicity (monotonicity (rewrite (= $x295 $x299)) (= $x296 $x302)) (rewrite (= $x297 $x307)) (= $x298 $x311)))) |
|
4135 |
(let ((@x323 (trans (monotonicity @x313 (= $x315 (or $x274 $x311))) (rewrite (= (or $x274 $x311) $x314)) (= $x315 $x314)))) |
|
4136 |
(let ((@x324 (mp ((_ |quant-inst| (* 4 ?x19)) $x315) @x323 $x314))) |
|
4137 |
(let ((@x465 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x307) $x325)) (|unit-resolution| (|unit-resolution| @x324 @x193 $x311) @x459 $x307) $x325))) |
|
4138 |
(let (($x326 (>= ?x310 0))) |
|
4139 |
(let ((@x468 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x307) $x326)) (|unit-resolution| (|unit-resolution| @x324 @x193 $x311) @x459 $x307) $x326))) |
|
4140 |
(let ((@x472 (monotonicity ((_ |th-lemma| arith eq-propagate 1 1 -4 -4 -4 -4) @x468 @x465 @x454 @x433 @x451 @x448 (= (+ (~ 10) ?x207) 6)) (= (|nat$| (+ (~ 10) ?x207)) ?x24)))) |
|
4141 |
(let ((?x219 (+ (~ 10) ?x207))) |
|
4142 |
(let ((?x220 (|nat$| ?x219))) |
|
4143 |
(let ((?x221 (|dec_10$| ?x220))) |
|
4144 |
(let (($x208 (>= ?x207 10))) |
|
4145 |
(let ((?x222 (ite $x208 ?x221 ?x21))) |
|
4146 |
(let (($x228 (= ?x221 ?x222))) |
|
4147 |
(let ((@x476 (|unit-resolution| ((_ |th-lemma| arith assign-bounds 1 4 4) (or $x208 (not $x325) (not $x285) (not $x386))) @x454 @x465 @x451 $x208))) |
|
4148 |
(let ((@x480 (symm (|unit-resolution| (|def-axiom| (or (not $x208) $x228)) @x476 $x228) (= ?x222 ?x221)))) |
|
4149 |
(let (($x223 (= ?x22 ?x222))) |
|
4150 |
(let (($x226 (or $x209 $x223))) |
|
4151 |
(let ((@x227 ((_ |quant-inst| (|nat$| ?x20)) $x226))) |
|
4152 |
(let ((@x488 (trans (trans (|unit-resolution| @x227 @x180 $x223) @x480 (= ?x22 ?x221)) (monotonicity @x472 (= ?x221 ?x389)) (= ?x22 ?x389)))) |
|
4153 |
(let ((@x491 (trans (trans @x488 (|unit-resolution| @x401 @x180 $x397) (= ?x22 ?x396)) (symm @x427 (= ?x396 ?x24)) $x25))) |
|
4154 |
(let (($x26 (not $x25))) |
|
4155 |
(let ((@x102 (asserted $x26))) |
|
4156 |
(|unit-resolution| @x102 @x491 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4157 |
|
| 56111 | 4158 |
a25b64a8f04cffe57bd9a525d4bad154c19d2b20 310 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4159 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4160 |
((set-logic <null>) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4161 |
(proof |
| 56111 | 4162 |
(let ((?x42 (|map$| |uu$| |xs$|))) |
4163 |
(let ((?x43 (|eval_dioph$| |ks$| ?x42))) |
|
4164 |
(let ((?x145 (* (~ 1) ?x43))) |
|
4165 |
(let ((?x146 (+ |l$| ?x145))) |
|
4166 |
(let ((?x149 (|div$| ?x146 2))) |
|
4167 |
(let ((?x47 (|map$| |uua$| |xs$|))) |
|
4168 |
(let ((?x48 (|eval_dioph$| |ks$| ?x47))) |
|
4169 |
(let ((?x769 (+ ?x48 (* (~ 1) ?x149)))) |
|
4170 |
(let (($x771 (>= ?x769 0))) |
|
4171 |
(let ((?x452 (* (~ 1) |l$|))) |
|
4172 |
(let ((?x39 (|eval_dioph$| |ks$| |xs$|))) |
|
4173 |
(let ((?x776 (+ ?x39 ?x452))) |
|
4174 |
(let (($x778 (>= ?x776 0))) |
|
4175 |
(let (($x41 (= ?x39 |l$|))) |
|
4176 |
(let (($x152 (= ?x48 ?x149))) |
|
4177 |
(let (($x362 (not $x152))) |
|
| 56109 | 4178 |
(let ((?x45 (|mod$| |l$| 2))) |
4179 |
(let ((?x44 (|mod$| ?x43 2))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4180 |
(let (($x46 (= ?x44 ?x45))) |
| 56111 | 4181 |
(let (($x361 (not $x46))) |
4182 |
(let (($x363 (or $x361 $x362))) |
|
4183 |
(let ((?x730 (div ?x43 2))) |
|
4184 |
(let ((?x913 (* (~ 1) ?x730))) |
|
4185 |
(let ((?x685 (mod ?x43 2))) |
|
4186 |
(let ((?x712 (* (~ 1) ?x685))) |
|
4187 |
(let ((?x645 (div |l$| 2))) |
|
4188 |
(let ((?x671 (* (~ 1) ?x645))) |
|
4189 |
(let ((?x599 (mod |l$| 2))) |
|
4190 |
(let ((?x626 (* (~ 1) ?x599))) |
|
4191 |
(let ((?x656 (* (~ 1) ?x48))) |
|
4192 |
(let (($x737 (>= (+ |l$| ?x44 ?x656 ?x626 ?x671 ?x712 ?x913) 1))) |
|
4193 |
(let ((?x658 (* (~ 2) ?x645))) |
|
4194 |
(let ((?x659 (+ |l$| ?x626 ?x658))) |
|
4195 |
(let (($x657 (= ?x659 0))) |
|
4196 |
(let ((@x108 (|true-axiom| true))) |
|
4197 |
(let ((@x945 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x657) (>= ?x659 0))) (|unit-resolution| ((_ |th-lemma| arith) (or false $x657)) @x108 $x657) (>= ?x659 0)))) |
|
4198 |
(let ((?x627 (+ ?x45 ?x626))) |
|
4199 |
(let (($x628 (= ?x627 0))) |
|
4200 |
(let (($x418 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x83 (mod ?v0 ?v1))) |
|
4201 |
(let ((?x230 (* (~ 1) ?v1))) |
|
4202 |
(let ((?x227 (* (~ 1) ?v0))) |
|
4203 |
(let ((?x273 (mod ?x227 ?x230))) |
|
4204 |
(let ((?x279 (* (~ 1) ?x273))) |
|
4205 |
(let (($x248 (<= ?v1 0))) |
|
4206 |
(let ((?x299 (ite $x248 ?x279 ?x83))) |
|
4207 |
(let (($x72 (= ?v1 0))) |
|
4208 |
(let ((?x304 (ite $x72 ?v0 ?x299))) |
|
4209 |
(let ((?x82 (|mod$| ?v0 ?v1))) |
|
4210 |
(= ?x82 ?x304))))))))))) :pattern ( (|mod$| ?v0 ?v1) ))) |
|
4211 |
)) |
|
4212 |
(let (($x310 (forall ((?v0 Int) (?v1 Int) )(let ((?x83 (mod ?v0 ?v1))) |
|
4213 |
(let ((?x230 (* (~ 1) ?v1))) |
|
4214 |
(let ((?x227 (* (~ 1) ?v0))) |
|
4215 |
(let ((?x273 (mod ?x227 ?x230))) |
|
4216 |
(let ((?x279 (* (~ 1) ?x273))) |
|
4217 |
(let (($x248 (<= ?v1 0))) |
|
4218 |
(let ((?x299 (ite $x248 ?x279 ?x83))) |
|
4219 |
(let (($x72 (= ?v1 0))) |
|
4220 |
(let ((?x304 (ite $x72 ?v0 ?x299))) |
|
4221 |
(let ((?x82 (|mod$| ?v0 ?v1))) |
|
4222 |
(= ?x82 ?x304)))))))))))) |
|
4223 |
)) |
|
4224 |
(let ((?x83 (mod ?1 ?0))) |
|
4225 |
(let ((?x230 (* (~ 1) ?0))) |
|
4226 |
(let ((?x227 (* (~ 1) ?1))) |
|
4227 |
(let ((?x273 (mod ?x227 ?x230))) |
|
4228 |
(let ((?x279 (* (~ 1) ?x273))) |
|
4229 |
(let (($x248 (<= ?0 0))) |
|
4230 |
(let ((?x299 (ite $x248 ?x279 ?x83))) |
|
4231 |
(let (($x72 (= ?0 0))) |
|
4232 |
(let ((?x304 (ite $x72 ?1 ?x299))) |
|
4233 |
(let ((?x82 (|mod$| ?1 ?0))) |
|
4234 |
(let (($x307 (= ?x82 ?x304))) |
|
4235 |
(let (($x89 (forall ((?v0 Int) (?v1 Int) )(let (($x72 (= ?v1 0))) |
|
4236 |
(let ((?x87 (ite $x72 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1))))))) |
|
4237 |
(let ((?x82 (|mod$| ?v0 ?v1))) |
|
4238 |
(= ?x82 ?x87))))) |
|
4239 |
)) |
|
4240 |
(let (($x293 (forall ((?v0 Int) (?v1 Int) )(let ((?x230 (* (~ 1) ?v1))) |
|
4241 |
(let ((?x227 (* (~ 1) ?v0))) |
|
4242 |
(let ((?x273 (mod ?x227 ?x230))) |
|
4243 |
(let ((?x279 (* (~ 1) ?x273))) |
|
4244 |
(let ((?x83 (mod ?v0 ?v1))) |
|
4245 |
(let (($x73 (< 0 ?v1))) |
|
4246 |
(let ((?x284 (ite $x73 ?x83 ?x279))) |
|
4247 |
(let (($x72 (= ?v1 0))) |
|
4248 |
(let ((?x287 (ite $x72 ?v0 ?x284))) |
|
4249 |
(let ((?x82 (|mod$| ?v0 ?v1))) |
|
4250 |
(= ?x82 ?x287)))))))))))) |
|
4251 |
)) |
|
4252 |
(let ((@x298 (monotonicity (rewrite (= (< 0 ?0) (not $x248))) (= (ite (< 0 ?0) ?x83 ?x279) (ite (not $x248) ?x83 ?x279))))) |
|
4253 |
(let ((@x303 (trans @x298 (rewrite (= (ite (not $x248) ?x83 ?x279) ?x299)) (= (ite (< 0 ?0) ?x83 ?x279) ?x299)))) |
|
4254 |
(let ((@x306 (monotonicity @x303 (= (ite $x72 ?1 (ite (< 0 ?0) ?x83 ?x279)) ?x304)))) |
|
4255 |
(let ((@x309 (monotonicity @x306 (= (= ?x82 (ite $x72 ?1 (ite (< 0 ?0) ?x83 ?x279))) $x307)))) |
|
4256 |
(let (($x73 (< 0 ?0))) |
|
4257 |
(let ((?x284 (ite $x73 ?x83 ?x279))) |
|
4258 |
(let ((?x287 (ite $x72 ?1 ?x284))) |
|
4259 |
(let (($x290 (= ?x82 ?x287))) |
|
4260 |
(let (($x291 (= (= ?x82 (ite $x72 ?1 (ite $x73 ?x83 (- (mod (- ?1) (- ?0)))))) $x290))) |
|
4261 |
(let ((@x275 (monotonicity (rewrite (= (- ?1) ?x227)) (rewrite (= (- ?0) ?x230)) (= (mod (- ?1) (- ?0)) ?x273)))) |
|
4262 |
(let ((@x283 (trans (monotonicity @x275 (= (- (mod (- ?1) (- ?0))) (- ?x273))) (rewrite (= (- ?x273) ?x279)) (= (- (mod (- ?1) (- ?0))) ?x279)))) |
|
4263 |
(let ((@x286 (monotonicity @x283 (= (ite $x73 ?x83 (- (mod (- ?1) (- ?0)))) ?x284)))) |
|
4264 |
(let ((@x289 (monotonicity @x286 (= (ite $x72 ?1 (ite $x73 ?x83 (- (mod (- ?1) (- ?0))))) ?x287)))) |
|
4265 |
(let ((@x314 (trans (|quant-intro| (monotonicity @x289 $x291) (= $x89 $x293)) (|quant-intro| @x309 (= $x293 $x310)) (= $x89 $x310)))) |
|
4266 |
(let ((@x360 (|mp~| (mp (asserted $x89) @x314 $x310) (|nnf-pos| (refl (|~| $x307 $x307)) (|~| $x310 $x310)) $x310))) |
|
4267 |
(let ((@x423 (mp @x360 (|quant-intro| (refl (= $x307 $x307)) (= $x310 $x418)) $x418))) |
|
4268 |
(let (($x633 (not $x418))) |
|
4269 |
(let (($x634 (or $x633 $x628))) |
|
4270 |
(let (($x440 (<= 2 0))) |
|
4271 |
(let ((?x600 (ite $x440 (* (~ 1) (mod ?x452 (* (~ 1) 2))) ?x599))) |
|
4272 |
(let (($x439 (= 2 0))) |
|
4273 |
(let ((?x601 (ite $x439 |l$| ?x600))) |
|
4274 |
(let (($x602 (= ?x45 ?x601))) |
|
4275 |
(let ((@x457 (rewrite (= (* (~ 1) 2) (~ 2))))) |
|
4276 |
(let ((@x608 (monotonicity (monotonicity @x457 (= (mod ?x452 (* (~ 1) 2)) (mod ?x452 (~ 2)))) (= (* (~ 1) (mod ?x452 (* (~ 1) 2))) (* (~ 1) (mod ?x452 (~ 2))))))) |
|
4277 |
(let ((@x451 (rewrite (= $x440 false)))) |
|
4278 |
(let ((@x611 (monotonicity @x451 @x608 (= ?x600 (ite false (* (~ 1) (mod ?x452 (~ 2))) ?x599))))) |
|
4279 |
(let ((@x615 (trans @x611 (rewrite (= (ite false (* (~ 1) (mod ?x452 (~ 2))) ?x599) ?x599)) (= ?x600 ?x599)))) |
|
4280 |
(let ((@x449 (rewrite (= $x439 false)))) |
|
4281 |
(let ((@x622 (trans (monotonicity @x449 @x615 (= ?x601 (ite false |l$| ?x599))) (rewrite (= (ite false |l$| ?x599) ?x599)) (= ?x601 ?x599)))) |
|
4282 |
(let ((@x632 (trans (monotonicity @x622 (= $x602 (= ?x45 ?x599))) (rewrite (= (= ?x45 ?x599) $x628)) (= $x602 $x628)))) |
|
4283 |
(let ((@x641 (trans (monotonicity @x632 (= (or $x633 $x602) $x634)) (rewrite (= $x634 $x634)) (= (or $x633 $x602) $x634)))) |
|
4284 |
(let ((@x950 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x628) (>= ?x627 0))) (|unit-resolution| (mp ((_ |quant-inst| |l$| 2) (or $x633 $x602)) @x641 $x634) @x423 $x628) (>= ?x627 0)))) |
|
4285 |
(let (($x1021 (not $x778))) |
|
4286 |
(let (($x777 (<= ?x776 0))) |
|
4287 |
(let (($x770 (<= ?x769 0))) |
|
4288 |
(let (($x364 (not $x363))) |
|
4289 |
(let ((@x741 (hypothesis $x364))) |
|
4290 |
(let ((@x1018 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x362 $x770)) (|unit-resolution| (|def-axiom| (or $x363 $x152)) @x741 $x152) $x770))) |
|
4291 |
(let ((?x520 (+ |l$| ?x145 (* (~ 2) (div ?x146 2)) (* (~ 1) (mod (+ |l$| ?x43) 2))))) |
|
4292 |
(let (($x517 (= ?x520 0))) |
|
4293 |
(let ((@x876 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x517) (>= ?x520 0))) (|unit-resolution| ((_ |th-lemma| arith) (or false $x517)) @x108 $x517) (>= ?x520 0)))) |
|
4294 |
(let ((?x584 (* (~ 2) ?x48))) |
|
4295 |
(let ((?x585 (+ ?x39 ?x145 ?x584))) |
|
4296 |
(let (($x586 (= ?x585 0))) |
|
4297 |
(let (($x384 (forall ((?v0 |Int_list$|) (?v1 |Nat_list$|) )(!(let ((?x24 (|eval_dioph$| ?v0 ?v1))) |
|
4298 |
(let ((?x136 (+ ?x24 (* (~ 1) (|eval_dioph$| ?v0 (|map$| |uu$| ?v1))) (* (~ 2) (|eval_dioph$| ?v0 (|map$| |uua$| ?v1)))))) |
|
4299 |
(= ?x136 0))) :pattern ( (|eval_dioph$| ?v0 (|map$| |uu$| ?v1)) ) :pattern ( (|eval_dioph$| ?v0 (|map$| |uua$| ?v1)) ))) |
|
4300 |
)) |
|
4301 |
(let (($x138 (forall ((?v0 |Int_list$|) (?v1 |Nat_list$|) )(let ((?x24 (|eval_dioph$| ?v0 ?v1))) |
|
4302 |
(let ((?x136 (+ ?x24 (* (~ 1) (|eval_dioph$| ?v0 (|map$| |uu$| ?v1))) (* (~ 2) (|eval_dioph$| ?v0 (|map$| |uua$| ?v1)))))) |
|
4303 |
(= ?x136 0)))) |
|
4304 |
)) |
|
4305 |
(let ((?x24 (|eval_dioph$| ?1 ?0))) |
|
4306 |
(let ((?x136 (+ ?x24 (* (~ 1) (|eval_dioph$| ?1 (|map$| |uu$| ?0))) (* (~ 2) (|eval_dioph$| ?1 (|map$| |uua$| ?0)))))) |
|
4307 |
(let (($x132 (= ?x136 0))) |
|
4308 |
(let (($x36 (forall ((?v0 |Int_list$|) (?v1 |Nat_list$|) )(let ((?x24 (|eval_dioph$| ?v0 ?v1))) |
|
4309 |
(let ((?x27 (|eval_dioph$| ?v0 (|map$| |uu$| ?v1)))) |
|
4310 |
(let ((?x34 (+ (* (|eval_dioph$| ?v0 (|map$| |uua$| ?v1)) 2) ?x27))) |
|
4311 |
(= ?x34 ?x24))))) |
|
4312 |
)) |
|
4313 |
(let (($x127 (forall ((?v0 |Int_list$|) (?v1 |Nat_list$|) )(let ((?x24 (|eval_dioph$| ?v0 ?v1))) |
|
4314 |
(let ((?x32 (|eval_dioph$| ?v0 (|map$| |uua$| ?v1)))) |
|
4315 |
(let ((?x113 (* 2 ?x32))) |
|
4316 |
(let ((?x27 (|eval_dioph$| ?v0 (|map$| |uu$| ?v1)))) |
|
4317 |
(let ((?x119 (+ ?x27 ?x113))) |
|
4318 |
(= ?x119 ?x24))))))) |
|
4319 |
)) |
|
4320 |
(let ((?x32 (|eval_dioph$| ?1 (|map$| |uua$| ?0)))) |
|
4321 |
(let ((?x113 (* 2 ?x32))) |
|
4322 |
(let ((?x27 (|eval_dioph$| ?1 (|map$| |uu$| ?0)))) |
|
4323 |
(let ((?x119 (+ ?x27 ?x113))) |
|
4324 |
(let (($x124 (= ?x119 ?x24))) |
|
4325 |
(let ((@x118 (monotonicity (rewrite (= (* ?x32 2) ?x113)) (= (+ (* ?x32 2) ?x27) (+ ?x113 ?x27))))) |
|
4326 |
(let ((@x123 (trans @x118 (rewrite (= (+ ?x113 ?x27) ?x119)) (= (+ (* ?x32 2) ?x27) ?x119)))) |
|
4327 |
(let ((@x129 (|quant-intro| (monotonicity @x123 (= (= (+ (* ?x32 2) ?x27) ?x24) $x124)) (= $x36 $x127)))) |
|
4328 |
(let ((@x142 (trans @x129 (|quant-intro| (rewrite (= $x124 $x132)) (= $x127 $x138)) (= $x36 $x138)))) |
|
4329 |
(let ((@x335 (|mp~| (mp (asserted $x36) @x142 $x138) (|nnf-pos| (refl (|~| $x132 $x132)) (|~| $x138 $x138)) $x138))) |
|
4330 |
(let ((@x389 (mp @x335 (|quant-intro| (refl (= $x132 $x132)) (= $x138 $x384)) $x384))) |
|
4331 |
(let ((@x883 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x586) (<= ?x585 0))) (|unit-resolution| ((_ |quant-inst| |ks$| |xs$|) (or (not $x384) $x586)) @x389 $x586) (<= ?x585 0)))) |
|
4332 |
(let ((?x479 (+ ?x149 (* (~ 1) (div ?x146 2))))) |
|
4333 |
(let (($x480 (= ?x479 0))) |
|
4334 |
(let (($x411 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x74 (div ?v0 ?v1))) |
|
4335 |
(let ((?x230 (* (~ 1) ?v1))) |
|
4336 |
(let ((?x227 (* (~ 1) ?v0))) |
|
4337 |
(let ((?x233 (div ?x227 ?x230))) |
|
4338 |
(let (($x248 (<= ?v1 0))) |
|
4339 |
(let ((?x255 (ite $x248 ?x233 ?x74))) |
|
4340 |
(let (($x72 (= ?v1 0))) |
|
4341 |
(let ((?x71 (|div$| ?v0 ?v1))) |
|
4342 |
(= ?x71 (ite $x72 0 ?x255)))))))))) :pattern ( (|div$| ?v0 ?v1) ))) |
|
4343 |
)) |
|
4344 |
(let (($x266 (forall ((?v0 Int) (?v1 Int) )(let ((?x74 (div ?v0 ?v1))) |
|
4345 |
(let ((?x230 (* (~ 1) ?v1))) |
|
4346 |
(let ((?x227 (* (~ 1) ?v0))) |
|
4347 |
(let ((?x233 (div ?x227 ?x230))) |
|
4348 |
(let (($x248 (<= ?v1 0))) |
|
4349 |
(let ((?x255 (ite $x248 ?x233 ?x74))) |
|
4350 |
(let (($x72 (= ?v1 0))) |
|
4351 |
(let ((?x71 (|div$| ?v0 ?v1))) |
|
4352 |
(= ?x71 (ite $x72 0 ?x255))))))))))) |
|
4353 |
)) |
|
4354 |
(let ((?x71 (|div$| ?1 ?0))) |
|
4355 |
(let (($x263 (= ?x71 (ite $x72 0 (ite $x248 (div ?x227 ?x230) (div ?1 ?0)))))) |
|
4356 |
(let (($x81 (forall ((?v0 Int) (?v1 Int) )(let (($x72 (= ?v1 0))) |
|
4357 |
(let ((?x79 (ite $x72 0 (ite (< 0 ?v1) (div ?v0 ?v1) (div (- ?v0) (- ?v1)))))) |
|
4358 |
(let ((?x71 (|div$| ?v0 ?v1))) |
|
4359 |
(= ?x71 ?x79))))) |
|
4360 |
)) |
|
4361 |
(let (($x245 (forall ((?v0 Int) (?v1 Int) )(let ((?x230 (* (~ 1) ?v1))) |
|
4362 |
(let ((?x227 (* (~ 1) ?v0))) |
|
4363 |
(let ((?x233 (div ?x227 ?x230))) |
|
4364 |
(let ((?x74 (div ?v0 ?v1))) |
|
4365 |
(let (($x73 (< 0 ?v1))) |
|
4366 |
(let ((?x236 (ite $x73 ?x74 ?x233))) |
|
4367 |
(let (($x72 (= ?v1 0))) |
|
4368 |
(let ((?x239 (ite $x72 0 ?x236))) |
|
4369 |
(let ((?x71 (|div$| ?v0 ?v1))) |
|
4370 |
(= ?x71 ?x239))))))))))) |
|
4371 |
)) |
|
4372 |
(let ((?x233 (div ?x227 ?x230))) |
|
4373 |
(let ((?x74 (div ?1 ?0))) |
|
4374 |
(let ((?x236 (ite $x73 ?x74 ?x233))) |
|
4375 |
(let ((?x239 (ite $x72 0 ?x236))) |
|
4376 |
(let (($x242 (= ?x71 ?x239))) |
|
4377 |
(let ((@x254 (monotonicity (rewrite (= $x73 (not $x248))) (= ?x236 (ite (not $x248) ?x74 ?x233))))) |
|
4378 |
(let ((@x259 (trans @x254 (rewrite (= (ite (not $x248) ?x74 ?x233) (ite $x248 ?x233 ?x74))) (= ?x236 (ite $x248 ?x233 ?x74))))) |
|
4379 |
(let ((@x265 (monotonicity (monotonicity @x259 (= ?x239 (ite $x72 0 (ite $x248 ?x233 ?x74)))) (= $x242 $x263)))) |
|
4380 |
(let (($x243 (= (= ?x71 (ite $x72 0 (ite $x73 ?x74 (div (- ?1) (- ?0))))) $x242))) |
|
4381 |
(let ((@x235 (monotonicity (rewrite (= (- ?1) ?x227)) (rewrite (= (- ?0) ?x230)) (= (div (- ?1) (- ?0)) ?x233)))) |
|
4382 |
(let ((@x241 (monotonicity (monotonicity @x235 (= (ite $x73 ?x74 (div (- ?1) (- ?0))) ?x236)) (= (ite $x72 0 (ite $x73 ?x74 (div (- ?1) (- ?0)))) ?x239)))) |
|
4383 |
(let ((@x270 (trans (|quant-intro| (monotonicity @x241 $x243) (= $x81 $x245)) (|quant-intro| @x265 (= $x245 $x266)) (= $x81 $x266)))) |
|
4384 |
(let ((@x355 (|mp~| (mp (asserted $x81) @x270 $x266) (|nnf-pos| (refl (|~| $x263 $x263)) (|~| $x266 $x266)) $x266))) |
|
4385 |
(let ((@x416 (mp @x355 (|quant-intro| (refl (= $x263 $x263)) (= $x266 $x411)) $x411))) |
|
4386 |
(let (($x486 (or (not $x411) $x480))) |
|
4387 |
(let ((?x444 (div ?x146 2))) |
|
4388 |
(let ((?x445 (ite $x440 (div (* (~ 1) ?x146) (* (~ 1) 2)) ?x444))) |
|
4389 |
(let ((?x446 (ite $x439 0 ?x445))) |
|
4390 |
(let (($x447 (= ?x149 ?x446))) |
|
4391 |
(let ((@x460 (monotonicity (rewrite (= (* (~ 1) ?x146) (+ ?x452 ?x43))) @x457 (= (div (* (~ 1) ?x146) (* (~ 1) 2)) (div (+ ?x452 ?x43) (~ 2)))))) |
|
4392 |
(let ((@x463 (monotonicity @x451 @x460 (= ?x445 (ite false (div (+ ?x452 ?x43) (~ 2)) ?x444))))) |
|
4393 |
(let ((@x467 (trans @x463 (rewrite (= (ite false (div (+ ?x452 ?x43) (~ 2)) ?x444) ?x444)) (= ?x445 ?x444)))) |
|
4394 |
(let ((@x474 (trans (monotonicity @x449 @x467 (= ?x446 (ite false 0 ?x444))) (rewrite (= (ite false 0 ?x444) ?x444)) (= ?x446 ?x444)))) |
|
4395 |
(let ((@x484 (trans (monotonicity @x474 (= $x447 (= ?x149 ?x444))) (rewrite (= (= ?x149 ?x444) $x480)) (= $x447 $x480)))) |
|
4396 |
(let ((@x493 (trans (monotonicity @x484 (= (or (not $x411) $x447) $x486)) (rewrite (= $x486 $x486)) (= (or (not $x411) $x447) $x486)))) |
|
4397 |
(let ((@x885 (|unit-resolution| (mp ((_ |quant-inst| (+ |l$| ?x145) 2) (or (not $x411) $x447)) @x493 $x486) @x416 $x480))) |
|
4398 |
(let ((@x889 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x480) (<= ?x479 0))) @x885 (<= ?x479 0)))) |
|
4399 |
(let ((@x892 (|unit-resolution| ((_ |th-lemma| arith) (or false (>= (mod (+ |l$| ?x43) 2) 0))) @x108 (>= (mod (+ |l$| ?x43) 2) 0)))) |
|
4400 |
(let ((@x893 ((_ |th-lemma| arith farkas 1 -2 -2 -1 1 1) @x892 @x889 (hypothesis $x770) @x883 (hypothesis (not $x777)) @x876 false))) |
|
4401 |
(let (($x169 (not $x41))) |
|
4402 |
(let (($x370 (= $x41 $x363))) |
|
4403 |
(let ((@x369 (monotonicity (rewrite (= (and $x46 $x152) $x364)) (= (= $x169 (and $x46 $x152)) (= $x169 $x364))))) |
|
4404 |
(let ((@x374 (trans @x369 (rewrite (= (= $x169 $x364) $x370)) (= (= $x169 (and $x46 $x152)) $x370)))) |
|
4405 |
(let (($x155 (and $x46 $x152))) |
|
4406 |
(let (($x170 (= $x169 $x155))) |
|
4407 |
(let (($x53 (= $x41 (and $x46 (= ?x48 (|div$| (- |l$| ?x43) 2)))))) |
|
4408 |
(let (($x54 (not $x53))) |
|
4409 |
(let ((@x151 (monotonicity (rewrite (= (- |l$| ?x43) ?x146)) (= (|div$| (- |l$| ?x43) 2) ?x149)))) |
|
4410 |
(let ((@x157 (monotonicity (monotonicity @x151 (= (= ?x48 (|div$| (- |l$| ?x43) 2)) $x152)) (= (and $x46 (= ?x48 (|div$| (- |l$| ?x43) 2))) $x155)))) |
|
4411 |
(let ((@x165 (trans (monotonicity @x157 (= $x53 (= $x41 $x155))) (rewrite (= (= $x41 $x155) (= $x41 $x155))) (= $x53 (= $x41 $x155))))) |
|
4412 |
(let ((@x174 (trans (monotonicity @x165 (= $x54 (not (= $x41 $x155)))) (rewrite (= (not (= $x41 $x155)) $x170)) (= $x54 $x170)))) |
|
4413 |
(let ((@x375 (mp (mp (asserted $x54) @x174 $x170) @x374 $x370))) |
|
4414 |
(let ((@x438 (|unit-resolution| (|def-axiom| (or $x169 $x363 (not $x370))) @x375 (or $x169 $x363)))) |
|
4415 |
(let ((@x1025 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x41 (not $x777) $x1021)) (|unit-resolution| @x438 @x741 $x169) (or (not $x777) $x1021)))) |
|
4416 |
(let ((@x1026 (|unit-resolution| @x1025 (|unit-resolution| (lemma @x893 (or $x777 (not $x770))) @x1018 $x777) $x1021))) |
|
4417 |
(let ((@x1029 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x361 (>= (+ ?x44 (* (~ 1) ?x45)) 0))) (|unit-resolution| (|def-axiom| (or $x363 $x46)) @x741 $x46) (>= (+ ?x44 (* (~ 1) ?x45)) 0)))) |
|
4418 |
(let ((?x744 (+ ?x43 ?x712 (* (~ 2) ?x730)))) |
|
4419 |
(let (($x742 (= ?x744 0))) |
|
4420 |
(let ((@x1032 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x742) (>= ?x744 0))) (|unit-resolution| ((_ |th-lemma| arith) (or false $x742)) @x108 $x742) (>= ?x744 0)))) |
|
4421 |
(let ((?x713 (+ ?x44 ?x712))) |
|
4422 |
(let (($x714 (= ?x713 0))) |
|
4423 |
(let (($x719 (or $x633 $x714))) |
|
4424 |
(let ((?x686 (ite $x440 (* (~ 1) (mod ?x145 (* (~ 1) 2))) ?x685))) |
|
4425 |
(let ((?x687 (ite $x439 ?x43 ?x686))) |
|
4426 |
(let (($x688 (= ?x44 ?x687))) |
|
4427 |
(let ((@x694 (monotonicity (monotonicity @x457 (= (mod ?x145 (* (~ 1) 2)) (mod ?x145 (~ 2)))) (= (* (~ 1) (mod ?x145 (* (~ 1) 2))) (* (~ 1) (mod ?x145 (~ 2))))))) |
|
4428 |
(let ((@x697 (monotonicity @x451 @x694 (= ?x686 (ite false (* (~ 1) (mod ?x145 (~ 2))) ?x685))))) |
|
4429 |
(let ((@x701 (trans @x697 (rewrite (= (ite false (* (~ 1) (mod ?x145 (~ 2))) ?x685) ?x685)) (= ?x686 ?x685)))) |
|
4430 |
(let ((@x708 (trans (monotonicity @x449 @x701 (= ?x687 (ite false ?x43 ?x685))) (rewrite (= (ite false ?x43 ?x685) ?x685)) (= ?x687 ?x685)))) |
|
4431 |
(let ((@x718 (trans (monotonicity @x708 (= $x688 (= ?x44 ?x685))) (rewrite (= (= ?x44 ?x685) $x714)) (= $x688 $x714)))) |
|
4432 |
(let ((@x726 (trans (monotonicity @x718 (= (or $x633 $x688) $x719)) (rewrite (= $x719 $x719)) (= (or $x633 $x688) $x719)))) |
|
4433 |
(let ((@x1035 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x714) (>= ?x713 0))) (|unit-resolution| (mp ((_ |quant-inst| (|eval_dioph$| |ks$| ?x42) 2) (or $x633 $x688)) @x726 $x719) @x423 $x714) (>= ?x713 0)))) |
|
4434 |
(let ((@x992 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x586) (>= ?x585 0))) (|unit-resolution| ((_ |quant-inst| |ks$| |xs$|) (or (not $x384) $x586)) @x389 $x586) (>= ?x585 0)))) |
|
4435 |
(let ((?x773 (+ ?x44 (* (~ 1) ?x45)))) |
|
4436 |
(let (($x774 (<= ?x773 0))) |
|
4437 |
(let ((@x1010 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x361 $x774)) (|unit-resolution| (|def-axiom| (or $x363 $x46)) @x741 $x46) $x774))) |
|
4438 |
(let ((@x1014 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x362 $x771)) (|unit-resolution| (|def-axiom| (or $x363 $x152)) @x741 $x152) $x771))) |
|
4439 |
(let ((@x963 (|unit-resolution| ((_ |th-lemma| arith) (or false (not (>= (mod (+ |l$| ?x43) 2) 2)))) @x108 (not (>= (mod (+ |l$| ?x43) 2) 2))))) |
|
4440 |
(let ((@x748 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x628) (<= ?x627 0))) (|unit-resolution| (mp ((_ |quant-inst| |l$| 2) (or $x633 $x602)) @x641 $x634) @x423 $x628) (<= ?x627 0)))) |
|
4441 |
(let ((@x932 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x742) (<= ?x744 0))) (|unit-resolution| ((_ |th-lemma| arith) (or false $x742)) @x108 $x742) (<= ?x744 0)))) |
|
4442 |
(let ((@x852 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x657) (<= ?x659 0))) (|unit-resolution| ((_ |th-lemma| arith) (or false $x657)) @x108 $x657) (<= ?x659 0)))) |
|
4443 |
(let ((@x937 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x714) (<= ?x713 0))) (|unit-resolution| (mp ((_ |quant-inst| (|eval_dioph$| |ks$| ?x42) 2) (or $x633 $x688)) @x726 $x719) @x423 $x714) (<= ?x713 0)))) |
|
4444 |
(let ((@x954 (hypothesis $x771))) |
|
4445 |
(let ((@x957 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x480) (>= ?x479 0))) @x885 (>= ?x479 0)))) |
|
4446 |
(let ((@x960 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or (not $x517) (<= ?x520 0))) (|unit-resolution| ((_ |th-lemma| arith) (or false $x517)) @x108 $x517) (<= ?x520 0)))) |
|
4447 |
(let ((@x515 ((_ |th-lemma| arith farkas 1 -2 -2 -2 1 1 1 1 1 1) @x960 @x957 @x954 (hypothesis $x737) @x937 @x852 @x932 (hypothesis $x774) @x748 @x963 false))) |
|
4448 |
(let ((@x1015 (|unit-resolution| (lemma @x515 (or (not $x737) (not $x771) (not $x774))) @x1014 @x1010 (not $x737)))) |
|
4449 |
(let ((@x1037 (|unit-resolution| @x1015 ((_ |th-lemma| arith) @x992 @x1035 @x1032 @x1029 @x1026 @x950 @x945 $x737) false))) |
|
4450 |
(let ((@x1038 (lemma @x1037 $x363))) |
|
4451 |
(let ((@x434 (|unit-resolution| (|def-axiom| (or $x41 $x364 (not $x370))) @x375 (or $x41 $x364)))) |
|
4452 |
(let ((@x1120 (|unit-resolution| @x434 @x1038 $x41))) |
|
4453 |
(let ((@x1125 ((_ |th-lemma| arith farkas 2 2 1 1 1 1) (hypothesis (not $x771)) @x889 @x892 @x876 @x883 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x169 $x778)) @x1120 $x778) false))) |
|
4454 |
(let ((@x1048 ((_ |th-lemma| arith farkas -1 1 1 -2 -2 1) @x992 (|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x169 $x777)) @x1120 $x777) @x960 @x957 (hypothesis (not $x770)) @x963 false))) |
|
4455 |
(let ((?x587 (|mod$| ?x39 2))) |
|
4456 |
(let (($x588 (= ?x587 ?x44))) |
|
4457 |
(let (($x377 (forall ((?v0 |Int_list$|) (?v1 |Nat_list$|) )(!(= (|mod$| (|eval_dioph$| ?v0 ?v1) 2) (|mod$| (|eval_dioph$| ?v0 (|map$| |uu$| ?v1)) 2)) :pattern ( (|eval_dioph$| ?v0 (|map$| |uu$| ?v1)) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4458 |
)) |
| 56109 | 4459 |
(let (($x30 (forall ((?v0 |Int_list$|) (?v1 |Nat_list$|) )(= (|mod$| (|eval_dioph$| ?v0 ?v1) 2) (|mod$| (|eval_dioph$| ?v0 (|map$| |uu$| ?v1)) 2))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4460 |
)) |
| 56111 | 4461 |
(let (($x29 (= (|mod$| ?x24 2) (|mod$| ?x27 2)))) |
4462 |
(let ((@x330 (|mp~| (asserted $x30) (|nnf-pos| (refl (|~| $x29 $x29)) (|~| $x30 $x30)) $x30))) |
|
4463 |
(let ((@x382 (mp @x330 (|quant-intro| (refl (= $x29 $x29)) (= $x30 $x377)) $x377))) |
|
4464 |
(let ((@x1104 (symm (|unit-resolution| ((_ |quant-inst| |ks$| |xs$|) (or (not $x377) $x588)) @x382 $x588) (= ?x44 ?x587)))) |
|
4465 |
(let ((@x763 (|unit-resolution| (hypothesis $x361) (trans @x1104 (monotonicity @x1120 (= ?x587 ?x45)) $x46) false))) |
|
4466 |
(let ((@x1050 (|unit-resolution| (|unit-resolution| (|def-axiom| (or $x364 $x361 $x362)) @x1038 $x363) (lemma @x763 $x46) $x362))) |
|
4467 |
(|unit-resolution| ((_ |th-lemma| arith triangle-eq) (or $x152 (not $x770) (not $x771))) @x1050 (lemma @x1048 $x770) (lemma @x1125 $x771) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4468 |
|
| 56111 | 4469 |
d4d0e08ac1741a77a8448ec3a55e48fb2a240ee9 62 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4470 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4471 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4472 |
(proof |
| 56111 | 4473 |
(let ((?x32 (|collect$| |uu$|))) |
4474 |
(let ((?x33 (|sup$| ?x32))) |
|
| 56109 | 4475 |
(let (($x38 (|less_eq$| ?x33 ?x33))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4476 |
(let (($x39 (not $x38))) |
| 56111 | 4477 |
(let ((@x117 (asserted $x39))) |
4478 |
(let ((?x34 (|collect$| |uua$|))) |
|
4479 |
(let ((?x35 (|sup$| ?x34))) |
|
| 56109 | 4480 |
(let (($x37 (|less_eq$| ?x35 ?x33))) |
| 56111 | 4481 |
(let ((@x115 (asserted $x37))) |
| 56109 | 4482 |
(let (($x36 (|less_eq$| ?x33 ?x35))) |
| 56111 | 4483 |
(let ((@x114 (asserted $x36))) |
4484 |
(let (($x159 (forall ((?v0 |A$|) (?v1 |A$|) (?v2 |A$|) )(!(let (($x29 (|less_eq$| ?v0 ?v2))) |
|
4485 |
(let (($x27 (|less_eq$| ?v1 ?v2))) |
|
4486 |
(let (($x136 (not $x27))) |
|
4487 |
(let (($x26 (|less_eq$| ?v0 ?v1))) |
|
4488 |
(let (($x135 (not $x26))) |
|
4489 |
(or $x135 $x136 $x29)))))) :pattern ( (|less_eq$| ?v0 ?v1) (|less_eq$| ?v1 ?v2) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4490 |
)) |
| 56111 | 4491 |
(let (($x154 (forall ((?v0 |A$|) (?v1 |A$|) (?v2 |A$|) )(let (($x29 (|less_eq$| ?v0 ?v2))) |
4492 |
(let (($x27 (|less_eq$| ?v1 ?v2))) |
|
4493 |
(let (($x136 (not $x27))) |
|
4494 |
(let (($x26 (|less_eq$| ?v0 ?v1))) |
|
4495 |
(let (($x135 (not $x26))) |
|
4496 |
(or $x135 $x136 $x29))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4497 |
)) |
| 56111 | 4498 |
(let (($x29 (|less_eq$| ?2 ?0))) |
4499 |
(let (($x27 (|less_eq$| ?1 ?0))) |
|
4500 |
(let (($x136 (not $x27))) |
|
4501 |
(let (($x26 (|less_eq$| ?2 ?1))) |
|
4502 |
(let (($x135 (not $x26))) |
|
4503 |
(let (($x149 (or $x135 $x136 $x29))) |
|
4504 |
(let (($x111 (forall ((?v0 |A$|) (?v1 |A$|) (?v2 |A$|) )(let (($x29 (|less_eq$| ?v0 ?v2))) |
|
| 56109 | 4505 |
(let (($x27 (|less_eq$| ?v1 ?v2))) |
4506 |
(let (($x26 (|less_eq$| ?v0 ?v1))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4507 |
(let (($x28 (and $x26 $x27))) |
| 56111 | 4508 |
(let (($x106 (not $x28))) |
4509 |
(or $x106 $x29))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4510 |
)) |
| 56111 | 4511 |
(let ((@x141 (monotonicity (rewrite (= (and $x26 $x27) (not (or $x135 $x136)))) (= (not (and $x26 $x27)) (not (not (or $x135 $x136))))))) |
4512 |
(let ((@x145 (trans @x141 (rewrite (= (not (not (or $x135 $x136))) (or $x135 $x136))) (= (not (and $x26 $x27)) (or $x135 $x136))))) |
|
4513 |
(let ((@x148 (monotonicity @x145 (= (or (not (and $x26 $x27)) $x29) (or (or $x135 $x136) $x29))))) |
|
4514 |
(let ((@x153 (trans @x148 (rewrite (= (or (or $x135 $x136) $x29) $x149)) (= (or (not (and $x26 $x27)) $x29) $x149)))) |
|
4515 |
(let ((@x129 (refl (|~| (or (not (and $x26 $x27)) $x29) (or (not (and $x26 $x27)) $x29))))) |
|
| 56109 | 4516 |
(let (($x31 (forall ((?v0 |A$|) (?v1 |A$|) (?v2 |A$|) )(let (($x29 (|less_eq$| ?v0 ?v2))) |
4517 |
(let (($x27 (|less_eq$| ?v1 ?v2))) |
|
4518 |
(let (($x26 (|less_eq$| ?v0 ?v1))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4519 |
(let (($x28 (and $x26 $x27))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4520 |
(=> $x28 $x29)))))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4521 |
)) |
| 56111 | 4522 |
(let ((@x110 (rewrite (= (=> (and $x26 $x27) $x29) (or (not (and $x26 $x27)) $x29))))) |
4523 |
(let ((@x132 (|mp~| (mp (asserted $x31) (|quant-intro| @x110 (= $x31 $x111)) $x111) (|nnf-pos| @x129 (|~| $x111 $x111)) $x111))) |
|
4524 |
(let ((@x164 (mp (mp @x132 (|quant-intro| @x153 (= $x111 $x154)) $x154) (|quant-intro| (refl (= $x149 $x149)) (= $x154 $x159)) $x159))) |
|
4525 |
(let (($x166 (not $x37))) |
|
4526 |
(let (($x165 (not $x36))) |
|
4527 |
(let (($x170 (not $x159))) |
|
4528 |
(let (($x171 (or $x170 $x165 $x166 $x38))) |
|
4529 |
(let ((@x176 (mp ((_ |quant-inst| (|sup$| ?x32) (|sup$| ?x34) (|sup$| ?x32)) (or $x170 (or $x165 $x166 $x38))) (rewrite (= (or $x170 (or $x165 $x166 $x38)) $x171)) $x171))) |
|
4530 |
(|unit-resolution| @x176 @x164 @x114 @x115 @x117 false))))))))))))))))))))))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4531 |
|
| 56111 | 4532 |
ce2ba5128c1bc3cef10c9328de9b15558b908319 25 0 |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4533 |
unsat |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4534 |
((set-logic AUFLIA) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4535 |
(proof |
| 56111 | 4536 |
(let (($x51 (|pred$e| 1))) |
4537 |
(let (($x52 (not $x51))) |
|
4538 |
(let ((@x142 (asserted $x52))) |
|
4539 |
(let (($x198 (forall ((?v0 Int) )(!(|pred$e| ?v0) :pattern ( (|pred$e| ?v0) ))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4540 |
)) |
| 56111 | 4541 |
(let (($x139 (forall ((?v0 Int) )(|pred$e| ?v0)) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4542 |
)) |
| 56109 | 4543 |
(let (($x49 (forall ((?v0 Int) )(let (($x47 (or (|pred$d| (|cons$d| ?v0 |nil$d|)) (not (|pred$d| (|cons$d| ?v0 |nil$d|)))))) |
4544 |
(let (($x42 (|pred$e| ?v0))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4545 |
(and $x42 $x47)))) |
|
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4546 |
)) |
| 56109 | 4547 |
(let (($x42 (|pred$e| ?0))) |
4548 |
(let (($x47 (or (|pred$d| (|cons$d| ?0 |nil$d|)) (not (|pred$d| (|cons$d| ?0 |nil$d|)))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4549 |
(let (($x48 (and $x42 $x47))) |
| 56111 | 4550 |
(let ((@x134 (monotonicity (rewrite (= $x47 true)) (= $x48 (and $x42 true))))) |
4551 |
(let ((@x141 (|quant-intro| (trans @x134 (rewrite (= (and $x42 true) $x42)) (= $x48 $x42)) (= $x49 $x139)))) |
|
4552 |
(let ((@x168 (|mp~| (mp (asserted $x49) @x141 $x139) (|nnf-pos| (refl (|~| $x42 $x42)) (|~| $x139 $x139)) $x139))) |
|
4553 |
(let ((@x203 (mp @x168 (|quant-intro| (refl (= $x42 $x42)) (= $x139 $x198)) $x198))) |
|
4554 |
(let (($x207 (or (not $x198) $x51))) |
|
4555 |
(let ((@x208 ((_ |quant-inst| 1) $x207))) |
|
4556 |
(|unit-resolution| @x208 @x203 @x142 false)))))))))))))))))) |
|
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4557 |