author | blanchet |
Thu, 26 Jun 2014 13:35:21 +0200 | |
changeset 57365 | d2090a01e920 |
parent 57204 | 7c36ce8e45f6 |
child 57696 | fb71c6f100f8 |
permissions | -rw-r--r-- |
57204 | 1 |
3aa17d1c77bc1a92bca05df291d11d81c645a931 6 0 |
57170 | 2 |
unsat |
3 |
((set-logic AUFLIA) |
|
4 |
(proof |
|
5 |
(let ((@x30 (rewrite (= (not true) false)))) |
|
6 |
(mp (asserted (not true)) @x30 false)))) |
|
7 |
||
57204 | 8 |
572677daa32981bf8212986300f1362edf42a0c1 7 0 |
57170 | 9 |
unsat |
10 |
((set-logic AUFLIA) |
|
11 |
(proof |
|
12 |
(let ((@x36 (monotonicity (rewrite (= (or p$ (not p$)) true)) (= (not (or p$ (not p$))) (not true))))) |
|
13 |
(let ((@x40 (trans @x36 (rewrite (= (not true) false)) (= (not (or p$ (not p$))) false)))) |
|
14 |
(mp (asserted (not (or p$ (not p$)))) @x40 false))))) |
|
15 |
||
57204 | 16 |
dfd95b23f80baacb2acdc442487bd8121f072035 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 |
56727 | 20 |
(let ((@x36 (monotonicity (rewrite (= (and p$ true) p$)) (= (= (and p$ true) p$) (= p$ p$))))) |
21 |
(let ((@x40 (trans @x36 (rewrite (= (= p$ p$) true)) (= (= (and p$ true) p$) true)))) |
|
22 |
(let ((@x43 (monotonicity @x40 (= (not (= (and p$ true) p$)) (not true))))) |
|
23 |
(let ((@x47 (trans @x43 (rewrite (= (not true) false)) (= (not (= (and p$ true) p$)) false)))) |
|
24 |
(mp (asserted (not (= (and p$ true) p$))) @x47 false))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
25 |
|
57204 | 26 |
8d6b87f1242925c8eefb2ec3e8ab8eefcd64e572 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 |
57170 | 30 |
(let (($x33 (not (=> (and (or p$ q$) (not p$)) q$)))) |
31 |
(let (($x37 (= (=> (and (or p$ q$) (not p$)) q$) (or (not (and (or p$ q$) (not p$))) q$)))) |
|
32 |
(let ((@x41 (monotonicity (rewrite $x37) (= $x33 (not (or (not (and (or p$ q$) (not p$))) q$)))))) |
|
33 |
(let ((@x44 (mp (asserted $x33) @x41 (not (or (not (and (or p$ q$) (not p$))) q$))))) |
|
34 |
(let ((@x45 (and-elim (not-or-elim @x44 (and (or p$ q$) (not p$))) (not p$)))) |
|
35 |
(let ((@x54 (monotonicity (iff-false @x45 (= p$ false)) (iff-false (not-or-elim @x44 (not q$)) (= q$ false)) (= (or p$ q$) (or false false))))) |
|
36 |
(let ((@x58 (trans @x54 (rewrite (= (or false false) false)) (= (or p$ q$) false)))) |
|
37 |
(let (($x29 (or p$ q$))) |
|
38 |
(mp (and-elim (not-or-elim @x44 (and $x29 (not p$))) $x29) @x58 false))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
39 |
|
57204 | 40 |
a021a5fec5486f23204e54770f9c04c64baf7e25 11 0 |
56727 | 41 |
unsat |
42 |
((set-logic AUFLIA) |
|
43 |
(proof |
|
57170 | 44 |
(let (($x32 (and c$ d$))) |
45 |
(let (($x29 (and a$ b$))) |
|
46 |
(let (($x33 (or $x29 $x32))) |
|
47 |
(let (($x34 (=> $x33 $x33))) |
|
48 |
(let (($x35 (not $x34))) |
|
49 |
(let ((@x45 (trans (monotonicity (rewrite (= $x34 true)) (= $x35 (not true))) (rewrite (= (not true) false)) (= $x35 false)))) |
|
50 |
(mp (asserted $x35) @x45 false))))))))) |
|
56727 | 51 |
|
57204 | 52 |
dfb7aeab4f33cdf91b335d72ad619dbd0d65fb62 23 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
53 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
54 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
55 |
(proof |
56727 | 56 |
(let (($x33 (and p1$ p3$))) |
57 |
(let (($x32 (and p3$ p2$))) |
|
58 |
(let (($x34 (or $x32 $x33))) |
|
59 |
(let (($x35 (=> p1$ $x34))) |
|
60 |
(let (($x36 (or $x35 p1$))) |
|
61 |
(let (($x29 (and p1$ p2$))) |
|
62 |
(let (($x31 (or $x29 p3$))) |
|
63 |
(let (($x37 (=> $x31 $x36))) |
|
64 |
(let (($x38 (not $x37))) |
|
65 |
(let (($x40 (not p1$))) |
|
66 |
(let (($x41 (or $x40 $x34))) |
|
67 |
(let (($x44 (or $x41 p1$))) |
|
68 |
(let (($x50 (not $x31))) |
|
69 |
(let (($x51 (or $x50 $x44))) |
|
70 |
(let (($x56 (not $x51))) |
|
71 |
(let ((@x67 (trans (monotonicity (rewrite (= $x51 true)) (= $x56 (not true))) (rewrite (= (not true) false)) (= $x56 false)))) |
|
72 |
(let ((@x49 (monotonicity (monotonicity (rewrite (= $x35 $x41)) (= $x36 $x44)) (= $x37 (=> $x31 $x44))))) |
|
73 |
(let ((@x58 (monotonicity (trans @x49 (rewrite (= (=> $x31 $x44) $x51)) (= $x37 $x51)) (= $x38 $x56)))) |
|
74 |
(mp (asserted $x38) (trans @x58 @x67 (= $x38 false)) false))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
75 |
|
57204 | 76 |
3efca8956be216e9acda1b32436ba8f01358d35e 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 |
56727 | 80 |
(let (($x28 (= p$ p$))) |
81 |
(let (($x29 (= $x28 p$))) |
|
82 |
(let (($x30 (= $x29 p$))) |
|
83 |
(let (($x31 (= $x30 p$))) |
|
84 |
(let (($x32 (= $x31 p$))) |
|
85 |
(let (($x33 (= $x32 p$))) |
|
86 |
(let (($x34 (= $x33 p$))) |
|
87 |
(let (($x35 (= $x34 p$))) |
|
88 |
(let (($x36 (= $x35 p$))) |
|
89 |
(let (($x37 (not $x36))) |
|
90 |
(let ((@x40 (rewrite (= $x28 true)))) |
|
91 |
(let ((@x45 (rewrite (= (= true p$) p$)))) |
|
92 |
(let ((@x47 (trans (monotonicity @x40 (= $x29 (= true p$))) @x45 (= $x29 p$)))) |
|
93 |
(let ((@x53 (monotonicity (trans (monotonicity @x47 (= $x30 $x28)) @x40 (= $x30 true)) (= $x31 (= true p$))))) |
|
94 |
(let ((@x59 (trans (monotonicity (trans @x53 @x45 (= $x31 p$)) (= $x32 $x28)) @x40 (= $x32 true)))) |
|
95 |
(let ((@x63 (trans (monotonicity @x59 (= $x33 (= true p$))) @x45 (= $x33 p$)))) |
|
96 |
(let ((@x69 (monotonicity (trans (monotonicity @x63 (= $x34 $x28)) @x40 (= $x34 true)) (= $x35 (= true p$))))) |
|
97 |
(let ((@x75 (trans (monotonicity (trans @x69 @x45 (= $x35 p$)) (= $x36 $x28)) @x40 (= $x36 true)))) |
|
98 |
(let ((@x82 (trans (monotonicity @x75 (= $x37 (not true))) (rewrite (= (not true) false)) (= $x37 false)))) |
|
99 |
(mp (asserted $x37) @x82 false)))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
100 |
|
57204 | 101 |
d600888ef4325a32ff87997035fed7a7c01e4767 39 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 |
56727 | 105 |
(let (($x100 (not d$))) |
106 |
(let (($x45 (not c$))) |
|
107 |
(let (($x112 (or p$ (and q$ (not q$))))) |
|
108 |
(let (($x113 (and (not p$) $x112))) |
|
109 |
(let (($x114 (or c$ $x113))) |
|
110 |
(let (($x115 (not $x114))) |
|
111 |
(let ((@x121 (monotonicity (rewrite (= (and q$ (not q$)) false)) (= $x112 (or p$ false))))) |
|
112 |
(let ((@x128 (monotonicity (trans @x121 (rewrite (= (or p$ false) p$)) (= $x112 p$)) (= $x113 (and (not p$) p$))))) |
|
113 |
(let ((@x132 (trans @x128 (rewrite (= (and (not p$) p$) false)) (= $x113 false)))) |
|
114 |
(let ((@x139 (trans (monotonicity @x132 (= $x114 (or c$ false))) (rewrite (= (or c$ false) c$)) (= $x114 c$)))) |
|
115 |
(let ((@x153 (iff-false (mp (asserted $x115) (monotonicity @x139 (= $x115 $x45)) $x45) (= c$ false)))) |
|
116 |
(let ((@x147 (trans (monotonicity @x153 (= (or $x100 c$) (or $x100 false))) (rewrite (= (or $x100 false) $x100)) (= (or $x100 c$) $x100)))) |
|
117 |
(let (($x103 (or $x100 c$))) |
|
118 |
(let ((@x102 (monotonicity (rewrite (= (or d$ false) d$)) (= (not (or d$ false)) $x100)))) |
|
119 |
(let ((@x108 (mp (asserted (or (not (or d$ false)) c$)) (monotonicity @x102 (= (or (not (or d$ false)) c$) $x103)) $x103))) |
|
120 |
(let (($x87 (not b$))) |
|
121 |
(let ((@x164 (trans (monotonicity @x153 (= (or $x87 c$) (or $x87 false))) (rewrite (= (or $x87 false) $x87)) (= (or $x87 c$) $x87)))) |
|
122 |
(let (($x90 (or $x87 c$))) |
|
123 |
(let ((@x82 (monotonicity (rewrite (= (or x$ (not x$)) true)) (= (and b$ (or x$ (not x$))) (and b$ true))))) |
|
124 |
(let ((@x86 (trans @x82 (rewrite (= (and b$ true) b$)) (= (and b$ (or x$ (not x$))) b$)))) |
|
125 |
(let ((@x92 (monotonicity (monotonicity @x86 (= (not (and b$ (or x$ (not x$)))) $x87)) (= (or (not (and b$ (or x$ (not x$)))) c$) $x90)))) |
|
126 |
(let ((@x95 (mp (asserted (or (not (and b$ (or x$ (not x$)))) c$)) @x92 $x90))) |
|
127 |
(let (($x64 (not a$))) |
|
128 |
(let ((@x170 (monotonicity (iff-false (mp @x95 @x164 $x87) (= b$ false)) (= (or $x64 b$) (or $x64 false))))) |
|
129 |
(let ((@x174 (trans @x170 (rewrite (= (or $x64 false) $x64)) (= (or $x64 b$) $x64)))) |
|
130 |
(let (($x67 (or $x64 b$))) |
|
131 |
(let ((@x59 (monotonicity (rewrite (= (and c$ $x45) false)) (= (or a$ (and c$ $x45)) (or a$ false))))) |
|
132 |
(let ((@x63 (trans @x59 (rewrite (= (or a$ false) a$)) (= (or a$ (and c$ $x45)) a$)))) |
|
133 |
(let ((@x69 (monotonicity (monotonicity @x63 (= (not (or a$ (and c$ $x45))) $x64)) (= (or (not (or a$ (and c$ $x45))) b$) $x67)))) |
|
134 |
(let ((@x175 (mp (mp (asserted (or (not (or a$ (and c$ $x45))) b$)) @x69 $x67) @x174 $x64))) |
|
135 |
(let ((@x198 (monotonicity (iff-false @x175 (= a$ false)) (iff-false (mp @x95 @x164 $x87) (= b$ false)) @x153 (iff-false (mp @x108 @x147 $x100) (= d$ false)) (= (or a$ b$ c$ d$) (or false false false false))))) |
|
136 |
(let ((@x202 (trans @x198 (rewrite (= (or false false false false) false)) (= (or a$ b$ c$ d$) false)))) |
|
137 |
(let (($x37 (or a$ b$ c$ d$))) |
|
138 |
(let ((@x40 (mp (asserted (or a$ (or b$ (or c$ d$)))) (rewrite (= (or a$ (or b$ (or c$ d$))) $x37)) $x37))) |
|
139 |
(mp @x40 @x202 false))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
140 |
|
57204 | 141 |
143f46ba7acb4b0a8f67b0de474b0a249f30985b 27 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
142 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
143 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
144 |
(proof |
56727 | 145 |
(let ((?x38 (symm_f$ b$ a$))) |
146 |
(let ((?x37 (symm_f$ a$ b$))) |
|
147 |
(let (($x39 (= ?x37 ?x38))) |
|
148 |
(let (($x52 (not $x39))) |
|
149 |
(let ((@x47 (monotonicity (rewrite (= (= a$ a$) true)) (= (and (= a$ a$) $x39) (and true $x39))))) |
|
150 |
(let ((@x51 (trans @x47 (rewrite (= (and true $x39) $x39)) (= (and (= a$ a$) $x39) $x39)))) |
|
151 |
(let ((@x57 (mp (asserted (not (and (= a$ a$) $x39))) (monotonicity @x51 (= (not (and (= a$ a$) $x39)) $x52)) $x52))) |
|
152 |
(let (($x480 (forall ((?v0 A$) (?v1 A$) )(!(let ((?x30 (symm_f$ ?v1 ?v0))) |
|
153 |
(let ((?x29 (symm_f$ ?v0 ?v1))) |
|
154 |
(= ?x29 ?x30))) :pattern ( (symm_f$ ?v0 ?v1) ) :pattern ( (symm_f$ ?v1 ?v0) ))) |
|
155 |
)) |
|
156 |
(let (($x32 (forall ((?v0 A$) (?v1 A$) )(let ((?x30 (symm_f$ ?v1 ?v0))) |
|
157 |
(let ((?x29 (symm_f$ ?v0 ?v1))) |
|
158 |
(= ?x29 ?x30)))) |
|
159 |
)) |
|
160 |
(let ((?x30 (symm_f$ ?0 ?1))) |
|
161 |
(let ((?x29 (symm_f$ ?1 ?0))) |
|
162 |
(let (($x31 (= ?x29 ?x30))) |
|
163 |
(let ((@x60 (mp~ (asserted $x32) (nnf-pos (refl (~ $x31 $x31)) (~ $x32 $x32)) $x32))) |
|
164 |
(let ((@x485 (mp @x60 (quant-intro (refl (= $x31 $x31)) (= $x32 $x480)) $x480))) |
|
165 |
(let (($x149 (or (not $x480) $x39))) |
|
166 |
(let ((@x61 ((_ quant-inst a$ b$) $x149))) |
|
167 |
(unit-resolution @x61 @x485 @x57 false))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
168 |
|
57204 | 169 |
a6dd135a0c109f49b36d7266dc7a6becc640e496 637 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
170 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
171 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
172 |
(proof |
56727 | 173 |
(let (($x397 (not x38$))) |
174 |
(let (($x553 (not x51$))) |
|
175 |
(let (($x657 (not x25$))) |
|
176 |
(let (($x610 (not x56$))) |
|
177 |
(let (($x538 (not x17$))) |
|
178 |
(let ((@x897 (hypothesis $x538))) |
|
179 |
(let (($x482 (not x45$))) |
|
180 |
(let (($x609 (not x22$))) |
|
181 |
(let (($x453 (not x11$))) |
|
182 |
(let ((@x815 (hypothesis $x453))) |
|
183 |
(let (($x667 (not x27$))) |
|
184 |
(let (($x638 (not x58$))) |
|
185 |
(let (($x567 (not x52$))) |
|
186 |
(let ((@x756 (hypothesis $x567))) |
|
187 |
(let (($x509 (not x47$))) |
|
188 |
(let (($x637 (not x24$))) |
|
189 |
(let (($x566 (not x19$))) |
|
190 |
(let (($x294 (or x24$ x53$))) |
|
191 |
(let ((@x774 (monotonicity (iff-false (asserted (not x59$)) (= x59$ false)) (= (or x59$ x24$ x53$) (or false x24$ x53$))))) |
|
192 |
(let ((@x778 (trans @x774 (rewrite (= (or false x24$ x53$) $x294)) (= (or x59$ x24$ x53$) $x294)))) |
|
193 |
(let (($x303 (or x59$ x24$ x53$))) |
|
194 |
(let ((@x306 (mp (asserted (or x59$ $x294)) (rewrite (= (or x59$ $x294) $x303)) $x303))) |
|
195 |
(let ((@x779 (mp @x306 @x778 $x294))) |
|
196 |
(let ((@x1181 (unit-resolution @x779 (unit-resolution (asserted (or $x637 $x638)) (hypothesis x58$) $x637) x53$))) |
|
197 |
(let (($x580 (not x53$))) |
|
198 |
(let (($x581 (or $x580 $x566))) |
|
199 |
(let ((@x582 (asserted $x581))) |
|
200 |
(let ((@x1182 (unit-resolution @x582 @x1181 $x566))) |
|
201 |
(let (($x496 (not x46$))) |
|
202 |
(let (($x583 (or $x580 $x509))) |
|
203 |
(let ((@x584 (asserted $x583))) |
|
204 |
(let ((@x1183 (unit-resolution @x584 @x1181 $x509))) |
|
205 |
(let (($x438 (not x41$))) |
|
206 |
(let (($x363 (not x4$))) |
|
207 |
(let (($x347 (not x2$))) |
|
208 |
(let (($x336 (not x31$))) |
|
209 |
(let (($x623 (not x23$))) |
|
210 |
(let (($x645 (or $x638 $x623))) |
|
211 |
(let ((@x646 (asserted $x645))) |
|
212 |
(let ((@x974 (hypothesis $x509))) |
|
213 |
(let ((@x757 (hypothesis $x566))) |
|
214 |
(let ((@x853 (hypothesis $x397))) |
|
215 |
(let (($x410 (not x8$))) |
|
216 |
(let (($x355 (not x3$))) |
|
217 |
(let (($x467 (not x12$))) |
|
218 |
(let ((@x882 (hypothesis $x467))) |
|
219 |
(let ((@x845 (hypothesis $x347))) |
|
220 |
(let (($x356 (not x33$))) |
|
221 |
(let (($x481 (not x13$))) |
|
222 |
(let (($x424 (not x9$))) |
|
223 |
(let ((@x728 (hypothesis x41$))) |
|
224 |
(let (($x439 (or $x438 $x424))) |
|
225 |
(let ((@x440 (asserted $x439))) |
|
226 |
(let ((@x922 (unit-resolution @x440 @x728 $x424))) |
|
227 |
(let (($x364 (not x34$))) |
|
228 |
(let (($x72 (or x35$ x4$))) |
|
229 |
(let ((@x77 (asserted $x72))) |
|
230 |
(let ((@x994 (unit-resolution @x77 (unit-resolution (asserted (or $x438 (not x35$))) @x728 (not x35$)) x4$))) |
|
231 |
(let (($x365 (or $x363 $x364))) |
|
232 |
(let ((@x366 (asserted $x365))) |
|
233 |
(let ((@x999 (unit-resolution @x366 @x994 $x364))) |
|
234 |
(let (($x396 (not x7$))) |
|
235 |
(let (($x414 (or $x410 $x396))) |
|
236 |
(let ((@x415 (asserted $x414))) |
|
237 |
(let (($x348 (not x32$))) |
|
238 |
(let ((@x942 (hypothesis $x355))) |
|
239 |
(let (($x64 (or x3$ x33$ x2$))) |
|
240 |
(let ((@x67 (mp (asserted (or x3$ (or x33$ x2$))) (rewrite (= (or x3$ (or x33$ x2$)) $x64)) $x64))) |
|
241 |
(let ((@x1048 (unit-resolution @x67 (unit-resolution (asserted (or $x410 $x356)) (hypothesis x8$) $x356) @x942 x2$))) |
|
242 |
(let (($x349 (or $x347 $x348))) |
|
243 |
(let ((@x350 (asserted $x349))) |
|
244 |
(let (($x105 (or x7$ x38$ x6$ x32$))) |
|
245 |
(let ((@x108 (mp (asserted (or x7$ (or x38$ (or x6$ x32$)))) (rewrite (= (or x7$ (or x38$ (or x6$ x32$))) $x105)) $x105))) |
|
246 |
(let ((@x842 (unit-resolution @x108 (unit-resolution @x350 @x1048 $x348) (unit-resolution @x415 (hypothesis x8$) $x396) @x853 x6$))) |
|
247 |
(let (($x701 (or x1$ x31$))) |
|
248 |
(let ((@x700 (monotonicity (iff-false (asserted (not x0$)) (= x0$ false)) (= (or x1$ x31$ x0$) (or x1$ x31$ false))))) |
|
249 |
(let ((@x705 (trans @x700 (rewrite (= (or x1$ x31$ false) $x701)) (= (or x1$ x31$ x0$) $x701)))) |
|
250 |
(let (($x46 (or x1$ x31$ x0$))) |
|
251 |
(let ((@x49 (mp (asserted (or x1$ (or x31$ x0$))) (rewrite (= (or x1$ (or x31$ x0$)) $x46)) $x46))) |
|
252 |
(let ((@x706 (mp @x49 @x705 $x701))) |
|
253 |
(let ((@x1002 (unit-resolution @x706 (unit-resolution (asserted (or $x347 (not x1$))) @x1048 (not x1$)) x31$))) |
|
254 |
(let (($x382 (not x6$))) |
|
255 |
(let (($x388 (or $x382 $x336))) |
|
256 |
(let ((@x389 (asserted $x388))) |
|
257 |
(let ((@x1011 (lemma (unit-resolution @x389 @x1002 @x842 false) (or $x410 x38$ x3$)))) |
|
258 |
(let ((@x952 (unit-resolution @x1011 (unit-resolution (asserted (or $x363 $x355)) @x994 $x355) @x853 $x410))) |
|
259 |
(let (($x125 (or x9$ x40$ x8$ x34$))) |
|
260 |
(let ((@x128 (mp (asserted (or x9$ (or x40$ (or x8$ x34$)))) (rewrite (= (or x9$ (or x40$ (or x8$ x34$))) $x125)) $x125))) |
|
261 |
(let (($x425 (not x40$))) |
|
262 |
(let (($x505 (or $x496 $x425))) |
|
263 |
(let ((@x506 (asserted $x505))) |
|
264 |
(let ((@x868 (unit-resolution @x506 (unit-resolution @x128 @x952 @x999 @x922 x40$) $x496))) |
|
265 |
(let (($x239 (or x19$ x52$ x18$ x46$))) |
|
266 |
(let ((@x242 (mp (asserted (or x19$ (or x52$ (or x18$ x46$)))) (rewrite (= (or x19$ (or x52$ (or x18$ x46$))) $x239)) $x239))) |
|
267 |
(let (($x411 (not x39$))) |
|
268 |
(let ((@x992 (unit-resolution @x67 (unit-resolution (asserted (or $x363 $x355)) @x994 $x355) @x845 x33$))) |
|
269 |
(let (($x420 (or $x411 $x356))) |
|
270 |
(let ((@x421 (asserted $x420))) |
|
271 |
(let (($x507 (or $x481 $x425))) |
|
272 |
(let ((@x508 (asserted $x507))) |
|
273 |
(let ((@x1036 (unit-resolution @x508 (unit-resolution @x128 @x952 @x999 @x922 x40$) $x481))) |
|
274 |
(let (($x172 (or x13$ x45$ x12$ x39$))) |
|
275 |
(let ((@x175 (mp (asserted (or x13$ (or x45$ (or x12$ x39$)))) (rewrite (= (or x13$ (or x45$ (or x12$ x39$))) $x172)) $x172))) |
|
276 |
(let ((@x1037 (unit-resolution @x175 @x1036 @x882 (unit-resolution @x421 @x992 $x411) x45$))) |
|
277 |
(let (($x552 (not x18$))) |
|
278 |
(let (($x558 (or $x552 $x482))) |
|
279 |
(let ((@x559 (asserted $x558))) |
|
280 |
(let ((@x1080 (unit-resolution @x559 @x1037 (unit-resolution @x242 @x868 @x757 @x756 x18$) false))) |
|
281 |
(let ((@x1051 (unit-resolution (lemma @x1080 (or $x438 x12$ x19$ x52$ x2$ x38$)) @x845 @x757 @x756 @x882 @x853 $x438))) |
|
282 |
(let (($x190 (or x47$ x14$ x41$))) |
|
283 |
(let ((@x193 (mp (asserted (or x47$ (or x14$ x41$))) (rewrite (= (or x47$ (or x14$ x41$)) $x190)) $x190))) |
|
284 |
(let ((@x732 (unit-resolution @x193 @x1051 @x974 x14$))) |
|
285 |
(let (($x495 (not x14$))) |
|
286 |
(let (($x499 (or $x495 $x481))) |
|
287 |
(let ((@x500 (asserted $x499))) |
|
288 |
(let ((@x941 (unit-resolution @x242 (unit-resolution (asserted (or $x495 $x496)) @x732 $x496) @x757 @x756 x18$))) |
|
289 |
(let ((@x991 (unit-resolution @x175 (unit-resolution @x559 @x941 $x482) @x882 (unit-resolution @x500 @x732 $x481) x39$))) |
|
290 |
(let (($x367 (or $x363 $x355))) |
|
291 |
(let ((@x368 (asserted $x367))) |
|
292 |
(let ((@x980 (unit-resolution @x368 (unit-resolution @x67 (unit-resolution @x421 @x991 $x356) @x845 x3$) $x363))) |
|
293 |
(let (($x369 (or $x364 $x355))) |
|
294 |
(let ((@x370 (asserted $x369))) |
|
295 |
(let ((@x878 (unit-resolution @x370 (unit-resolution @x67 (unit-resolution @x421 @x991 $x356) @x845 x3$) $x364))) |
|
296 |
(let ((@x879 (unit-resolution @x128 @x878 (unit-resolution (asserted (or $x495 $x425)) @x732 $x425) (unit-resolution (asserted (or $x410 $x411)) @x991 $x410) x9$))) |
|
297 |
(let (($x371 (not x35$))) |
|
298 |
(let (($x443 (or $x424 $x371))) |
|
299 |
(let ((@x444 (asserted $x443))) |
|
300 |
(let ((@x912 (lemma (unit-resolution @x444 @x879 (unit-resolution @x77 @x980 x35$) false) (or x2$ x12$ x19$ x52$ x47$ x38$)))) |
|
301 |
(let ((@x1091 (unit-resolution @x912 @x882 @x757 @x756 @x974 @x853 x2$))) |
|
302 |
(let (($x359 (or $x355 $x347))) |
|
303 |
(let ((@x360 (asserted $x359))) |
|
304 |
(let ((@x784 (unit-resolution @x706 (unit-resolution (asserted (or $x347 (not x1$))) @x1091 (not x1$)) x31$))) |
|
305 |
(let ((@x808 (unit-resolution @x108 (unit-resolution @x389 @x784 $x382) (unit-resolution @x350 @x1091 $x348) @x853 x7$))) |
|
306 |
(let (($x418 (or $x411 $x396))) |
|
307 |
(let ((@x419 (asserted $x418))) |
|
308 |
(let ((@x913 (hypothesis $x410))) |
|
309 |
(let ((@x931 (unit-resolution @x193 (unit-resolution @x500 (hypothesis x13$) $x495) @x974 x41$))) |
|
310 |
(let ((@x867 (unit-resolution @x128 (unit-resolution @x440 @x931 $x424) (unit-resolution @x508 (hypothesis x13$) $x425) @x913 x34$))) |
|
311 |
(let ((@x917 (unit-resolution @x77 (unit-resolution (asserted (or $x438 $x371)) @x931 $x371) x4$))) |
|
312 |
(let ((@x1090 (lemma (unit-resolution @x366 @x917 @x867 false) (or $x481 x8$ x47$)))) |
|
313 |
(let ((@x1056 (unit-resolution @x1090 (unit-resolution @x1011 (unit-resolution @x360 @x1091 $x355) @x853 $x410) @x974 $x481))) |
|
314 |
(let ((@x1057 (unit-resolution @x175 @x1056 @x882 (unit-resolution @x419 @x808 $x411) x45$))) |
|
315 |
(let ((@x937 (unit-resolution @x242 (unit-resolution @x559 @x1057 $x552) @x757 @x756 x46$))) |
|
316 |
(let ((@x884 (unit-resolution @x193 (unit-resolution (asserted (or $x495 $x496)) @x937 $x495) @x974 x41$))) |
|
317 |
(let ((@x800 (unit-resolution @x128 (unit-resolution @x440 @x884 $x424) (unit-resolution @x506 @x937 $x425) (unit-resolution @x1011 (unit-resolution @x360 @x1091 $x355) @x853 $x410) x34$))) |
|
318 |
(let ((@x864 (unit-resolution @x77 (unit-resolution (asserted (or $x438 $x371)) @x884 $x371) x4$))) |
|
319 |
(let ((@x1089 (lemma (unit-resolution @x366 @x864 @x800 false) (or x12$ x47$ x19$ x52$ x38$)))) |
|
320 |
(let ((@x1116 (unit-resolution @x1089 @x853 @x757 @x756 @x974 x12$))) |
|
321 |
(let (($x489 (or $x482 $x467))) |
|
322 |
(let ((@x490 (asserted $x489))) |
|
323 |
(let (($x539 (not x50$))) |
|
324 |
(let (($x619 (or $x610 $x539))) |
|
325 |
(let ((@x620 (asserted $x619))) |
|
326 |
(let ((@x1058 (unit-resolution @x620 (hypothesis x56$) $x539))) |
|
327 |
(let (($x524 (not x16$))) |
|
328 |
(let (($x587 (not x20$))) |
|
329 |
(let ((@x896 (hypothesis $x539))) |
|
330 |
(let (($x517 (not x48$))) |
|
331 |
(let ((@x841 (hypothesis $x517))) |
|
332 |
(let ((@x989 (unit-resolution @x193 (unit-resolution (asserted (or $x495 $x496)) (hypothesis x46$) $x495) @x974 x41$))) |
|
333 |
(let (($x441 (or $x438 $x371))) |
|
334 |
(let ((@x442 (asserted $x441))) |
|
335 |
(let ((@x838 (unit-resolution @x368 (unit-resolution @x77 (unit-resolution @x442 @x989 $x371) x4$) $x355))) |
|
336 |
(let ((@x1053 (unit-resolution @x366 (unit-resolution @x77 (unit-resolution @x442 @x989 $x371) x4$) $x364))) |
|
337 |
(let ((@x862 (unit-resolution @x128 @x1053 (unit-resolution @x440 @x989 $x424) (unit-resolution @x506 (hypothesis x46$) $x425) x8$))) |
|
338 |
(let (($x416 (or $x410 $x356))) |
|
339 |
(let ((@x417 (asserted $x416))) |
|
340 |
(let ((@x987 (unit-resolution @x350 (unit-resolution @x67 (unit-resolution @x417 @x862 $x356) @x838 x2$) $x348))) |
|
341 |
(let (($x335 (not x1$))) |
|
342 |
(let (($x351 (or $x347 $x335))) |
|
343 |
(let ((@x352 (asserted $x351))) |
|
344 |
(let ((@x935 (unit-resolution @x352 (unit-resolution @x67 (unit-resolution @x417 @x862 $x356) @x838 x2$) $x335))) |
|
345 |
(let ((@x746 (unit-resolution @x706 @x935 x31$))) |
|
346 |
(let ((@x1060 (unit-resolution @x108 (unit-resolution @x389 @x746 $x382) (unit-resolution @x415 @x862 $x396) @x987 x38$))) |
|
347 |
(let (($x479 (or $x453 $x397))) |
|
348 |
(let ((@x480 (asserted $x479))) |
|
349 |
(let (($x445 (not x10$))) |
|
350 |
(let (($x720 (or x5$ x36$))) |
|
351 |
(let ((@x719 (monotonicity (iff-false (asserted (not x30$)) (= x30$ false)) (= (or x5$ x36$ x30$) (or x5$ x36$ false))))) |
|
352 |
(let ((@x724 (trans @x719 (rewrite (= (or x5$ x36$ false) $x720)) (= (or x5$ x36$ x30$) $x720)))) |
|
353 |
(let (($x85 (or x5$ x36$ x30$))) |
|
354 |
(let ((@x88 (mp (asserted (or x5$ (or x36$ x30$))) (rewrite (= (or x5$ (or x36$ x30$)) $x85)) $x85))) |
|
355 |
(let ((@x725 (mp @x88 @x724 $x720))) |
|
356 |
(let ((@x810 (unit-resolution @x725 (unit-resolution (asserted (or (not x5$) $x336)) @x746 (not x5$)) x36$))) |
|
357 |
(let (($x375 (not x36$))) |
|
358 |
(let (($x449 (or $x445 $x375))) |
|
359 |
(let ((@x450 (asserted $x449))) |
|
360 |
(let (($x152 (or x11$ x43$ x10$ x37$))) |
|
361 |
(let ((@x155 (mp (asserted (or x11$ (or x43$ (or x10$ x37$)))) (rewrite (= (or x11$ (or x43$ (or x10$ x37$))) $x152)) $x152))) |
|
362 |
(let ((@x840 (unit-resolution @x155 (unit-resolution @x450 @x810 $x445) (unit-resolution (asserted (or (not x37$) $x336)) @x746 (not x37$)) (unit-resolution @x480 @x1060 $x453) x43$))) |
|
363 |
(let (($x199 (or x15$ x48$ x42$))) |
|
364 |
(let ((@x202 (mp (asserted (or x15$ (or x48$ x42$))) (rewrite (= (or x15$ (or x48$ x42$)) $x199)) $x199))) |
|
365 |
(let ((@x712 (unit-resolution @x202 (unit-resolution (asserted (or (not x42$) $x375)) @x810 (not x42$)) @x841 x15$))) |
|
366 |
(let (($x454 (not x43$))) |
|
367 |
(let (($x516 (not x15$))) |
|
368 |
(let (($x536 (or $x516 $x454))) |
|
369 |
(let ((@x537 (asserted $x536))) |
|
370 |
(let ((@x844 (lemma (unit-resolution @x537 @x712 @x840 false) (or $x496 x48$ x47$)))) |
|
371 |
(let ((@x893 (unit-resolution @x242 (unit-resolution @x844 @x841 @x974 $x496) @x757 @x756 x18$))) |
|
372 |
(let (($x556 (or $x552 $x538))) |
|
373 |
(let ((@x557 (asserted $x556))) |
|
374 |
(let (($x446 (not x42$))) |
|
375 |
(let ((@x1023 (unit-resolution @x559 @x893 $x482))) |
|
376 |
(let (($x468 (not x44$))) |
|
377 |
(let ((@x738 (unit-resolution @x725 (unit-resolution (asserted (or $x446 $x375)) (hypothesis x42$) $x375) x5$))) |
|
378 |
(let (($x374 (not x5$))) |
|
379 |
(let (($x394 (or $x374 $x336))) |
|
380 |
(let ((@x395 (asserted $x394))) |
|
381 |
(let (($x353 (or $x348 $x335))) |
|
382 |
(let ((@x354 (asserted $x353))) |
|
383 |
(let ((@x1005 (unit-resolution @x354 (unit-resolution @x706 (unit-resolution @x395 @x738 $x336) x1$) $x348))) |
|
384 |
(let ((@x983 (unit-resolution @x352 (unit-resolution @x706 (unit-resolution @x395 @x738 $x336) x1$) $x347))) |
|
385 |
(let ((@x998 (hypothesis $x482))) |
|
386 |
(let ((@x932 (unit-resolution @x128 (unit-resolution @x417 @x992 $x410) @x922 @x999 x40$))) |
|
387 |
(let ((@x1030 (hypothesis $x348))) |
|
388 |
(let ((@x1031 (hypothesis $x382))) |
|
389 |
(let ((@x1039 (unit-resolution @x108 (unit-resolution (asserted (or $x396 $x356)) @x992 $x396) @x1031 @x1030 x38$))) |
|
390 |
(let (($x473 (or $x467 $x397))) |
|
391 |
(let ((@x474 (asserted $x473))) |
|
392 |
(let ((@x971 (unit-resolution @x175 (unit-resolution @x474 @x1039 $x467) (unit-resolution @x508 @x932 $x481) @x998 (unit-resolution @x421 @x992 $x411) false))) |
|
393 |
(let ((@x1013 (lemma @x971 (or $x438 x45$ x6$ x32$ x2$)))) |
|
394 |
(let ((@x1040 (unit-resolution @x1013 (unit-resolution (asserted (or $x382 $x374)) @x738 $x382) @x998 @x1005 @x983 $x438))) |
|
395 |
(let (($x447 (or $x445 $x446))) |
|
396 |
(let ((@x448 (asserted $x447))) |
|
397 |
(let ((@x830 (unit-resolution @x448 (hypothesis x42$) $x445))) |
|
398 |
(let ((@x1020 (hypothesis x12$))) |
|
399 |
(let (($x469 (or $x467 $x468))) |
|
400 |
(let ((@x470 (asserted $x469))) |
|
401 |
(let ((@x1021 (unit-resolution @x470 @x1020 $x468))) |
|
402 |
(let (($x219 (or x17$ x50$ x16$ x44$))) |
|
403 |
(let ((@x222 (mp (asserted (or x17$ (or x50$ (or x16$ x44$)))) (rewrite (= (or x17$ (or x50$ (or x16$ x44$))) $x219)) $x219))) |
|
404 |
(let (($x471 (or $x467 $x453))) |
|
405 |
(let ((@x472 (asserted $x471))) |
|
406 |
(let ((@x889 (unit-resolution @x472 @x1020 $x453))) |
|
407 |
(let ((@x924 (unit-resolution @x155 @x889 (hypothesis $x445) (hypothesis (not x37$)) x43$))) |
|
408 |
(let (($x530 (or $x524 $x454))) |
|
409 |
(let ((@x531 (asserted $x530))) |
|
410 |
(let ((@x925 (unit-resolution @x531 @x924 (unit-resolution @x222 @x1021 @x897 @x896 x16$) false))) |
|
411 |
(let ((@x1075 (lemma @x925 (or $x467 x10$ x37$ x17$ x50$)))) |
|
412 |
(let ((@x831 (unit-resolution @x1075 @x830 (unit-resolution (asserted (or (not x37$) $x374)) @x738 (not x37$)) @x897 @x896 $x467))) |
|
413 |
(let ((@x856 (unit-resolution @x175 @x831 @x998 (unit-resolution @x500 (unit-resolution @x193 @x1040 @x974 x14$) $x481) x39$))) |
|
414 |
(let ((@x715 (unit-resolution @x108 (unit-resolution @x419 @x856 $x396) (unit-resolution (asserted (or $x382 $x374)) @x738 $x382) @x1005 x38$))) |
|
415 |
(let (($x477 (or $x468 $x397))) |
|
416 |
(let ((@x478 (asserted $x477))) |
|
417 |
(let ((@x850 (unit-resolution @x222 (unit-resolution @x478 @x715 $x468) @x897 @x896 x16$))) |
|
418 |
(let ((@x828 (unit-resolution @x155 (unit-resolution @x480 @x715 $x453) @x830 (unit-resolution (asserted (or (not x37$) $x374)) @x738 (not x37$)) x43$))) |
|
419 |
(let ((@x1001 (lemma (unit-resolution @x531 @x828 @x850 false) (or $x446 x17$ x50$ x45$ x47$)))) |
|
420 |
(let ((@x762 (unit-resolution @x1001 (unit-resolution @x557 @x893 $x538) @x896 @x1023 @x974 $x446))) |
|
421 |
(let (($x528 (or $x524 $x516))) |
|
422 |
(let ((@x529 (asserted $x528))) |
|
423 |
(let ((@x1017 (unit-resolution @x222 (unit-resolution @x529 (unit-resolution @x202 @x762 @x841 x15$) $x524) (unit-resolution @x557 @x893 $x538) @x896 x44$))) |
|
424 |
(let ((@x901 (unit-resolution @x706 (unit-resolution @x395 (hypothesis x5$) $x336) x1$))) |
|
425 |
(let ((@x823 (unit-resolution @x108 (unit-resolution @x354 @x901 $x348) @x853 (unit-resolution (asserted (or $x382 $x374)) (hypothesis x5$) $x382) x7$))) |
|
426 |
(let ((@x740 (unit-resolution @x1013 (unit-resolution @x354 @x901 $x348) @x998 (unit-resolution (asserted (or $x382 $x374)) (hypothesis x5$) $x382) (unit-resolution @x352 @x901 $x347) $x438))) |
|
427 |
(let ((@x835 (unit-resolution @x175 (unit-resolution @x500 (unit-resolution @x193 @x740 @x974 x14$) $x481) (unit-resolution @x419 @x823 $x411) @x998 @x882 false))) |
|
428 |
(let ((@x769 (lemma @x835 (or $x374 x45$ x12$ x47$ x38$)))) |
|
429 |
(let ((@x898 (unit-resolution @x769 @x1023 (unit-resolution @x470 @x1017 $x467) @x974 (unit-resolution @x478 @x1017 $x397) $x374))) |
|
430 |
(let ((@x735 (unit-resolution @x155 (unit-resolution @x450 (unit-resolution @x725 @x898 x36$) $x445) (unit-resolution @x537 (unit-resolution @x202 @x762 @x841 x15$) $x454) (unit-resolution (asserted (or $x468 $x453)) @x1017 $x453) x37$))) |
|
431 |
(let (($x383 (not x37$))) |
|
432 |
(let (($x384 (or $x382 $x383))) |
|
433 |
(let ((@x385 (asserted $x384))) |
|
434 |
(let ((@x946 (unit-resolution @x706 (unit-resolution (asserted (or $x383 $x336)) @x735 $x336) x1$))) |
|
435 |
(let ((@x836 (unit-resolution @x108 (unit-resolution @x354 @x946 $x348) (unit-resolution @x478 @x1017 $x397) (unit-resolution @x385 @x735 $x382) x7$))) |
|
436 |
(let ((@x1025 (unit-resolution @x1013 (unit-resolution @x354 @x946 $x348) @x1023 (unit-resolution @x385 @x735 $x382) (unit-resolution @x352 @x946 $x347) $x438))) |
|
437 |
(let ((@x886 (unit-resolution @x175 (unit-resolution @x500 (unit-resolution @x193 @x1025 @x974 x14$) $x481) (unit-resolution @x419 @x836 $x411) @x1023 (unit-resolution @x470 @x1017 $x467) false))) |
|
438 |
(let ((@x1059 (unit-resolution (lemma @x886 (or x48$ x47$ x50$ x19$ x52$)) @x1058 @x974 @x757 @x756 x48$))) |
|
439 |
(let (($x591 (or $x587 $x517))) |
|
440 |
(let ((@x592 (asserted $x591))) |
|
441 |
(let (($x595 (not x21$))) |
|
442 |
(let (($x617 (or $x610 $x595))) |
|
443 |
(let ((@x618 (asserted $x617))) |
|
444 |
(let (($x596 (not x55$))) |
|
445 |
(let (($x302 (or x25$ x54$))) |
|
446 |
(let ((@x307 (asserted $x302))) |
|
447 |
(let ((@x855 (unit-resolution @x307 (unit-resolution (asserted (or (not x54$) $x517)) @x1059 (not x54$)) x25$))) |
|
448 |
(let (($x665 (or $x657 $x596))) |
|
449 |
(let ((@x666 (asserted $x665))) |
|
450 |
(let (($x266 (or x21$ x55$ x20$ x49$))) |
|
451 |
(let ((@x269 (mp (asserted (or x21$ (or x55$ (or x20$ x49$)))) (rewrite (= (or x21$ (or x55$ (or x20$ x49$))) $x266)) $x266))) |
|
452 |
(let ((@x911 (unit-resolution @x269 (unit-resolution @x666 @x855 $x596) (unit-resolution @x618 (hypothesis x56$) $x595) (unit-resolution @x592 @x1059 $x587) x49$))) |
|
453 |
(let (($x525 (not x49$))) |
|
454 |
(let (($x526 (or $x524 $x525))) |
|
455 |
(let ((@x527 (asserted $x526))) |
|
456 |
(let ((@x1006 (unit-resolution @x242 (unit-resolution @x557 (hypothesis x17$) $x552) @x757 @x756 x46$))) |
|
457 |
(let (($x503 (or $x496 $x481))) |
|
458 |
(let ((@x504 (asserted $x503))) |
|
459 |
(let ((@x752 (unit-resolution @x175 (unit-resolution @x504 @x1006 $x481) (unit-resolution (asserted (or $x538 $x482)) (hypothesis x17$) $x482) @x882 x39$))) |
|
460 |
(let (($x412 (or $x410 $x411))) |
|
461 |
(let ((@x413 (asserted $x412))) |
|
462 |
(let ((@x806 (unit-resolution @x193 (unit-resolution (asserted (or $x495 $x496)) @x1006 $x495) @x974 x41$))) |
|
463 |
(let ((@x954 (unit-resolution @x128 (unit-resolution @x440 @x806 $x424) (unit-resolution @x506 @x1006 $x425) (unit-resolution @x413 @x752 $x410) x34$))) |
|
464 |
(let ((@x745 (unit-resolution @x366 (unit-resolution @x77 (unit-resolution @x442 @x806 $x371) x4$) @x954 false))) |
|
465 |
(let ((@x771 (lemma @x745 (or $x538 x12$ x47$ x19$ x52$)))) |
|
466 |
(let ((@x928 (unit-resolution @x222 (unit-resolution @x771 @x882 @x974 @x757 @x756 $x538) (hypothesis $x524) @x896 x44$))) |
|
467 |
(let ((@x929 (unit-resolution @x478 @x928 $x397))) |
|
468 |
(let ((@x832 (hypothesis $x454))) |
|
469 |
(let ((@x859 (unit-resolution @x242 (unit-resolution (asserted (or $x495 $x496)) (hypothesis x14$) $x496) @x757 @x756 x18$))) |
|
470 |
(let ((@x951 (unit-resolution @x175 (unit-resolution @x559 @x859 $x482) (unit-resolution @x500 (hypothesis x14$) $x481) @x882 x39$))) |
|
471 |
(let ((@x833 (unit-resolution @x769 (unit-resolution @x559 @x859 $x482) @x882 @x974 @x853 $x374))) |
|
472 |
(let ((@x1076 (unit-resolution @x155 (unit-resolution @x450 (unit-resolution @x725 @x833 x36$) $x445) @x832 @x815 x37$))) |
|
473 |
(let ((@x872 (unit-resolution @x108 (unit-resolution @x385 @x1076 $x382) (unit-resolution @x419 @x951 $x396) @x853 x32$))) |
|
474 |
(let ((@x962 (unit-resolution @x706 (unit-resolution (asserted (or $x383 $x336)) @x1076 $x336) x1$))) |
|
475 |
(let ((@x861 (lemma (unit-resolution @x354 @x962 @x872 false) (or $x495 x38$ x43$ x11$ x12$ x47$ x19$ x52$)))) |
|
476 |
(let ((@x1079 (unit-resolution @x861 @x929 @x832 (unit-resolution (asserted (or $x468 $x453)) @x928 $x453) @x882 @x974 @x757 @x756 $x495))) |
|
477 |
(let ((@x709 (unit-resolution @x77 (unit-resolution @x442 (unit-resolution @x193 @x1079 @x974 x41$) $x371) x4$))) |
|
478 |
(let ((@x939 (unit-resolution @x128 (unit-resolution @x1011 @x929 (unit-resolution @x368 @x709 $x355) $x410) (unit-resolution @x440 (unit-resolution @x193 @x1079 @x974 x41$) $x424) (unit-resolution @x366 @x709 $x364) x40$))) |
|
479 |
(let ((@x754 (unit-resolution @x242 (unit-resolution @x506 @x939 $x496) @x757 @x756 x18$))) |
|
480 |
(let ((@x904 (unit-resolution @x175 (unit-resolution @x559 @x754 $x482) (unit-resolution @x508 @x939 $x481) @x882 x39$))) |
|
481 |
(let ((@x877 (unit-resolution @x67 (unit-resolution @x421 @x904 $x356) (unit-resolution @x368 @x709 $x355) x2$))) |
|
482 |
(let ((@x927 (unit-resolution @x769 (unit-resolution @x559 @x754 $x482) @x882 @x974 @x929 $x374))) |
|
483 |
(let ((@x880 (unit-resolution @x155 (unit-resolution @x450 (unit-resolution @x725 @x927 x36$) $x445) @x832 (unit-resolution (asserted (or $x468 $x453)) @x928 $x453) x37$))) |
|
484 |
(let ((@x812 (unit-resolution @x108 (unit-resolution @x385 @x880 $x382) (unit-resolution @x350 @x877 $x348) (unit-resolution @x419 @x904 $x396) @x929 false))) |
|
485 |
(let ((@x713 (unit-resolution (lemma @x812 (or x12$ x43$ x47$ x19$ x52$ x16$ x50$)) (unit-resolution (asserted (or $x525 $x454)) @x911 $x454) @x974 @x757 @x756 (unit-resolution @x527 @x911 $x524) @x1058 x12$))) |
|
486 |
(let ((@x817 (unit-resolution @x222 (unit-resolution @x470 @x713 $x468) (unit-resolution @x527 @x911 $x524) @x1058 x17$))) |
|
487 |
(let ((@x903 (unit-resolution @x242 (unit-resolution @x557 @x817 $x552) @x757 @x756 x46$))) |
|
488 |
(let (($x497 (or $x495 $x496))) |
|
489 |
(let ((@x498 (asserted $x497))) |
|
490 |
(let ((@x748 (unit-resolution @x442 (unit-resolution @x193 (unit-resolution @x498 @x903 $x495) @x974 x41$) $x371))) |
|
491 |
(let ((@x1027 (unit-resolution @x440 (unit-resolution @x193 (unit-resolution @x498 @x903 $x495) @x974 x41$) $x424))) |
|
492 |
(let ((@x890 (unit-resolution @x128 (unit-resolution @x366 (unit-resolution @x77 @x748 x4$) $x364) (unit-resolution @x506 @x903 $x425) @x1027 x8$))) |
|
493 |
(let ((@x891 (unit-resolution @x1011 @x890 (unit-resolution @x368 (unit-resolution @x77 @x748 x4$) $x355) (unit-resolution @x474 @x713 $x397) false))) |
|
494 |
(let ((@x1118 (unit-resolution (lemma @x891 (or $x610 x47$ x19$ x52$)) @x974 @x757 @x756 $x610))) |
|
495 |
(let ((@x802 (hypothesis $x623))) |
|
496 |
(let ((@x914 (hypothesis $x610))) |
|
497 |
(let (($x392 (or $x383 $x336))) |
|
498 |
(let ((@x393 (asserted $x392))) |
|
499 |
(let ((@x969 (unit-resolution @x393 (hypothesis x31$) $x383))) |
|
500 |
(let ((@x1047 (unit-resolution @x725 (unit-resolution @x395 (hypothesis x31$) $x374) x36$))) |
|
501 |
(let ((@x966 (unit-resolution @x450 @x1047 $x445))) |
|
502 |
(let (($x615 (or $x609 $x539))) |
|
503 |
(let ((@x616 (asserted $x615))) |
|
504 |
(let ((@x730 (unit-resolution @x616 (unit-resolution @x1075 @x966 @x1020 @x897 @x969 x50$) $x609))) |
|
505 |
(let (($x286 (or x23$ x57$ x22$ x51$))) |
|
506 |
(let ((@x289 (mp (asserted (or x23$ (or x57$ (or x22$ x51$)))) (rewrite (= (or x23$ (or x57$ (or x22$ x51$))) $x286)) $x286))) |
|
507 |
(let (($x624 (not x57$))) |
|
508 |
(let (($x679 (or $x667 $x624))) |
|
509 |
(let ((@x680 (asserted $x679))) |
|
510 |
(let ((@x948 (unit-resolution @x680 (unit-resolution @x289 @x730 @x802 (hypothesis $x553) x57$) $x667))) |
|
511 |
(let (($x322 (or x27$ x26$ x56$))) |
|
512 |
(let ((@x325 (mp (asserted (or x27$ (or x26$ x56$))) (rewrite (= (or x27$ (or x26$ x56$)) $x322)) $x322))) |
|
513 |
(let (($x588 (not x54$))) |
|
514 |
(let ((@x798 (unit-resolution @x537 (unit-resolution @x155 @x966 @x889 @x969 x43$) $x516))) |
|
515 |
(let ((@x799 (unit-resolution @x202 @x798 (unit-resolution (asserted (or $x446 $x375)) @x1047 $x446) x48$))) |
|
516 |
(let (($x593 (or $x588 $x517))) |
|
517 |
(let ((@x594 (asserted $x593))) |
|
518 |
(let (($x660 (not x26$))) |
|
519 |
(let (($x661 (or $x660 $x657))) |
|
520 |
(let ((@x662 (asserted $x661))) |
|
521 |
(let ((@x1094 (unit-resolution @x662 (unit-resolution @x307 (unit-resolution @x594 @x799 $x588) x25$) (unit-resolution @x325 @x948 @x914 x26$) false))) |
|
522 |
(let ((@x1096 (lemma @x1094 (or $x336 x56$ x23$ x51$ $x467 x17$)))) |
|
523 |
(let ((@x1099 (unit-resolution @x1096 (unit-resolution (asserted (or $x552 $x553)) @x859 $x553) @x802 @x914 @x1020 (unit-resolution @x557 @x859 $x538) $x336))) |
|
524 |
(let ((@x804 (unit-resolution @x725 (unit-resolution (asserted (or $x382 $x374)) (hypothesis x6$) $x374) x36$))) |
|
525 |
(let ((@x1008 (unit-resolution @x1075 (unit-resolution @x450 @x804 $x445) @x1020 @x897 (unit-resolution @x385 (hypothesis x6$) $x383) x50$))) |
|
526 |
(let ((@x874 (unit-resolution @x289 (unit-resolution @x616 @x1008 $x609) @x802 (hypothesis $x553) x57$))) |
|
527 |
(let ((@x766 (unit-resolution @x155 (unit-resolution @x450 @x804 $x445) @x889 (unit-resolution @x385 (hypothesis x6$) $x383) x43$))) |
|
528 |
(let ((@x818 (unit-resolution @x202 (unit-resolution @x537 @x766 $x516) (unit-resolution (asserted (or $x446 $x375)) @x804 $x446) x48$))) |
|
529 |
(let ((@x783 (unit-resolution @x662 (unit-resolution @x307 (unit-resolution @x594 @x818 $x588) x25$) (unit-resolution @x325 (unit-resolution @x680 @x874 $x667) @x914 x26$) false))) |
|
530 |
(let ((@x737 (lemma @x783 (or $x382 x56$ x23$ x51$ $x467 x17$)))) |
|
531 |
(let ((@x1102 (unit-resolution @x737 (unit-resolution (asserted (or $x552 $x553)) @x859 $x553) @x802 @x914 @x1020 (unit-resolution @x557 @x859 $x538) $x382))) |
|
532 |
(let ((@x1104 (unit-resolution @x108 (unit-resolution @x354 (unit-resolution @x706 @x1099 x1$) $x348) @x1102 @x853 x7$))) |
|
533 |
(let (($x422 (or $x396 $x356))) |
|
534 |
(let ((@x423 (asserted $x422))) |
|
535 |
(let ((@x1106 (unit-resolution @x67 (unit-resolution @x423 @x1104 $x356) (unit-resolution @x352 (unit-resolution @x706 @x1099 x1$) $x347) x3$))) |
|
536 |
(let ((@x1112 (unit-resolution @x128 (unit-resolution @x370 @x1106 $x364) (unit-resolution (asserted (or $x495 $x425)) (hypothesis x14$) $x425) (unit-resolution @x415 @x1104 $x410) x9$))) |
|
537 |
(let ((@x1113 (unit-resolution @x444 @x1112 (unit-resolution @x77 (unit-resolution @x368 @x1106 $x363) x35$) false))) |
|
538 |
(let ((@x1119 (unit-resolution (lemma @x1113 (or $x495 x38$ x23$ x56$ $x467 x19$ x52$)) @x853 @x802 @x1118 @x1116 @x757 @x756 $x495))) |
|
539 |
(let ((@x1120 (unit-resolution @x193 @x1119 @x974 x41$))) |
|
540 |
(let ((@x1123 (unit-resolution @x366 (unit-resolution @x77 (unit-resolution @x442 @x1120 $x371) x4$) $x364))) |
|
541 |
(let ((@x1125 (unit-resolution @x368 (unit-resolution @x77 (unit-resolution @x442 @x1120 $x371) x4$) $x355))) |
|
542 |
(let ((@x1127 (unit-resolution @x128 (unit-resolution @x1011 @x1125 @x853 $x410) (unit-resolution @x440 @x1120 $x424) @x1123 x40$))) |
|
543 |
(let ((@x1129 (unit-resolution @x242 (unit-resolution @x506 @x1127 $x496) @x757 @x756 x18$))) |
|
544 |
(let ((@x1132 (unit-resolution @x737 (unit-resolution (asserted (or $x552 $x553)) @x1129 $x553) @x802 @x1118 @x1116 (unit-resolution @x557 @x1129 $x538) $x382))) |
|
545 |
(let ((@x1133 (unit-resolution @x1096 (unit-resolution (asserted (or $x552 $x553)) @x1129 $x553) @x802 @x1118 @x1116 (unit-resolution @x557 @x1129 $x538) $x336))) |
|
546 |
(let ((@x1137 (unit-resolution @x1013 (unit-resolution @x354 (unit-resolution @x706 @x1133 x1$) $x348) (unit-resolution @x352 (unit-resolution @x706 @x1133 x1$) $x347) @x1120 @x1132 (unit-resolution @x490 @x1116 $x482) false))) |
|
547 |
(let ((@x1185 (unit-resolution (lemma @x1137 (or x38$ x23$ x19$ x52$ x47$)) (unit-resolution @x646 (hypothesis x58$) $x623) @x1182 @x756 @x1183 x38$))) |
|
548 |
(let ((@x1188 (unit-resolution @x474 @x1185 $x467))) |
|
549 |
(let ((@x1140 (unit-resolution @x155 @x966 @x815 @x969 x43$))) |
|
550 |
(let (($x534 (or $x525 $x454))) |
|
551 |
(let ((@x535 (asserted $x534))) |
|
552 |
(let ((@x1142 (hypothesis $x468))) |
|
553 |
(let ((@x1144 (unit-resolution @x222 (unit-resolution @x531 @x1140 $x524) @x897 @x1142 x50$))) |
|
554 |
(let (($x621 (or $x595 $x539))) |
|
555 |
(let ((@x622 (asserted $x621))) |
|
556 |
(let ((@x1147 (unit-resolution @x202 (unit-resolution @x537 @x1140 $x516) (unit-resolution (asserted (or $x446 $x375)) @x1047 $x446) x48$))) |
|
557 |
(let ((@x1149 (unit-resolution @x269 (unit-resolution @x592 @x1147 $x587) (unit-resolution @x622 @x1144 $x595) (unit-resolution @x535 @x1140 $x525) x55$))) |
|
558 |
(let ((@x1152 (unit-resolution @x666 (unit-resolution @x307 (unit-resolution @x594 @x1147 $x588) x25$) @x1149 false))) |
|
559 |
(let ((@x1154 (lemma @x1152 (or $x336 x17$ x44$ x11$)))) |
|
560 |
(let ((@x1190 (unit-resolution @x1154 (unit-resolution @x771 @x1188 @x1183 @x1182 @x756 $x538) (unit-resolution @x478 @x1185 $x468) (unit-resolution @x480 @x1185 $x453) $x336))) |
|
561 |
(let ((@x1156 (unit-resolution @x559 (unit-resolution @x1013 @x728 @x1030 @x1031 @x845 x45$) $x552))) |
|
562 |
(let ((@x1159 (unit-resolution @x506 (unit-resolution @x128 @x999 @x913 @x922 x40$) (unit-resolution @x242 @x1156 @x757 @x756 x46$) false))) |
|
563 |
(let ((@x1163 (unit-resolution (lemma @x1159 (or $x438 x8$ x19$ x52$ x32$ x6$ x2$)) @x913 @x757 @x756 @x1030 @x1031 @x845 $x438))) |
|
564 |
(let ((@x1166 (unit-resolution @x242 (unit-resolution @x498 (unit-resolution @x193 @x1163 @x974 x14$) $x496) @x757 @x756 x18$))) |
|
565 |
(let ((@x1168 (unit-resolution @x175 (unit-resolution @x559 @x1166 $x482) @x882 (unit-resolution @x1090 @x913 @x974 $x481) x39$))) |
|
566 |
(let ((@x1171 (unit-resolution @x368 (unit-resolution @x67 (unit-resolution @x421 @x1168 $x356) @x845 x3$) $x363))) |
|
567 |
(let (($x501 (or $x495 $x425))) |
|
568 |
(let ((@x502 (asserted $x501))) |
|
569 |
(let ((@x1174 (unit-resolution @x370 (unit-resolution @x67 (unit-resolution @x421 @x1168 $x356) @x845 x3$) $x364))) |
|
570 |
(let ((@x1175 (unit-resolution @x128 @x1174 @x913 (unit-resolution @x502 (unit-resolution @x193 @x1163 @x974 x14$) $x425) x9$))) |
|
571 |
(let ((@x1178 (lemma (unit-resolution @x444 @x1175 (unit-resolution @x77 @x1171 x35$) false) (or x8$ x2$ x12$ x19$ x52$ x47$ x32$ x6$)))) |
|
572 |
(let ((@x1195 (unit-resolution @x1178 (unit-resolution @x352 (unit-resolution @x706 @x1190 x1$) $x347) @x1188 @x1182 @x756 @x1183 (unit-resolution (asserted (or $x397 $x348)) @x1185 $x348) (unit-resolution (asserted (or $x397 $x382)) @x1185 $x382) x8$))) |
|
573 |
(let ((@x1197 (unit-resolution @x67 (unit-resolution @x417 @x1195 $x356) (unit-resolution @x352 (unit-resolution @x706 @x1190 x1$) $x347) x3$))) |
|
574 |
(let ((@x1200 (unit-resolution @x442 (unit-resolution @x77 (unit-resolution @x368 @x1197 $x363) x35$) $x438))) |
|
575 |
(let ((@x1203 (unit-resolution @x242 (unit-resolution @x498 (unit-resolution @x193 @x1200 @x1183 x14$) $x496) @x1182 @x756 x18$))) |
|
576 |
(let ((@x1206 (unit-resolution @x175 (unit-resolution @x500 (unit-resolution @x193 @x1200 @x1183 x14$) $x481) @x1188 (unit-resolution @x413 @x1195 $x411) x45$))) |
|
577 |
(let ((@x1215 (unit-resolution (lemma (unit-resolution @x559 @x1206 @x1203 false) (or $x638 x52$)) @x756 $x638))) |
|
578 |
(let (($x328 (or x28$ x58$))) |
|
579 |
(let ((@x792 (monotonicity (iff-false (asserted (not x29$)) (= x29$ false)) (= (or x29$ x28$ x58$) (or false x28$ x58$))))) |
|
580 |
(let ((@x796 (trans @x792 (rewrite (= (or false x28$ x58$) $x328)) (= (or x29$ x28$ x58$) $x328)))) |
|
581 |
(let (($x337 (or x29$ x28$ x58$))) |
|
582 |
(let ((@x340 (mp (asserted (or x29$ $x328)) (rewrite (= (or x29$ $x328) $x337)) $x337))) |
|
583 |
(let ((@x797 (mp @x340 @x796 $x328))) |
|
584 |
(let (($x674 (not x28$))) |
|
585 |
(let (($x675 (or $x674 $x667))) |
|
586 |
(let ((@x676 (asserted $x675))) |
|
587 |
(let ((@x1224 (unit-resolution @x676 (unit-resolution @x797 @x1215 x28$) $x667))) |
|
588 |
(let ((@x1285 (hypothesis $x438))) |
|
589 |
(let ((@x708 (hypothesis $x411))) |
|
590 |
(let ((@x1210 (hypothesis $x496))) |
|
591 |
(let ((@x1213 (unit-resolution @x242 (unit-resolution (asserted (or $x566 $x509)) (hypothesis x47$) $x566) @x1210 @x756 x18$))) |
|
592 |
(let (($x554 (or $x552 $x553))) |
|
593 |
(let ((@x555 (asserted $x554))) |
|
594 |
(let (($x677 (or $x674 $x624))) |
|
595 |
(let ((@x678 (asserted $x677))) |
|
596 |
(let ((@x1217 (unit-resolution @x678 (unit-resolution @x797 @x1215 x28$) $x624))) |
|
597 |
(let ((@x1219 (unit-resolution @x779 (unit-resolution @x584 (hypothesis x47$) $x580) x24$))) |
|
598 |
(let (($x641 (or $x637 $x623))) |
|
599 |
(let ((@x642 (asserted $x641))) |
|
600 |
(let ((@x1221 (unit-resolution @x289 (unit-resolution @x642 @x1219 $x623) @x1217 (unit-resolution @x555 @x1213 $x553) x22$))) |
|
601 |
(let ((@x1226 (unit-resolution @x325 (unit-resolution (asserted (or $x609 $x610)) @x1221 $x610) @x1224 x26$))) |
|
602 |
(let (($x663 (or $x660 $x596))) |
|
603 |
(let ((@x664 (asserted $x663))) |
|
604 |
(let (($x589 (or $x587 $x588))) |
|
605 |
(let ((@x590 (asserted $x589))) |
|
606 |
(let ((@x1231 (unit-resolution @x590 (unit-resolution @x307 (unit-resolution @x662 @x1226 $x657) x54$) $x587))) |
|
607 |
(let ((@x1232 (unit-resolution @x269 @x1231 (unit-resolution (asserted (or $x609 $x595)) @x1221 $x595) (unit-resolution @x664 @x1226 $x596) x49$))) |
|
608 |
(let ((@x1234 (unit-resolution @x222 (unit-resolution @x527 @x1232 $x524) (unit-resolution @x557 @x1213 $x538) (unit-resolution @x616 @x1221 $x539) x44$))) |
|
609 |
(let (($x475 (or $x468 $x453))) |
|
610 |
(let ((@x476 (asserted $x475))) |
|
611 |
(let ((@x1237 (unit-resolution @x594 (unit-resolution @x307 (unit-resolution @x662 @x1226 $x657) x54$) $x517))) |
|
612 |
(let ((@x1239 (unit-resolution @x202 (unit-resolution (asserted (or $x525 $x516)) @x1232 $x516) @x1237 x42$))) |
|
613 |
(let ((@x1241 (unit-resolution @x155 (unit-resolution @x448 @x1239 $x445) (unit-resolution @x535 @x1232 $x454) (unit-resolution @x476 @x1234 $x453) x37$))) |
|
614 |
(let ((@x1243 (unit-resolution @x725 (unit-resolution (asserted (or $x446 $x375)) @x1239 $x375) x5$))) |
|
615 |
(let (($x390 (or $x383 $x374))) |
|
616 |
(let ((@x391 (asserted $x390))) |
|
617 |
(let ((@x1246 (lemma (unit-resolution @x391 @x1243 @x1241 false) (or $x509 x46$ x52$)))) |
|
618 |
(let ((@x1247 (unit-resolution @x1246 @x1210 @x756 $x509))) |
|
619 |
(let ((@x1249 (unit-resolution @x175 (unit-resolution @x1090 @x1247 @x913 $x481) @x882 @x708 x45$))) |
|
620 |
(let (($x562 (or $x553 $x482))) |
|
621 |
(let ((@x563 (asserted $x562))) |
|
622 |
(let ((@x1252 (unit-resolution @x242 (unit-resolution @x559 @x1249 $x552) @x1210 @x756 x19$))) |
|
623 |
(let ((@x1255 (unit-resolution @x642 (unit-resolution @x779 (unit-resolution @x582 @x1252 $x580) x24$) $x623))) |
|
624 |
(let ((@x1256 (unit-resolution @x289 @x1255 @x1217 (unit-resolution @x563 @x1249 $x553) x22$))) |
|
625 |
(let ((@x1260 (unit-resolution @x325 (unit-resolution (asserted (or $x609 $x610)) @x1256 $x610) @x1224 x26$))) |
|
626 |
(let ((@x1265 (unit-resolution @x590 (unit-resolution @x307 (unit-resolution @x662 @x1260 $x657) x54$) $x587))) |
|
627 |
(let ((@x1266 (unit-resolution @x269 @x1265 (unit-resolution (asserted (or $x609 $x595)) @x1256 $x595) (unit-resolution @x664 @x1260 $x596) x49$))) |
|
628 |
(let ((@x1268 (unit-resolution @x222 (unit-resolution @x527 @x1266 $x524) (unit-resolution (asserted (or $x538 $x482)) @x1249 $x538) (unit-resolution @x616 @x1256 $x539) x44$))) |
|
629 |
(let ((@x1271 (unit-resolution @x594 (unit-resolution @x307 (unit-resolution @x662 @x1260 $x657) x54$) $x517))) |
|
630 |
(let ((@x1273 (unit-resolution @x202 (unit-resolution (asserted (or $x525 $x516)) @x1266 $x516) @x1271 x42$))) |
|
631 |
(let ((@x1275 (unit-resolution @x155 (unit-resolution @x448 @x1273 $x445) (unit-resolution @x535 @x1266 $x454) (unit-resolution @x476 @x1268 $x453) x37$))) |
|
632 |
(let ((@x1277 (unit-resolution @x725 (unit-resolution (asserted (or $x446 $x375)) @x1273 $x375) x5$))) |
|
633 |
(let ((@x1280 (lemma (unit-resolution @x391 @x1277 @x1275 false) (or x46$ x52$ x12$ x39$ x8$)))) |
|
634 |
(let ((@x1282 (unit-resolution @x504 (unit-resolution @x1280 @x708 @x882 @x756 @x913 x46$) $x481))) |
|
635 |
(let ((@x1284 (unit-resolution @x563 (unit-resolution @x175 @x1282 @x882 @x708 x45$) $x553))) |
|
636 |
(let ((@x1286 (unit-resolution @x498 (unit-resolution @x1280 @x708 @x882 @x756 @x913 x46$) $x495))) |
|
637 |
(let ((@x1289 (unit-resolution @x779 (unit-resolution @x584 (unit-resolution @x193 @x1286 @x1285 x47$) $x580) x24$))) |
|
638 |
(let ((@x1291 (unit-resolution @x289 (unit-resolution @x642 @x1289 $x623) @x1217 @x1284 x22$))) |
|
639 |
(let (($x564 (or $x538 $x482))) |
|
640 |
(let ((@x565 (asserted $x564))) |
|
641 |
(let ((@x1293 (unit-resolution @x565 (unit-resolution @x175 @x1282 @x882 @x708 x45$) $x538))) |
|
642 |
(let ((@x1295 (unit-resolution @x325 (unit-resolution (asserted (or $x609 $x610)) @x1291 $x610) @x1224 x26$))) |
|
643 |
(let ((@x1300 (unit-resolution @x590 (unit-resolution @x307 (unit-resolution @x662 @x1295 $x657) x54$) $x587))) |
|
644 |
(let ((@x1301 (unit-resolution @x269 @x1300 (unit-resolution (asserted (or $x609 $x595)) @x1291 $x595) (unit-resolution @x664 @x1295 $x596) x49$))) |
|
645 |
(let ((@x1303 (unit-resolution @x222 (unit-resolution @x527 @x1301 $x524) @x1293 (unit-resolution @x616 @x1291 $x539) x44$))) |
|
646 |
(let ((@x1306 (unit-resolution @x594 (unit-resolution @x307 (unit-resolution @x662 @x1295 $x657) x54$) $x517))) |
|
647 |
(let ((@x1308 (unit-resolution @x202 (unit-resolution (asserted (or $x525 $x516)) @x1301 $x516) @x1306 x42$))) |
|
648 |
(let ((@x1310 (unit-resolution @x155 (unit-resolution @x448 @x1308 $x445) (unit-resolution @x535 @x1301 $x454) (unit-resolution @x476 @x1303 $x453) x37$))) |
|
649 |
(let ((@x1312 (unit-resolution @x725 (unit-resolution (asserted (or $x446 $x375)) @x1308 $x375) x5$))) |
|
650 |
(let ((@x1315 (lemma (unit-resolution @x391 @x1312 @x1310 false) (or x39$ x12$ x41$ x52$ x8$)))) |
|
651 |
(let ((@x1317 (unit-resolution @x421 (unit-resolution @x1315 @x1285 @x882 @x756 @x913 x39$) $x356))) |
|
652 |
(let ((@x1321 (unit-resolution @x77 (unit-resolution @x368 (unit-resolution @x67 @x1317 @x845 x3$) $x363) x35$))) |
|
653 |
(let ((@x1323 (unit-resolution @x128 (unit-resolution @x444 @x1321 $x424) @x913 (unit-resolution @x370 (unit-resolution @x67 @x1317 @x845 x3$) $x364) x40$))) |
|
654 |
(let ((@x1327 (unit-resolution @x1246 (unit-resolution @x193 (unit-resolution @x502 @x1323 $x495) @x1285 x47$) (unit-resolution @x506 @x1323 $x496) @x756 false))) |
|
655 |
(let ((@x1330 (unit-resolution (lemma @x1327 (or x41$ x52$ x8$ x2$ x12$)) @x845 @x913 @x756 @x882 x41$))) |
|
656 |
(let ((@x1334 (unit-resolution @x366 (unit-resolution @x77 (unit-resolution @x442 @x1330 $x371) x4$) $x364))) |
|
657 |
(let ((@x1335 (unit-resolution @x128 @x1334 @x913 (unit-resolution @x440 @x1330 $x424) x40$))) |
|
658 |
(let ((@x1337 (unit-resolution @x368 (unit-resolution @x77 (unit-resolution @x442 @x1330 $x371) x4$) $x355))) |
|
659 |
(let ((@x1340 (unit-resolution @x1280 (unit-resolution @x421 (unit-resolution @x67 @x1337 @x845 x33$) $x411) (unit-resolution @x506 @x1335 $x496) @x882 @x756 @x913 false))) |
|
660 |
(let ((@x1343 (unit-resolution (lemma @x1340 (or x2$ x12$ x52$ x8$)) @x913 @x756 @x882 x2$))) |
|
661 |
(let ((@x1345 (unit-resolution @x706 (unit-resolution @x352 @x1343 $x335) x31$))) |
|
662 |
(let (($x451 (or $x446 $x375))) |
|
663 |
(let ((@x452 (asserted $x451))) |
|
664 |
(let ((@x1348 (unit-resolution @x452 (unit-resolution @x725 (unit-resolution @x395 @x1345 $x374) x36$) $x446))) |
|
665 |
(let ((@x1349 (unit-resolution @x450 (unit-resolution @x725 (unit-resolution @x395 @x1345 $x374) x36$) $x445))) |
|
666 |
(let ((@x1354 (unit-resolution @x419 (unit-resolution @x1280 @x1210 @x882 @x756 @x913 x39$) $x396))) |
|
667 |
(let ((@x1355 (unit-resolution @x108 @x1354 (unit-resolution @x350 @x1343 $x348) (unit-resolution @x389 @x1345 $x382) x38$))) |
|
668 |
(let ((@x1357 (unit-resolution @x155 (unit-resolution @x480 @x1355 $x453) (unit-resolution @x393 @x1345 $x383) @x1349 x43$))) |
|
669 |
(let ((@x1360 (unit-resolution @x594 (unit-resolution @x202 (unit-resolution @x537 @x1357 $x516) @x1348 x48$) $x588))) |
|
670 |
(let ((@x1364 (unit-resolution @x1154 (unit-resolution @x478 @x1355 $x468) @x1345 (unit-resolution @x480 @x1355 $x453) x17$))) |
|
671 |
(let (($x560 (or $x553 $x538))) |
|
672 |
(let ((@x561 (asserted $x560))) |
|
673 |
(let ((@x1367 (unit-resolution @x582 (unit-resolution @x771 @x1364 @x882 @x1247 @x756 x19$) $x580))) |
|
674 |
(let ((@x1370 (unit-resolution @x289 (unit-resolution @x642 (unit-resolution @x779 @x1367 x24$) $x623) @x1217 (unit-resolution @x561 @x1364 $x553) x22$))) |
|
675 |
(let (($x611 (or $x609 $x610))) |
|
676 |
(let ((@x612 (asserted $x611))) |
|
677 |
(let ((@x1372 (unit-resolution @x325 (unit-resolution @x612 @x1370 $x610) (unit-resolution @x662 (unit-resolution @x307 @x1360 x25$) $x660) @x1224 false))) |
|
678 |
(let ((@x1384 (unit-resolution (lemma @x1372 (or x46$ x12$ x52$ x8$)) @x913 @x756 @x882 x46$))) |
|
679 |
(let ((@x1376 (unit-resolution (lemma @x891 (or $x610 x47$ x19$ x52$)) @x974 (unit-resolution (asserted (or $x566 $x496)) (hypothesis x46$) $x566) @x756 $x610))) |
|
680 |
(let ((@x1379 (unit-resolution @x594 (unit-resolution @x844 @x974 (hypothesis x46$) x48$) $x588))) |
|
681 |
(let ((@x1381 (unit-resolution @x662 (unit-resolution @x307 @x1379 x25$) (unit-resolution @x325 @x1376 @x1224 x26$) false))) |
|
682 |
(let ((@x1383 (lemma @x1381 (or x47$ x52$ $x496)))) |
|
683 |
(let (($x512 (or $x509 $x438))) |
|
684 |
(let ((@x513 (asserted $x512))) |
|
685 |
(let ((@x1387 (unit-resolution @x1315 (unit-resolution @x513 (unit-resolution @x1383 @x1384 @x756 x47$) $x438) @x882 @x756 @x913 x39$))) |
|
686 |
(let ((@x1389 (unit-resolution @x108 (unit-resolution @x419 @x1387 $x396) (unit-resolution @x350 @x1343 $x348) (unit-resolution @x389 @x1345 $x382) x38$))) |
|
687 |
(let ((@x1391 (unit-resolution @x155 (unit-resolution @x480 @x1389 $x453) (unit-resolution @x393 @x1345 $x383) @x1349 x43$))) |
|
688 |
(let ((@x1394 (unit-resolution @x594 (unit-resolution @x202 (unit-resolution @x537 @x1391 $x516) @x1348 x48$) $x588))) |
|
689 |
(let ((@x1397 (unit-resolution @x779 (unit-resolution @x584 (unit-resolution @x1383 @x1384 @x756 x47$) $x580) x24$))) |
|
690 |
(let ((@x1400 (unit-resolution @x1154 (unit-resolution @x480 @x1389 $x453) @x1345 (unit-resolution @x478 @x1389 $x468) x17$))) |
|
691 |
(let ((@x1402 (unit-resolution @x289 (unit-resolution @x561 @x1400 $x553) @x1217 (unit-resolution @x642 @x1397 $x623) x22$))) |
|
692 |
(let ((@x1405 (unit-resolution @x662 (unit-resolution @x325 (unit-resolution @x612 @x1402 $x610) @x1224 x26$) (unit-resolution @x307 @x1394 x25$) false))) |
|
693 |
(let ((@x1440 (unit-resolution (lemma @x1405 (or x8$ x12$ x52$)) @x882 @x756 x8$))) |
|
694 |
(let ((@x1411 (unit-resolution @x242 (unit-resolution @x559 (hypothesis x45$) $x552) @x1210 @x756 x19$))) |
|
695 |
(let ((@x1414 (unit-resolution @x642 (unit-resolution @x779 (unit-resolution @x582 @x1411 $x580) x24$) $x623))) |
|
696 |
(let ((@x1415 (unit-resolution @x289 @x1414 @x1217 (unit-resolution @x563 (hypothesis x45$) $x553) x22$))) |
|
697 |
(let ((@x1418 (unit-resolution @x662 (unit-resolution @x325 (unit-resolution @x612 @x1415 $x610) @x1224 x26$) $x657))) |
|
698 |
(let ((@x1421 (unit-resolution @x664 (unit-resolution @x325 (unit-resolution @x612 @x1415 $x610) @x1224 x26$) $x596))) |
|
699 |
(let ((@x1424 (unit-resolution @x269 (unit-resolution @x590 (unit-resolution @x307 @x1418 x54$) $x587) (unit-resolution (asserted (or $x609 $x595)) @x1415 $x595) @x1421 x49$))) |
|
700 |
(let (($x532 (or $x525 $x516))) |
|
701 |
(let ((@x533 (asserted $x532))) |
|
702 |
(let ((@x1426 (unit-resolution @x202 (unit-resolution @x533 @x1424 $x516) (unit-resolution @x594 (unit-resolution @x307 @x1418 x54$) $x517) x42$))) |
|
703 |
(let ((@x1432 (unit-resolution @x222 (unit-resolution @x527 @x1424 $x524) (unit-resolution @x565 (hypothesis x45$) $x538) (unit-resolution @x616 @x1415 $x539) x44$))) |
|
704 |
(let ((@x1434 (unit-resolution @x155 (unit-resolution @x476 @x1432 $x453) (unit-resolution @x535 @x1424 $x454) (unit-resolution @x448 @x1426 $x445) x37$))) |
|
705 |
(let ((@x1437 (unit-resolution @x391 (unit-resolution @x725 (unit-resolution @x452 @x1426 $x375) x5$) @x1434 false))) |
|
706 |
(let ((@x1444 (unit-resolution @x175 (unit-resolution (lemma @x1437 (or $x482 x46$ x52$)) @x1210 @x756 $x482) @x882 (unit-resolution @x413 @x1440 $x411) x13$))) |
|
707 |
(let ((@x1447 (unit-resolution @x442 (unit-resolution @x193 (unit-resolution @x500 @x1444 $x495) @x1247 x41$) $x371))) |
|
708 |
(let ((@x1450 (unit-resolution @x67 (unit-resolution @x368 (unit-resolution @x77 @x1447 x4$) $x355) (unit-resolution @x417 @x1440 $x356) x2$))) |
|
709 |
(let ((@x1452 (unit-resolution @x706 (unit-resolution @x352 @x1450 $x335) x31$))) |
|
710 |
(let ((@x1455 (unit-resolution @x452 (unit-resolution @x725 (unit-resolution @x395 @x1452 $x374) x36$) $x446))) |
|
711 |
(let ((@x1457 (unit-resolution @x1011 (unit-resolution @x368 (unit-resolution @x77 @x1447 x4$) $x355) @x1440 x38$))) |
|
712 |
(let ((@x1459 (unit-resolution @x450 (unit-resolution @x725 (unit-resolution @x395 @x1452 $x374) x36$) $x445))) |
|
713 |
(let ((@x1460 (unit-resolution @x155 @x1459 (unit-resolution @x480 @x1457 $x453) (unit-resolution @x393 @x1452 $x383) x43$))) |
|
714 |
(let ((@x1463 (unit-resolution @x594 (unit-resolution @x202 (unit-resolution @x537 @x1460 $x516) @x1455 x48$) $x588))) |
|
715 |
(let ((@x1466 (unit-resolution @x1154 @x1452 (unit-resolution @x478 @x1457 $x468) (unit-resolution @x480 @x1457 $x453) x17$))) |
|
716 |
(let ((@x1469 (unit-resolution @x582 (unit-resolution @x771 @x1466 @x882 @x1247 @x756 x19$) $x580))) |
|
717 |
(let ((@x1472 (unit-resolution @x289 (unit-resolution @x642 (unit-resolution @x779 @x1469 x24$) $x623) @x1217 (unit-resolution @x561 @x1466 $x553) x22$))) |
|
718 |
(let ((@x1475 (unit-resolution @x662 (unit-resolution @x325 (unit-resolution @x612 @x1472 $x610) @x1224 x26$) (unit-resolution @x307 @x1463 x25$) false))) |
|
719 |
(let ((@x1478 (unit-resolution (lemma @x1475 (or x46$ x12$ x52$)) @x882 @x756 x46$))) |
|
720 |
(let ((@x1480 (unit-resolution @x175 (unit-resolution @x504 @x1478 $x481) @x882 (unit-resolution @x413 @x1440 $x411) x45$))) |
|
721 |
(let ((@x1484 (unit-resolution @x779 (unit-resolution @x584 (unit-resolution @x1383 @x1478 @x756 x47$) $x580) x24$))) |
|
722 |
(let ((@x1486 (unit-resolution @x289 (unit-resolution @x642 @x1484 $x623) @x1217 (unit-resolution @x563 @x1480 $x553) x22$))) |
|
723 |
(let ((@x1491 (unit-resolution @x664 (unit-resolution @x325 (unit-resolution @x612 @x1486 $x610) @x1224 x26$) $x596))) |
|
724 |
(let ((@x1493 (unit-resolution @x662 (unit-resolution @x325 (unit-resolution @x612 @x1486 $x610) @x1224 x26$) $x657))) |
|
725 |
(let ((@x1496 (unit-resolution @x269 (unit-resolution @x590 (unit-resolution @x307 @x1493 x54$) $x587) (unit-resolution (asserted (or $x609 $x595)) @x1486 $x595) @x1491 x49$))) |
|
726 |
(let ((@x1498 (unit-resolution @x222 (unit-resolution @x527 @x1496 $x524) (unit-resolution @x565 @x1480 $x538) (unit-resolution @x616 @x1486 $x539) x44$))) |
|
727 |
(let ((@x1503 (unit-resolution @x202 (unit-resolution @x533 @x1496 $x516) (unit-resolution @x594 (unit-resolution @x307 @x1493 x54$) $x517) x42$))) |
|
728 |
(let ((@x1505 (unit-resolution @x155 (unit-resolution @x448 @x1503 $x445) (unit-resolution @x535 @x1496 $x454) (unit-resolution @x476 @x1498 $x453) x37$))) |
|
729 |
(let ((@x1508 (unit-resolution @x391 (unit-resolution @x725 (unit-resolution @x452 @x1503 $x375) x5$) @x1505 false))) |
|
730 |
(let ((@x1576 (unit-resolution @x472 (unit-resolution (lemma @x1508 (or x12$ x52$)) @x756 x12$) $x453))) |
|
731 |
(let ((@x1547 (hypothesis $x667))) |
|
732 |
(let ((@x1557 (unit-resolution @x325 (unit-resolution @x612 (hypothesis x22$) $x610) @x1547 x26$))) |
|
733 |
(let ((@x1561 (unit-resolution @x590 (unit-resolution @x307 (unit-resolution @x662 @x1557 $x657) x54$) $x587))) |
|
734 |
(let ((@x1562 (unit-resolution @x269 @x1561 (unit-resolution @x664 @x1557 $x596) (unit-resolution (asserted (or $x609 $x595)) (hypothesis x22$) $x595) x49$))) |
|
735 |
(let ((@x1564 (unit-resolution @x594 (unit-resolution @x307 (unit-resolution @x662 @x1557 $x657) x54$) $x517))) |
|
736 |
(let ((@x1512 (unit-resolution @x391 @x738 (unit-resolution @x155 @x830 @x832 @x815 x37$) false))) |
|
737 |
(let ((@x1514 (lemma @x1512 (or $x446 x43$ x11$)))) |
|
738 |
(let ((@x1567 (unit-resolution @x1514 (unit-resolution @x202 (unit-resolution @x533 @x1562 $x516) @x1564 x42$) (unit-resolution @x535 @x1562 $x454) @x815 false))) |
|
739 |
(let ((@x1569 (lemma @x1567 (or $x609 x11$ x27$)))) |
|
740 |
(let ((@x1584 (hypothesis $x446))) |
|
741 |
(let ((@x1587 (unit-resolution @x307 (unit-resolution @x662 (hypothesis x26$) $x657) x54$))) |
|
742 |
(let ((@x1590 (unit-resolution @x529 (unit-resolution @x202 (unit-resolution @x594 @x1587 $x517) @x1584 x15$) $x524))) |
|
743 |
(let ((@x1594 (unit-resolution @x533 (unit-resolution @x202 (unit-resolution @x594 @x1587 $x517) @x1584 x15$) $x525))) |
|
744 |
(let ((@x1595 (unit-resolution @x269 @x1594 (unit-resolution @x664 (hypothesis x26$) $x596) (unit-resolution @x590 @x1587 $x587) x21$))) |
|
745 |
(let ((@x1596 (unit-resolution @x622 @x1595 (unit-resolution @x222 @x1590 @x1142 @x897 x50$) false))) |
|
746 |
(let ((@x1599 (unit-resolution (lemma @x1596 (or $x660 x44$ x17$ x42$)) @x1584 @x897 @x1142 $x660))) |
|
747 |
(let ((@x1602 (unit-resolution @x222 (unit-resolution @x620 (unit-resolution @x325 @x1599 @x1547 x56$) $x539) @x1142 @x897 x16$))) |
|
748 |
(let ((@x1607 (unit-resolution @x592 (unit-resolution @x202 (unit-resolution @x529 @x1602 $x516) @x1584 x48$) $x587))) |
|
749 |
(let ((@x1608 (unit-resolution @x269 @x1607 (unit-resolution @x618 (unit-resolution @x325 @x1599 @x1547 x56$) $x595) (unit-resolution @x527 @x1602 $x525) x55$))) |
|
750 |
(let ((@x1609 (unit-resolution @x594 (unit-resolution @x202 (unit-resolution @x529 @x1602 $x516) @x1584 x48$) $x588))) |
|
751 |
(let ((@x1613 (lemma (unit-resolution @x666 (unit-resolution @x307 @x1609 x25$) @x1608 false) (or x42$ x44$ x17$ x27$)))) |
|
752 |
(let ((@x1615 (unit-resolution @x448 (unit-resolution @x1613 @x897 @x1021 @x1547 x42$) $x445))) |
|
753 |
(let ((@x1616 (unit-resolution @x1514 (unit-resolution @x1613 @x897 @x1021 @x1547 x42$) @x889 x43$))) |
|
754 |
(let (($x463 (or $x454 $x383))) |
|
755 |
(let ((@x464 (asserted $x463))) |
|
756 |
(let ((@x1618 (unit-resolution @x1075 (unit-resolution @x464 @x1616 $x383) @x1020 @x897 @x1615 x50$))) |
|
757 |
(let ((@x1621 (unit-resolution @x662 (unit-resolution @x325 (unit-resolution @x620 @x1618 $x610) @x1547 x26$) $x657))) |
|
758 |
(let ((@x1625 (unit-resolution @x664 (unit-resolution @x325 (unit-resolution @x620 @x1618 $x610) @x1547 x26$) $x596))) |
|
759 |
(let ((@x1626 (unit-resolution @x269 @x1625 (unit-resolution @x622 @x1618 $x595) (unit-resolution @x535 @x1616 $x525) x20$))) |
|
760 |
(let ((@x1629 (lemma (unit-resolution @x590 @x1626 (unit-resolution @x307 @x1621 x54$) false) (or x17$ x27$ $x467)))) |
|
761 |
(let ((@x1630 (unit-resolution @x1629 @x1224 (unit-resolution (lemma @x1508 (or x12$ x52$)) @x756 x12$) x17$))) |
|
762 |
(let ((@x1632 (unit-resolution @x289 (unit-resolution @x561 @x1630 $x553) @x1217 (unit-resolution @x1569 @x1576 @x1224 $x609) x23$))) |
|
763 |
(let ((@x1635 (unit-resolution @x584 (unit-resolution @x779 (unit-resolution @x642 @x1632 $x637) x53$) $x509))) |
|
764 |
(let ((@x1637 (unit-resolution @x582 (unit-resolution @x779 (unit-resolution @x642 @x1632 $x637) x53$) $x566))) |
|
765 |
(let ((@x1638 (unit-resolution @x242 @x1637 (unit-resolution @x557 @x1630 $x552) @x756 x46$))) |
|
766 |
(let ((@x1640 (lemma (unit-resolution @x1383 @x1638 @x1635 @x756 false) x52$))) |
|
767 |
(let (($x647 (or $x638 $x567))) |
|
768 |
(let ((@x648 (asserted $x647))) |
|
769 |
(let ((@x1665 (unit-resolution @x676 (unit-resolution @x797 (unit-resolution @x648 @x1640 $x638) x28$) $x667))) |
|
770 |
(let ((@x1668 (unit-resolution (unit-resolution @x1569 @x1665 (or $x609 x11$)) @x815 $x609))) |
|
771 |
(let ((@x1669 (unit-resolution @x678 (unit-resolution @x797 (unit-resolution @x648 @x1640 $x638) x28$) $x624))) |
|
772 |
(let ((@x1671 (unit-resolution @x289 (unit-resolution (asserted (or $x623 $x567)) @x1640 $x623) @x1669 (or x22$ x51$)))) |
|
773 |
(let ((@x1673 (unit-resolution @x563 (unit-resolution @x1671 @x1668 x51$) $x482))) |
|
774 |
(let ((@x1676 (unit-resolution (unit-resolution @x1629 @x1665 (or x17$ $x467)) @x897 $x467))) |
|
775 |
(let ((@x1650 (unit-resolution @x77 (unit-resolution @x368 (hypothesis x3$) $x363) x35$))) |
|
776 |
(let ((@x1579 (unit-resolution @x779 (unit-resolution (asserted (or $x637 $x567)) @x1640 $x637) x53$))) |
|
777 |
(let ((@x1580 (unit-resolution @x584 @x1579 $x509))) |
|
778 |
(let ((@x1653 (unit-resolution (unit-resolution @x193 @x1580 (or x14$ x41$)) (unit-resolution @x442 @x1650 $x438) x14$))) |
|
779 |
(let ((@x1655 (unit-resolution @x175 (unit-resolution @x500 @x1653 $x481) @x882 @x998 x39$))) |
|
780 |
(let ((@x1659 (unit-resolution @x128 (unit-resolution @x502 @x1653 $x425) (unit-resolution @x444 @x1650 $x424) (unit-resolution @x370 (hypothesis x3$) $x364) x8$))) |
|
781 |
(let ((@x1662 (lemma (unit-resolution @x413 @x1659 @x1655 false) (or $x355 x12$ x45$)))) |
|
782 |
(let ((@x1574 (unit-resolution (unit-resolution @x1090 @x1580 (or $x481 x8$)) (unit-resolution @x1011 @x942 @x853 $x410) $x481))) |
|
783 |
(let ((@x1581 (unit-resolution @x419 (unit-resolution @x175 @x1574 @x882 @x998 x39$) $x396))) |
|
784 |
(let ((@x1582 (unit-resolution @x421 (unit-resolution @x175 @x1574 @x882 @x998 x39$) $x356))) |
|
785 |
(let ((@x1642 (unit-resolution @x108 (unit-resolution @x350 (unit-resolution @x67 @x1582 @x942 x2$) $x348) @x1581 @x853 x6$))) |
|
786 |
(let ((@x1644 (unit-resolution @x706 (unit-resolution @x352 (unit-resolution @x67 @x1582 @x942 x2$) $x335) x31$))) |
|
787 |
(let ((@x1647 (lemma (unit-resolution @x389 @x1644 @x1642 false) (or x3$ x38$ x12$ x45$)))) |
|
788 |
(let ((@x1678 (unit-resolution @x1647 (unit-resolution @x1662 @x1673 @x1676 $x355) @x1676 @x1673 x38$))) |
|
789 |
(let ((@x1681 (unit-resolution @x706 (unit-resolution @x1154 (unit-resolution @x478 @x1678 $x468) @x897 @x815 $x336) x1$))) |
|
790 |
(let ((@x1683 (unit-resolution @x67 (unit-resolution @x352 @x1681 $x347) (unit-resolution @x1662 @x1673 @x1676 $x355) x33$))) |
|
791 |
(let ((@x1686 (unit-resolution (unit-resolution @x1090 @x1580 (or $x481 x8$)) (unit-resolution @x417 @x1683 $x410) $x481))) |
|
792 |
(let ((@x1687 (unit-resolution @x175 @x1686 (unit-resolution @x421 @x1683 $x411) @x1676 @x1673 false))) |
|
793 |
(let ((@x1691 (unit-resolution @x480 (unit-resolution (lemma @x1687 (or x11$ x17$)) @x897 x11$) $x397))) |
|
794 |
(let ((@x1692 (unit-resolution @x476 (unit-resolution (lemma @x1687 (or x11$ x17$)) @x897 x11$) $x468))) |
|
795 |
(let ((@x1695 (unit-resolution (unit-resolution @x1613 @x1665 (or x42$ x44$ x17$)) @x1692 @x897 x42$))) |
|
796 |
(let ((@x1700 (unit-resolution (unit-resolution @x769 @x1580 (or $x374 x45$ x12$ x38$)) (unit-resolution @x725 (unit-resolution @x452 @x1695 $x375) x5$) @x1676 @x1691 x45$))) |
|
797 |
(let ((@x1702 (unit-resolution @x1671 (unit-resolution @x563 @x1700 $x553) x22$))) |
|
798 |
(let ((@x1705 (unit-resolution (unit-resolution @x325 @x1665 (or x26$ x56$)) (unit-resolution @x612 @x1702 $x610) x26$))) |
|
799 |
(let ((@x1709 (unit-resolution @x222 (unit-resolution @x616 @x1702 $x539) @x897 @x1692 x16$))) |
|
800 |
(let ((@x1713 (unit-resolution @x269 (unit-resolution @x664 @x1705 $x596) (unit-resolution (asserted (or $x609 $x595)) @x1702 $x595) (unit-resolution @x527 @x1709 $x525) x20$))) |
|
801 |
(let ((@x1714 (unit-resolution @x590 @x1713 (unit-resolution @x307 (unit-resolution @x662 @x1705 $x657) x54$) false))) |
|
802 |
(let ((@x1715 (lemma @x1714 x17$))) |
|
803 |
(let ((@x1718 (unit-resolution (unit-resolution @x1569 @x1665 (or $x609 x11$)) (unit-resolution @x1671 (unit-resolution @x561 @x1715 $x553) x22$) x11$))) |
|
804 |
(let ((@x1722 (unit-resolution @x1662 (unit-resolution @x472 @x1718 $x467) (unit-resolution @x565 @x1715 $x482) $x355))) |
|
805 |
(unit-resolution @x1647 @x1722 (unit-resolution @x472 @x1718 $x467) (unit-resolution @x565 @x1715 $x482) (unit-resolution @x480 @x1718 $x397) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
806 |
|
57204 | 807 |
cc18a32517b61d11530e29950c780e58afa4da51 38 0 |
57170 | 808 |
unsat |
809 |
((set-logic AUFLIA) |
|
810 |
(declare-fun ?v0!0 () Int) |
|
811 |
(declare-fun ?v1!1 () Int) |
|
812 |
(proof |
|
813 |
(let (($x48 (p$ ?v0!0))) |
|
814 |
(let (($x50 (not $x48))) |
|
815 |
(let (($x63 (not (or $x48 (p$ ?v1!1))))) |
|
816 |
(let ((@x77 (monotonicity (rewrite (= (not $x50) $x48)) (= (and (not $x50) $x63) (and $x48 $x63))))) |
|
817 |
(let (($x57 (not $x50))) |
|
818 |
(let (($x67 (and $x57 $x63))) |
|
819 |
(let (($x41 (forall ((?v0 Int) )(let (($x32 (forall ((?v1 Int) )(let (($x28 (p$ ?v1))) |
|
820 |
(or (p$ ?v0) $x28))) |
|
821 |
)) |
|
822 |
(or (not (p$ ?v0)) $x32))) |
|
823 |
)) |
|
824 |
(let (($x44 (not $x41))) |
|
825 |
(let (($x52 (forall ((?v1 Int) )(let (($x28 (p$ ?v1))) |
|
826 |
(let (($x48 (p$ ?v0!0))) |
|
827 |
(or $x48 $x28)))) |
|
828 |
)) |
|
829 |
(let ((@x69 (nnf-neg (refl (~ $x57 $x57)) (sk (~ (not $x52) $x63)) (~ (not (or $x50 $x52)) $x67)))) |
|
830 |
(let (($x34 (forall ((?v0 Int) )(let (($x32 (forall ((?v1 Int) )(let (($x28 (p$ ?v1))) |
|
831 |
(or (p$ ?v0) $x28))) |
|
832 |
)) |
|
833 |
(let (($x28 (p$ ?v0))) |
|
834 |
(=> $x28 $x32)))) |
|
835 |
)) |
|
836 |
(let (($x35 (not $x34))) |
|
837 |
(let (($x32 (forall ((?v1 Int) )(let (($x28 (p$ ?v1))) |
|
838 |
(or (p$ ?0) $x28))) |
|
839 |
)) |
|
840 |
(let ((@x43 (quant-intro (rewrite (= (=> (p$ ?0) $x32) (or (not (p$ ?0)) $x32))) (= $x34 $x41)))) |
|
841 |
(let ((@x72 (mp~ (mp (asserted $x35) (monotonicity @x43 (= $x35 $x44)) $x44) (trans (sk (~ $x44 (not (or $x50 $x52)))) @x69 (~ $x44 $x67)) $x67))) |
|
842 |
(let ((@x81 (not-or-elim (and-elim (mp @x72 @x77 (and $x48 $x63)) $x63) $x50))) |
|
843 |
(let ((@x79 (and-elim (mp @x72 @x77 (and $x48 $x63)) $x48))) |
|
844 |
(unit-resolution @x79 @x81 false)))))))))))))))))))) |
|
845 |
||
57204 | 846 |
f69da5e318af2ccb1aaa30033e9780c0075e7706 53 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
847 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
848 |
((set-logic AUFLIA) |
56727 | 849 |
(declare-fun ?v0!0 () A$) |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
850 |
(proof |
56727 | 851 |
(let (($x517 (forall ((?v0 A$) )(!(let (($x40 (p$ x$ ?v0))) |
852 |
(not $x40)) :pattern ( (p$ x$ ?v0) ))) |
|
853 |
)) |
|
854 |
(let (($x44 (p$ x$ c$))) |
|
855 |
(let (($x91 (= $x44 x$))) |
|
856 |
(let (($x510 (forall ((?v0 Bool) (?v1 A$) )(!(let (($x29 (p$ ?v0 ?v1))) |
|
857 |
(= $x29 ?v0)) :pattern ( (p$ ?v0 ?v1) ))) |
|
858 |
)) |
|
859 |
(let (($x36 (forall ((?v0 Bool) (?v1 A$) )(let (($x29 (p$ ?v0 ?v1))) |
|
860 |
(= $x29 ?v0))) |
|
861 |
)) |
|
862 |
(let ((@x514 (quant-intro (refl (= (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (= $x36 $x510)))) |
|
863 |
(let ((@x64 (nnf-pos (refl (~ (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (~ $x36 $x36)))) |
|
864 |
(let (($x31 (forall ((?v0 Bool) (?v1 A$) )(let (($x29 (p$ ?v0 ?v1))) |
|
865 |
(= $x29 ?v0))) |
|
866 |
)) |
|
867 |
(let ((@x38 (quant-intro (rewrite (= (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (= $x31 $x36)))) |
|
868 |
(let ((@x515 (mp (mp~ (mp (asserted $x31) @x38 $x36) @x64 $x36) @x514 $x510))) |
|
869 |
(let (($x170 (or (not $x510) $x91))) |
|
870 |
(let ((@x503 ((_ quant-inst x$ c$) $x170))) |
|
871 |
(let (($x73 (p$ x$ ?v0!0))) |
|
872 |
(let (($x179 (= $x73 x$))) |
|
57170 | 873 |
(let (($x85 (or $x73 $x44))) |
56727 | 874 |
(let (($x81 (not $x44))) |
875 |
(let (($x69 (forall ((?v0 A$) )(let (($x40 (p$ x$ ?v0))) |
|
876 |
(not $x40))) |
|
877 |
)) |
|
57170 | 878 |
(let (($x84 (or $x69 $x81))) |
56727 | 879 |
(let (($x42 (exists ((?v0 A$) )(p$ x$ ?v0)) |
880 |
)) |
|
881 |
(let (($x54 (not $x42))) |
|
882 |
(let (($x55 (= $x54 $x44))) |
|
883 |
(let ((@x71 (nnf-neg (refl (~ (not (p$ x$ ?0)) (not (p$ x$ ?0)))) (~ $x54 $x69)))) |
|
57170 | 884 |
(let ((@x88 (nnf-pos @x71 (nnf-neg (sk (~ $x42 $x73)) (~ (not $x54) $x73)) (refl (~ $x44 $x44)) (refl (~ $x81 $x81)) (~ $x55 (and $x85 $x84))))) |
56727 | 885 |
(let ((@x53 (monotonicity (rewrite (= (= $x42 $x44) (= $x42 $x44))) (= (not (= $x42 $x44)) (not (= $x42 $x44)))))) |
886 |
(let ((@x59 (trans @x53 (rewrite (= (not (= $x42 $x44)) $x55)) (= (not (= $x42 $x44)) $x55)))) |
|
57170 | 887 |
(let ((@x89 (mp~ (mp (asserted (not (= $x42 $x44))) @x59 $x55) @x88 (and $x85 $x84)))) |
888 |
(let ((@x92 (and-elim @x89 $x85))) |
|
56727 | 889 |
(let ((@x484 (unit-resolution (def-axiom (or (not $x179) (not $x73) x$)) (unit-resolution @x92 (hypothesis $x81) $x73) (or (not $x179) x$)))) |
890 |
(let ((@x145 (unit-resolution @x484 (unit-resolution ((_ quant-inst x$ ?v0!0) (or (not $x510) $x179)) @x515 $x179) x$))) |
|
891 |
(let ((@x147 (unit-resolution (def-axiom (or (not $x91) $x44 (not x$))) (hypothesis $x81) (or (not $x91) (not x$))))) |
|
892 |
(let ((@x485 (lemma (unit-resolution @x147 @x145 (unit-resolution @x503 @x515 $x91) false) $x44))) |
|
893 |
(let (($x522 (or $x517 $x81))) |
|
894 |
(let ((@x521 (quant-intro (refl (= (not (p$ x$ ?0)) (not (p$ x$ ?0)))) (= $x69 $x517)))) |
|
57170 | 895 |
(let ((@x525 (mp (and-elim @x89 $x84) (monotonicity @x521 (= $x84 $x522)) $x522))) |
56727 | 896 |
(let (($x160 (or (not $x517) $x81))) |
897 |
(let ((@x161 ((_ quant-inst c$) $x160))) |
|
898 |
(unit-resolution @x161 @x485 (unit-resolution @x525 @x485 $x517) false))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
899 |
|
57204 | 900 |
853b35db7beb7a5b039f102f0403b2d296edcda0 53 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
901 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
902 |
((set-logic AUFLIA) |
56727 | 903 |
(declare-fun ?v0!3 () A$) |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
904 |
(proof |
56727 | 905 |
(let (($x584 (forall ((?v0 A$) )(!(let (($x52 (p$ x$ ?v0))) |
906 |
(not $x52)) :pattern ( (p$ x$ ?v0) ))) |
|
907 |
)) |
|
908 |
(let (($x55 (p$ x$ c$))) |
|
909 |
(let (($x230 (= $x55 x$))) |
|
910 |
(let (($x561 (forall ((?v0 Bool) (?v1 A$) )(!(let (($x29 (p$ ?v0 ?v1))) |
|
911 |
(= $x29 ?v0)) :pattern ( (p$ ?v0 ?v1) ))) |
|
912 |
)) |
|
913 |
(let (($x36 (forall ((?v0 Bool) (?v1 A$) )(let (($x29 (p$ ?v0 ?v1))) |
|
914 |
(= $x29 ?v0))) |
|
915 |
)) |
|
916 |
(let ((@x565 (quant-intro (refl (= (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (= $x36 $x561)))) |
|
917 |
(let ((@x75 (nnf-pos (refl (~ (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (~ $x36 $x36)))) |
|
918 |
(let (($x31 (forall ((?v0 Bool) (?v1 A$) )(let (($x29 (p$ ?v0 ?v1))) |
|
919 |
(= $x29 ?v0))) |
|
920 |
)) |
|
921 |
(let ((@x38 (quant-intro (rewrite (= (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (= $x31 $x36)))) |
|
922 |
(let ((@x566 (mp (mp~ (mp (asserted $x31) @x38 $x36) @x75 $x36) @x565 $x561))) |
|
923 |
(let (($x220 (or (not $x561) $x230))) |
|
924 |
(let ((@x221 ((_ quant-inst x$ c$) $x220))) |
|
925 |
(let (($x124 (p$ x$ ?v0!3))) |
|
926 |
(let (($x141 (= $x124 x$))) |
|
57170 | 927 |
(let (($x136 (or $x124 $x55))) |
56727 | 928 |
(let (($x132 (not $x55))) |
929 |
(let (($x120 (forall ((?v0 A$) )(let (($x52 (p$ x$ ?v0))) |
|
930 |
(not $x52))) |
|
931 |
)) |
|
57170 | 932 |
(let (($x135 (or $x120 $x132))) |
56727 | 933 |
(let (($x54 (exists ((?v0 A$) )(p$ x$ ?v0)) |
934 |
)) |
|
935 |
(let (($x65 (not $x54))) |
|
936 |
(let (($x66 (= $x65 $x55))) |
|
937 |
(let ((@x122 (nnf-neg (refl (~ (not (p$ x$ ?0)) (not (p$ x$ ?0)))) (~ $x65 $x120)))) |
|
57170 | 938 |
(let ((@x139 (nnf-pos @x122 (nnf-neg (sk (~ $x54 $x124)) (~ (not $x65) $x124)) (refl (~ $x55 $x55)) (refl (~ $x132 $x132)) (~ $x66 (and $x136 $x135))))) |
56727 | 939 |
(let ((@x64 (monotonicity (rewrite (= (= $x54 $x55) (= $x54 $x55))) (= (not (= $x54 $x55)) (not (= $x54 $x55)))))) |
940 |
(let ((@x70 (trans @x64 (rewrite (= (not (= $x54 $x55)) $x66)) (= (not (= $x54 $x55)) $x66)))) |
|
57170 | 941 |
(let ((@x140 (mp~ (mp (asserted (not (= $x54 $x55))) @x70 $x66) @x139 (and $x136 $x135)))) |
942 |
(let ((@x143 (and-elim @x140 $x136))) |
|
56727 | 943 |
(let ((@x193 (unit-resolution (def-axiom (or (not $x141) (not $x124) x$)) (unit-resolution @x143 (hypothesis $x132) $x124) (or (not $x141) x$)))) |
944 |
(let ((@x535 (unit-resolution @x193 (unit-resolution ((_ quant-inst x$ ?v0!3) (or (not $x561) $x141)) @x566 $x141) x$))) |
|
945 |
(let ((@x197 (unit-resolution (def-axiom (or (not $x230) $x55 (not x$))) (hypothesis $x132) (or (not $x230) (not x$))))) |
|
946 |
(let ((@x199 (lemma (unit-resolution @x197 @x535 (unit-resolution @x221 @x566 $x230) false) $x55))) |
|
947 |
(let (($x589 (or $x584 $x132))) |
|
948 |
(let ((@x588 (quant-intro (refl (= (not (p$ x$ ?0)) (not (p$ x$ ?0)))) (= $x120 $x584)))) |
|
57170 | 949 |
(let ((@x592 (mp (and-elim @x140 $x135) (monotonicity @x588 (= $x135 $x589)) $x589))) |
56727 | 950 |
(let (($x549 (or (not $x584) $x132))) |
951 |
(let ((@x211 ((_ quant-inst c$) $x549))) |
|
952 |
(unit-resolution @x211 @x199 (unit-resolution @x592 @x199 $x584) false))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
953 |
|
57204 | 954 |
ee1b9a27124d1797593a214fc9b1585b73aca864 26 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
955 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
956 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
957 |
(proof |
56727 | 958 |
(let (($x28 (p$ x$))) |
959 |
(let ((@x48 (monotonicity (rewrite (= (=> $x28 (p$ y$)) (or (not $x28) (p$ y$)))) (= (not (=> $x28 (p$ y$))) (not (or (not $x28) (p$ y$))))))) |
|
960 |
(let ((@x51 (mp (asserted (not (=> $x28 (p$ y$)))) @x48 (not (or (not $x28) (p$ y$)))))) |
|
961 |
(let ((@x49 (not-or-elim @x51 $x28))) |
|
962 |
(let (($x486 (forall ((?v0 A$) )(!(let (($x30 (p$ ?v0))) |
|
963 |
(not $x30)) :pattern ( (p$ ?v0) ))) |
|
964 |
)) |
|
965 |
(let (($x34 (forall ((?v0 A$) )(let (($x30 (p$ ?v0))) |
|
966 |
(not $x30))) |
|
967 |
)) |
|
968 |
(let ((@x490 (quant-intro (refl (= (not (p$ ?0)) (not (p$ ?0)))) (= $x34 $x486)))) |
|
969 |
(let (($x31 (exists ((?v0 A$) )(p$ ?v0)) |
|
970 |
)) |
|
971 |
(let (($x32 (not $x31))) |
|
972 |
(let ((@x59 (monotonicity (iff-true @x49 (= $x28 true)) (= (ite $x28 $x32 $x34) (ite true $x32 $x34))))) |
|
973 |
(let ((@x63 (trans @x59 (rewrite (= (ite true $x32 $x34) $x32)) (= (ite $x28 $x32 $x34) $x32)))) |
|
974 |
(let ((@x67 (mp~ (mp (asserted (ite $x28 $x32 $x34)) @x63 $x32) (nnf-neg (refl (~ (not (p$ ?0)) (not (p$ ?0)))) (~ $x32 $x34)) $x34))) |
|
975 |
(let ((@x491 (mp @x67 @x490 $x486))) |
|
976 |
(let (($x42 (not $x28))) |
|
977 |
(let (($x156 (or (not $x486) $x42))) |
|
978 |
(let ((@x70 ((_ quant-inst x$) $x156))) |
|
979 |
(unit-resolution @x70 @x491 @x49 false))))))))))))))))))) |
|
980 |
||
57204 | 981 |
1b3bdde0d609ebf7ad7472d1510134c9c367d283 7 0 |
56727 | 982 |
unsat |
983 |
((set-logic AUFLIA) |
|
984 |
(proof |
|
985 |
(let ((@x35 (monotonicity (rewrite (= (= 3 3) true)) (= (not (= 3 3)) (not true))))) |
|
986 |
(let ((@x39 (trans @x35 (rewrite (= (not true) false)) (= (not (= 3 3)) false)))) |
|
987 |
(mp (asserted (not (= 3 3))) @x39 false))))) |
|
988 |
||
57204 | 989 |
a90c5a0ce94c691b0e4756f87e5d5fdbfd876893 7 0 |
56727 | 990 |
unsat |
991 |
((set-logic AUFLIRA) |
|
992 |
(proof |
|
993 |
(let ((@x35 (monotonicity (rewrite (= (= 3.0 3.0) true)) (= (not (= 3.0 3.0)) (not true))))) |
|
994 |
(let ((@x39 (trans @x35 (rewrite (= (not true) false)) (= (not (= 3.0 3.0)) false)))) |
|
995 |
(mp (asserted (not (= 3.0 3.0))) @x39 false))))) |
|
996 |
||
57204 | 997 |
16d237209133b15bdc9c24699c793f8bdc748cd0 9 0 |
56727 | 998 |
unsat |
999 |
((set-logic AUFLIA) |
|
1000 |
(proof |
|
1001 |
(let ((@x37 (monotonicity (rewrite (= (+ 3 1) 4)) (= (= (+ 3 1) 4) (= 4 4))))) |
|
1002 |
(let ((@x41 (trans @x37 (rewrite (= (= 4 4) true)) (= (= (+ 3 1) 4) true)))) |
|
1003 |
(let ((@x44 (monotonicity @x41 (= (not (= (+ 3 1) 4)) (not true))))) |
|
1004 |
(let ((@x48 (trans @x44 (rewrite (= (not true) false)) (= (not (= (+ 3 1) 4)) false)))) |
|
1005 |
(mp (asserted (not (= (+ 3 1) 4))) @x48 false))))))) |
|
1006 |
||
57204 | 1007 |
bc021898e31cb7c6419a072d70191b97605bee76 16 0 |
56727 | 1008 |
unsat |
1009 |
((set-logic AUFLIA) |
|
1010 |
(proof |
|
1011 |
(let ((?x32 (+ z$ x$))) |
|
1012 |
(let ((?x33 (+ y$ ?x32))) |
|
1013 |
(let ((?x30 (+ y$ z$))) |
|
1014 |
(let ((?x31 (+ x$ ?x30))) |
|
1015 |
(let (($x34 (= ?x31 ?x33))) |
|
1016 |
(let (($x35 (not $x34))) |
|
1017 |
(let ((@x45 (monotonicity (rewrite (= ?x32 (+ x$ z$))) (= ?x33 (+ y$ (+ x$ z$)))))) |
|
1018 |
(let ((@x49 (trans @x45 (rewrite (= (+ y$ (+ x$ z$)) (+ x$ y$ z$))) (= ?x33 (+ x$ y$ z$))))) |
|
1019 |
(let ((@x52 (monotonicity (rewrite (= ?x31 (+ x$ y$ z$))) @x49 (= $x34 (= (+ x$ y$ z$) (+ x$ y$ z$)))))) |
|
1020 |
(let ((@x56 (trans @x52 (rewrite (= (= (+ x$ y$ z$) (+ x$ y$ z$)) true)) (= $x34 true)))) |
|
1021 |
(let ((@x63 (trans (monotonicity @x56 (= $x35 (not true))) (rewrite (= (not true) false)) (= $x35 false)))) |
|
1022 |
(mp (asserted $x35) @x63 false)))))))))))))) |
|
1023 |
||
57204 | 1024 |
31045f736583ed0b58ba51e123c31f8bb6c0267d 11 0 |
56727 | 1025 |
unsat |
1026 |
((set-logic AUFLIA) |
|
1027 |
(proof |
|
1028 |
(let ((@x41 (monotonicity (rewrite (= (<= 3 8) true)) (= (ite (<= 3 8) 8 3) (ite true 8 3))))) |
|
1029 |
(let ((@x45 (trans @x41 (rewrite (= (ite true 8 3) 8)) (= (ite (<= 3 8) 8 3) 8)))) |
|
1030 |
(let ((@x48 (monotonicity @x45 (= (< 5 (ite (<= 3 8) 8 3)) (< 5 8))))) |
|
1031 |
(let ((@x52 (trans @x48 (rewrite (= (< 5 8) true)) (= (< 5 (ite (<= 3 8) 8 3)) true)))) |
|
1032 |
(let ((@x55 (monotonicity @x52 (= (not (< 5 (ite (<= 3 8) 8 3))) (not true))))) |
|
1033 |
(let ((@x59 (trans @x55 (rewrite (= (not true) false)) (= (not (< 5 (ite (<= 3 8) 8 3))) false)))) |
|
1034 |
(mp (asserted (not (< 5 (ite (<= 3 8) 8 3)))) @x59 false))))))))) |
|
1035 |
||
57204 | 1036 |
2d63144daf211d89368e355b9b23a3b5118b7ba9 88 0 |
56727 | 1037 |
unsat |
1038 |
((set-logic AUFLIRA) |
|
1039 |
(proof |
|
1040 |
(let ((?x44 (* (- 1.0) x$))) |
|
1041 |
(let (($x83 (>= x$ 0.0))) |
|
1042 |
(let ((?x90 (ite $x83 x$ ?x44))) |
|
1043 |
(let ((?x113 (* (- 1.0) ?x90))) |
|
1044 |
(let ((?x148 (+ x$ ?x113))) |
|
1045 |
(let (($x149 (<= ?x148 0.0))) |
|
1046 |
(let (($x133 (= x$ ?x90))) |
|
1047 |
(let ((?x45 (* (- 1.0) y$))) |
|
1048 |
(let ((?x46 (+ ?x44 ?x45))) |
|
1049 |
(let ((?x29 (+ x$ y$))) |
|
1050 |
(let (($x71 (>= ?x29 0.0))) |
|
1051 |
(let ((?x78 (ite $x71 ?x29 ?x46))) |
|
1052 |
(let ((?x151 (* (- 1.0) ?x78))) |
|
1053 |
(let ((?x179 (+ ?x46 ?x151))) |
|
1054 |
(let (($x181 (>= ?x179 0.0))) |
|
1055 |
(let (($x130 (= ?x46 ?x78))) |
|
1056 |
(let (($x72 (not $x71))) |
|
1057 |
(let (($x95 (>= y$ 0.0))) |
|
1058 |
(let (($x96 (not $x95))) |
|
1059 |
(let (($x154 (>= (+ ?x29 ?x151) 0.0))) |
|
1060 |
(let (($x129 (= ?x29 ?x78))) |
|
1061 |
(let (($x190 (not $x181))) |
|
1062 |
(let ((@x155 (hypothesis $x95))) |
|
1063 |
(let ((?x102 (ite $x95 y$ ?x45))) |
|
1064 |
(let ((?x114 (* (- 1.0) ?x102))) |
|
1065 |
(let ((?x115 (+ ?x78 ?x113 ?x114))) |
|
1066 |
(let (($x116 (<= ?x115 0.0))) |
|
1067 |
(let (($x121 (not $x116))) |
|
1068 |
(let ((?x39 (+ (ite (< x$ 0.0) (- x$) x$) (ite (< y$ 0.0) (- y$) y$)))) |
|
1069 |
(let (($x41 (not (<= (ite (< ?x29 0.0) (- ?x29) ?x29) ?x39)))) |
|
1070 |
(let (($x36 (< y$ 0.0))) |
|
1071 |
(let ((?x59 (ite $x36 ?x45 y$))) |
|
1072 |
(let (($x33 (< x$ 0.0))) |
|
1073 |
(let ((?x54 (ite $x33 ?x44 x$))) |
|
1074 |
(let ((?x62 (+ ?x54 ?x59))) |
|
1075 |
(let (($x30 (< ?x29 0.0))) |
|
1076 |
(let ((?x49 (ite $x30 ?x46 ?x29))) |
|
1077 |
(let (($x65 (<= ?x49 ?x62))) |
|
1078 |
(let ((@x106 (trans (monotonicity (rewrite (= $x36 $x96)) (= ?x59 (ite $x96 ?x45 y$))) (rewrite (= (ite $x96 ?x45 y$) ?x102)) (= ?x59 ?x102)))) |
|
1079 |
(let ((@x89 (monotonicity (rewrite (= $x33 (not $x83))) (= ?x54 (ite (not $x83) ?x44 x$))))) |
|
1080 |
(let ((@x94 (trans @x89 (rewrite (= (ite (not $x83) ?x44 x$) ?x90)) (= ?x54 ?x90)))) |
|
1081 |
(let ((@x82 (trans (monotonicity (rewrite (= $x30 $x72)) (= ?x49 (ite $x72 ?x46 ?x29))) (rewrite (= (ite $x72 ?x46 ?x29) ?x78)) (= ?x49 ?x78)))) |
|
1082 |
(let ((@x112 (monotonicity @x82 (monotonicity @x94 @x106 (= ?x62 (+ ?x90 ?x102))) (= $x65 (<= ?x78 (+ ?x90 ?x102)))))) |
|
1083 |
(let ((@x120 (trans @x112 (rewrite (= (<= ?x78 (+ ?x90 ?x102)) $x116)) (= $x65 $x116)))) |
|
1084 |
(let ((@x61 (monotonicity (rewrite (= (- y$) ?x45)) (= (ite $x36 (- y$) y$) ?x59)))) |
|
1085 |
(let ((@x56 (monotonicity (rewrite (= (- x$) ?x44)) (= (ite $x33 (- x$) x$) ?x54)))) |
|
1086 |
(let ((@x51 (monotonicity (rewrite (= (- ?x29) ?x46)) (= (ite $x30 (- ?x29) ?x29) ?x49)))) |
|
1087 |
(let ((@x67 (monotonicity @x51 (monotonicity @x56 @x61 (= ?x39 ?x62)) (= (<= (ite $x30 (- ?x29) ?x29) ?x39) $x65)))) |
|
1088 |
(let ((@x125 (trans (monotonicity @x67 (= $x41 (not $x65))) (monotonicity @x120 (= (not $x65) $x121)) (= $x41 $x121)))) |
|
1089 |
(let ((@x126 (mp (asserted $x41) @x125 $x121))) |
|
1090 |
(let (($x139 (= y$ ?x102))) |
|
1091 |
(let ((@x169 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x139) (<= (+ y$ ?x114) 0.0))) (unit-resolution (def-axiom (or $x96 $x139)) @x155 $x139) (<= (+ y$ ?x114) 0.0)))) |
|
1092 |
(let ((?x150 (+ ?x44 ?x113))) |
|
1093 |
(let (($x153 (<= ?x150 0.0))) |
|
1094 |
(let (($x134 (= ?x44 ?x90))) |
|
1095 |
(let (($x84 (not $x83))) |
|
1096 |
(let ((@x159 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x71 $x84 $x96)) (hypothesis $x83) @x155 $x71))) |
|
1097 |
(let ((@x128 (def-axiom (or $x72 $x129)))) |
|
1098 |
(let ((@x163 ((_ th-lemma arith triangle-eq) (or (not $x129) $x154)))) |
|
1099 |
(let ((@x173 ((_ th-lemma arith triangle-eq) (or (not $x133) $x149)))) |
|
1100 |
(let ((@x174 (unit-resolution @x173 (unit-resolution (def-axiom (or $x84 $x133)) (hypothesis $x83) $x133) $x149))) |
|
1101 |
(let ((@x175 ((_ th-lemma arith farkas -1 -1 1 1) @x174 @x169 @x126 (unit-resolution @x163 (unit-resolution @x128 @x159 $x129) $x154) false))) |
|
1102 |
(let ((@x138 (def-axiom (or $x83 $x134)))) |
|
1103 |
(let ((@x184 (unit-resolution @x138 (unit-resolution (lemma @x175 (or $x84 $x96)) @x155 $x84) $x134))) |
|
1104 |
(let ((@x189 ((_ th-lemma arith farkas 2 -1 -1 1 1) @x155 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x134) $x153)) @x184 $x153) @x169 @x126 (hypothesis $x181) false))) |
|
1105 |
(let ((@x198 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x130) $x181)) (hypothesis $x130) (hypothesis $x190) false))) |
|
1106 |
(let ((@x199 (lemma @x198 (or (not $x130) $x181)))) |
|
1107 |
(let ((@x201 (unit-resolution @x199 (unit-resolution (lemma @x189 (or $x190 $x96)) @x155 $x190) (not $x130)))) |
|
1108 |
(let ((@x132 (def-axiom (or $x71 $x130)))) |
|
1109 |
(let ((@x204 (unit-resolution @x163 (unit-resolution @x128 (unit-resolution @x132 @x201 $x71) $x129) $x154))) |
|
1110 |
(let ((@x205 ((_ th-lemma arith farkas 2 1 1 1 1) (unit-resolution (lemma @x175 (or $x84 $x96)) @x155 $x84) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x134) $x153)) @x184 $x153) @x169 @x126 @x204 false))) |
|
1111 |
(let ((@x206 (lemma @x205 $x96))) |
|
1112 |
(let ((@x212 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x83 $x95 $x72)) (hypothesis $x71) @x206 $x83))) |
|
1113 |
(let ((@x136 (def-axiom (or $x84 $x133)))) |
|
1114 |
(let ((@x216 (unit-resolution @x163 (unit-resolution @x128 (hypothesis $x71) $x129) $x154))) |
|
1115 |
(let ((?x147 (+ ?x45 ?x114))) |
|
1116 |
(let (($x178 (<= ?x147 0.0))) |
|
1117 |
(let (($x140 (= ?x45 ?x102))) |
|
1118 |
(let ((@x221 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x140) $x178)) (unit-resolution (def-axiom (or $x95 $x140)) @x206 $x140) $x178))) |
|
1119 |
(let ((@x222 ((_ th-lemma arith farkas 2 1 1 1 1) @x206 @x221 @x126 @x216 (unit-resolution @x173 (unit-resolution @x136 @x212 $x133) $x149) false))) |
|
1120 |
(let ((@x226 (unit-resolution @x199 (unit-resolution @x132 (lemma @x222 $x72) $x130) $x181))) |
|
1121 |
(let ((@x231 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x134) $x153)) (hypothesis $x134) (lemma ((_ th-lemma arith farkas 1 -1 -1 1) @x221 @x126 @x226 (hypothesis $x153) false) (not $x153)) false))) |
|
1122 |
(let ((@x234 (unit-resolution @x136 (unit-resolution @x138 (lemma @x231 (not $x134)) $x83) $x133))) |
|
1123 |
((_ th-lemma arith farkas -2 1 -1 -1 1) (unit-resolution @x138 (lemma @x231 (not $x134)) $x83) @x221 @x126 @x226 (unit-resolution @x173 @x234 $x149) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
1124 |
||
57204 | 1125 |
bc11d479eb44aa63c2efc812af856ec331477415 16 0 |
56727 | 1126 |
unsat |
1127 |
((set-logic AUFLIA) |
|
1128 |
(proof |
|
1129 |
(let ((?x32 (p$ true))) |
|
1130 |
(let (($x29 (< 2 3))) |
|
1131 |
(let (($x30 (ite $x29 true false))) |
|
1132 |
(let ((?x31 (p$ $x30))) |
|
1133 |
(let (($x33 (= ?x31 ?x32))) |
|
1134 |
(let (($x34 (not $x33))) |
|
1135 |
(let ((@x52 (monotonicity (monotonicity (rewrite (= $x29 true)) (= (p$ $x29) ?x32)) (= (= (p$ $x29) ?x32) (= ?x32 ?x32))))) |
|
1136 |
(let ((@x56 (trans @x52 (rewrite (= (= ?x32 ?x32) true)) (= (= (p$ $x29) ?x32) true)))) |
|
1137 |
(let ((@x63 (trans (monotonicity @x56 (= (not (= (p$ $x29) ?x32)) (not true))) (rewrite (= (not true) false)) (= (not (= (p$ $x29) ?x32)) false)))) |
|
1138 |
(let ((@x43 (monotonicity (monotonicity (rewrite (= $x30 $x29)) (= ?x31 (p$ $x29))) (= $x33 (= (p$ $x29) ?x32))))) |
|
1139 |
(let ((@x46 (monotonicity @x43 (= $x34 (not (= (p$ $x29) ?x32)))))) |
|
1140 |
(mp (asserted $x34) (trans @x46 @x63 (= $x34 false)) false)))))))))))))) |
|
1141 |
||
57204 | 1142 |
d63ee5062f9a1d0a0bd17f51adaa0ac5e8f9ec16 16 0 |
56727 | 1143 |
unsat |
1144 |
((set-logic AUFLIA) |
|
1145 |
(proof |
|
1146 |
(let (($x33 (< x$ 1))) |
|
1147 |
(let ((?x37 (+ 3 x$))) |
|
1148 |
(let (($x40 (<= 4 ?x37))) |
|
1149 |
(let (($x43 (or $x40 $x33))) |
|
1150 |
(let (($x46 (not $x43))) |
|
1151 |
(let ((@x57 (monotonicity (rewrite (= $x40 (>= x$ 1))) (rewrite (= $x33 (not (>= x$ 1)))) (= $x43 (or (>= x$ 1) (not (>= x$ 1))))))) |
|
1152 |
(let ((@x61 (trans @x57 (rewrite (= (or (>= x$ 1) (not (>= x$ 1))) true)) (= $x43 true)))) |
|
1153 |
(let ((@x68 (trans (monotonicity @x61 (= $x46 (not true))) (rewrite (= (not true) false)) (= $x46 false)))) |
|
1154 |
(let ((@x42 (monotonicity (rewrite (= (+ x$ 3) ?x37)) (= (<= 4 (+ x$ 3)) $x40)))) |
|
1155 |
(let ((@x48 (monotonicity (monotonicity @x42 (= (or (<= 4 (+ x$ 3)) $x33) $x43)) (= (not (or (<= 4 (+ x$ 3)) $x33)) $x46)))) |
|
1156 |
(let ((@x70 (trans @x48 @x68 (= (not (or (<= 4 (+ x$ 3)) $x33)) false)))) |
|
1157 |
(mp (asserted (not (or (<= 4 (+ x$ 3)) $x33))) @x70 false)))))))))))))) |
|
1158 |
||
57204 | 1159 |
ea0e16fa50db2870878476eccdef4f64568acd55 18 0 |
56727 | 1160 |
unsat |
1161 |
((set-logic AUFLIA) |
|
1162 |
(proof |
|
1163 |
(let (($x51 (= (+ x$ (* (- 1) y$)) (- 4)))) |
|
1164 |
(let ((@x45 (monotonicity (rewrite (= (+ x$ 4) (+ 4 x$))) (= (= y$ (+ x$ 4)) (= y$ (+ 4 x$)))))) |
|
1165 |
(let ((@x54 (trans @x45 (rewrite (= (= y$ (+ 4 x$)) $x51)) (= (= y$ (+ x$ 4)) $x51)))) |
|
1166 |
(let ((@x88 (monotonicity (mp (asserted (= y$ (+ x$ 4))) @x54 $x51) (= (>= (+ x$ (* (- 1) y$)) 0) (>= (- 4) 0))))) |
|
1167 |
(let ((@x90 (trans @x88 (rewrite (= (>= (- 4) 0) false)) (= (>= (+ x$ (* (- 1) y$)) 0) false)))) |
|
1168 |
(let (($x70 (>= (+ x$ (* (- 1) y$)) 0))) |
|
1169 |
(let ((@x76 (monotonicity (rewrite (= (< 0 (+ (* (- 1) x$) y$)) (not $x70))) (= (not (< 0 (+ (* (- 1) x$) y$))) (not (not $x70)))))) |
|
1170 |
(let ((@x80 (trans @x76 (rewrite (= (not (not $x70)) $x70)) (= (not (< 0 (+ (* (- 1) x$) y$))) $x70)))) |
|
1171 |
(let (($x64 (< 0 (+ (* (- 1) x$) y$)))) |
|
1172 |
(let (($x67 (not $x64))) |
|
1173 |
(let (($x58 (not (< 0 (- y$ x$))))) |
|
1174 |
(let ((@x66 (monotonicity (rewrite (= (- y$ x$) (+ (* (- 1) x$) y$))) (= (< 0 (- y$ x$)) $x64)))) |
|
1175 |
(let ((@x83 (mp (asserted $x58) (trans (monotonicity @x66 (= $x58 $x67)) @x80 (= $x58 $x70)) $x70))) |
|
1176 |
(mp @x83 @x90 false)))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1177 |
|
57204 | 1178 |
2389277f3547499e520f2b3ac28991b30ac7c1a8 11 0 |
56727 | 1179 |
unsat |
1180 |
((set-logic AUFLIA) |
|
1181 |
(proof |
|
1182 |
(let ((@x39 (monotonicity (rewrite (= (+ 2 2) 4)) (= (= (+ 2 2) 5) (= 4 5))))) |
|
1183 |
(let ((@x43 (trans @x39 (rewrite (= (= 4 5) false)) (= (= (+ 2 2) 5) false)))) |
|
1184 |
(let ((@x46 (monotonicity @x43 (= (not (= (+ 2 2) 5)) (not false))))) |
|
1185 |
(let ((@x50 (trans @x46 (rewrite (= (not false) true)) (= (not (= (+ 2 2) 5)) true)))) |
|
1186 |
(let ((@x53 (monotonicity @x50 (= (not (not (= (+ 2 2) 5))) (not true))))) |
|
1187 |
(let ((@x57 (trans @x53 (rewrite (= (not true) false)) (= (not (not (= (+ 2 2) 5))) false)))) |
|
1188 |
(mp (asserted (not (not (= (+ 2 2) 5)))) @x57 false))))))))) |
|
1189 |
||
57204 | 1190 |
dfbbe6f3879b3c49e6d5f7ecff4f8f81ed746bd4 19 0 |
1191 |
unsat |
|
1192 |
((set-logic AUFLIRA) |
|
1193 |
(proof |
|
1194 |
(let ((?x32 (* 7.0 a$))) |
|
1195 |
(let ((?x29 (* 3.0 x$))) |
|
1196 |
(let ((?x33 (+ ?x29 ?x32))) |
|
1197 |
(let (($x43 (>= ?x33 4.0))) |
|
1198 |
(let (($x41 (not $x43))) |
|
1199 |
(let ((@x40 (mp (asserted (< ?x33 4.0)) (rewrite (= (< ?x33 4.0) $x41)) $x41))) |
|
1200 |
(let ((?x38 (* 2.0 x$))) |
|
1201 |
(let (($x48 (<= ?x38 3.0))) |
|
1202 |
(let (($x49 (not $x48))) |
|
1203 |
(let ((@x52 (mp (asserted (< 3.0 ?x38)) (rewrite (= (< 3.0 ?x38) $x49)) $x49))) |
|
1204 |
(let (($x58 (>= a$ 0.0))) |
|
1205 |
(let ((@x62 (monotonicity (rewrite (= (< a$ 0.0) (not $x58))) (= (not (< a$ 0.0)) (not (not $x58)))))) |
|
1206 |
(let ((@x66 (trans @x62 (rewrite (= (not (not $x58)) $x58)) (= (not (< a$ 0.0)) $x58)))) |
|
1207 |
(let ((@x67 (mp (asserted (not (< a$ 0.0))) @x66 $x58))) |
|
1208 |
((_ th-lemma arith farkas 7 3/2 1) @x67 @x52 @x40 false))))))))))))))))) |
|
1209 |
||
1210 |
b9f61649fae66ac195bf2593181f9d76c958bfe2 22 0 |
|
56727 | 1211 |
unsat |
1212 |
((set-logic AUFLIA) |
|
1213 |
(proof |
|
1214 |
(let (($x38 (not false))) |
|
1215 |
(let (($x34 (<= 0 x$))) |
|
1216 |
(let (($x35 (not $x34))) |
|
1217 |
(let (($x36 (or $x35 $x34))) |
|
1218 |
(let ((?x29 (- 1))) |
|
1219 |
(let ((?x31 (* ?x29 x$))) |
|
1220 |
(let ((?x32 (+ y$ ?x31))) |
|
1221 |
(let (($x33 (<= 0 ?x32))) |
|
1222 |
(let (($x37 (or $x33 $x36))) |
|
1223 |
(let (($x39 (= $x37 $x38))) |
|
1224 |
(let (($x40 (not $x39))) |
|
1225 |
(let ((@x60 (rewrite (= (or (<= 0 (+ y$ (* (- 1) x$))) true) true)))) |
|
1226 |
(let ((@x50 (monotonicity (monotonicity (rewrite (= ?x29 (- 1))) (= ?x31 (* (- 1) x$))) (= ?x32 (+ y$ (* (- 1) x$)))))) |
|
1227 |
(let ((@x58 (monotonicity (monotonicity @x50 (= $x33 (<= 0 (+ y$ (* (- 1) x$))))) (rewrite (= $x36 true)) (= $x37 (or (<= 0 (+ y$ (* (- 1) x$))) true))))) |
|
1228 |
(let ((@x67 (monotonicity (trans @x58 @x60 (= $x37 true)) (rewrite (= $x38 true)) (= $x39 (= true true))))) |
|
1229 |
(let ((@x71 (trans @x67 (rewrite (= (= true true) true)) (= $x39 true)))) |
|
1230 |
(let ((@x78 (trans (monotonicity @x71 (= $x40 (not true))) (rewrite (= (not true) false)) (= $x40 false)))) |
|
1231 |
(mp (asserted $x40) @x78 false)))))))))))))))))))) |
|
1232 |
||
57204 | 1233 |
7d3773a9d63ce2ada82ac001b84291cdc85d7ab8 159 0 |
56727 | 1234 |
unsat |
1235 |
((set-logic AUFLIA) |
|
1236 |
(proof |
|
1237 |
(let (($x44 (= m$ n$))) |
|
1238 |
(let ((@x480 (symm (commutativity (= $x44 (= n$ m$))) (= (= n$ m$) $x44)))) |
|
1239 |
(let (($x40 (= n$ m$))) |
|
1240 |
(let ((?x102 (* (- 1) m$))) |
|
1241 |
(let ((?x103 (+ n$ ?x102))) |
|
1242 |
(let (($x118 (>= ?x103 0))) |
|
1243 |
(let ((?x78 (* (- 1) n$a))) |
|
1244 |
(let ((?x96 (+ m$ ?x78))) |
|
1245 |
(let (($x127 (<= ?x96 0))) |
|
1246 |
(let ((?x79 (+ n$ ?x78))) |
|
1247 |
(let (($x88 (>= ?x79 0))) |
|
1248 |
(let (($x239 (or $x88 $x127))) |
|
1249 |
(let ((@x251 (monotonicity (rewrite (= (and (not $x88) (not $x127)) (not $x239))) (= (not (and (not $x88) (not $x127))) (not (not $x239)))))) |
|
1250 |
(let ((@x271 (trans @x251 (rewrite (= (not (not $x239)) $x239)) (= (not (and (not $x88) (not $x127))) $x239)))) |
|
1251 |
(let (($x128 (not $x127))) |
|
1252 |
(let (($x87 (not $x88))) |
|
1253 |
(let (($x143 (and $x87 $x128))) |
|
1254 |
(let (($x210 (not $x143))) |
|
1255 |
(let (($x50 (= n$a m$))) |
|
1256 |
(let (($x57 (and $x50 $x44))) |
|
1257 |
(let (($x80 (<= ?x79 0))) |
|
1258 |
(let (($x81 (not $x80))) |
|
1259 |
(let (($x33 (= m$ n$a))) |
|
1260 |
(let (($x84 (and $x33 $x81))) |
|
1261 |
(let (($x91 (and $x44 $x87))) |
|
1262 |
(let (($x95 (>= ?x96 0))) |
|
1263 |
(let (($x94 (not $x95))) |
|
1264 |
(let (($x99 (and $x94 $x81))) |
|
1265 |
(let (($x48 (= n$a n$))) |
|
1266 |
(let (($x104 (<= ?x103 0))) |
|
1267 |
(let (($x105 (not $x104))) |
|
1268 |
(let (($x108 (and $x105 $x48))) |
|
1269 |
(let (($x111 (and $x105 $x87))) |
|
1270 |
(let (($x114 (and $x50 $x105))) |
|
1271 |
(let (($x117 (not $x118))) |
|
1272 |
(let (($x121 (and $x48 $x117))) |
|
1273 |
(let (($x124 (and $x81 $x117))) |
|
1274 |
(let (($x131 (and $x128 $x44))) |
|
1275 |
(let (($x134 (and $x128 $x105))) |
|
1276 |
(let (($x137 (and $x40 $x94))) |
|
1277 |
(let (($x38 (= n$ n$a))) |
|
1278 |
(let (($x140 (and $x38 $x128))) |
|
1279 |
(let (($x146 (and $x117 $x33))) |
|
1280 |
(let (($x149 (and $x117 $x94))) |
|
1281 |
(let (($x197 (or $x149 $x146 $x143 $x140 $x137 $x134 $x131 $x124 $x121 $x114 $x111 $x108 $x99 $x91 $x84 $x57))) |
|
1282 |
(let (($x60 (or (and (< m$ n$a) (< n$a n$)) (or (and $x44 (< n$ n$a)) (or (and $x33 (< n$a n$)) $x57))))) |
|
1283 |
(let (($x62 (or (and (< m$ n$) (< n$ n$a)) (or (and (< m$ n$) $x48) $x60)))) |
|
1284 |
(let (($x65 (or (and (< n$a n$) (< n$ m$)) (or (and $x48 (< n$ m$)) (or (and $x50 (< m$ n$)) $x62))))) |
|
1285 |
(let (($x67 (or (and (< n$a m$) (< m$ n$)) (or (and (< n$a m$) $x44) $x65)))) |
|
1286 |
(let (($x70 (or (and (< n$ n$a) (< n$a m$)) (or (and $x38 (< n$a m$)) (or (and $x40 (< m$ n$a)) $x67))))) |
|
1287 |
(let (($x72 (or (and (< n$ m$) (< m$ n$a)) (or (and (< n$ m$) $x33) $x70)))) |
|
1288 |
(let (($x73 (not $x72))) |
|
1289 |
(let (($x170 (or $x121 (or $x114 (or $x111 (or $x108 (or $x99 (or $x91 (or $x84 $x57))))))))) |
|
1290 |
(let (($x191 (or $x146 (or $x143 (or $x140 (or $x137 (or $x134 (or $x131 (or $x124 $x170))))))))) |
|
1291 |
(let (($x189 (= $x70 (or $x143 (or $x140 (or $x137 (or $x134 (or $x131 (or $x124 $x170))))))))) |
|
1292 |
(let (($x186 (= (or (and $x38 (< n$a m$)) (or (and $x40 (< m$ n$a)) $x67)) (or $x140 (or $x137 (or $x134 (or $x131 (or $x124 $x170)))))))) |
|
1293 |
(let (($x183 (= (or (and $x40 (< m$ n$a)) $x67) (or $x137 (or $x134 (or $x131 (or $x124 $x170))))))) |
|
1294 |
(let (($x171 (= (or (and $x48 (< n$ m$)) (or (and $x50 (< m$ n$)) $x62)) $x170))) |
|
1295 |
(let (($x168 (= (or (and $x50 (< m$ n$)) $x62) (or $x114 (or $x111 (or $x108 (or $x99 (or $x91 (or $x84 $x57))))))))) |
|
1296 |
(let (($x162 (= (or (and (< m$ n$) $x48) $x60) (or $x108 (or $x99 (or $x91 (or $x84 $x57))))))) |
|
1297 |
(let (($x156 (= (or (and $x44 (< n$ n$a)) (or (and $x33 (< n$a n$)) $x57)) (or $x91 (or $x84 $x57))))) |
|
1298 |
(let ((@x83 (rewrite (= (< n$a n$) $x81)))) |
|
1299 |
(let ((@x154 (monotonicity (monotonicity @x83 (= (and $x33 (< n$a n$)) $x84)) (= (or (and $x33 (< n$a n$)) $x57) (or $x84 $x57))))) |
|
1300 |
(let ((@x90 (rewrite (= (< n$ n$a) $x87)))) |
|
1301 |
(let ((@x157 (monotonicity (monotonicity @x90 (= (and $x44 (< n$ n$a)) $x91)) @x154 $x156))) |
|
1302 |
(let ((@x98 (rewrite (= (< m$ n$a) $x94)))) |
|
1303 |
(let ((@x101 (monotonicity @x98 @x83 (= (and (< m$ n$a) (< n$a n$)) $x99)))) |
|
1304 |
(let ((@x160 (monotonicity @x101 @x157 (= $x60 (or $x99 (or $x91 (or $x84 $x57))))))) |
|
1305 |
(let ((@x107 (rewrite (= (< m$ n$) $x105)))) |
|
1306 |
(let ((@x163 (monotonicity (monotonicity @x107 (= (and (< m$ n$) $x48) $x108)) @x160 $x162))) |
|
1307 |
(let ((@x113 (monotonicity @x107 @x90 (= (and (< m$ n$) (< n$ n$a)) $x111)))) |
|
1308 |
(let ((@x166 (monotonicity @x113 @x163 (= $x62 (or $x111 (or $x108 (or $x99 (or $x91 (or $x84 $x57))))))))) |
|
1309 |
(let ((@x169 (monotonicity (monotonicity @x107 (= (and $x50 (< m$ n$)) $x114)) @x166 $x168))) |
|
1310 |
(let ((@x120 (rewrite (= (< n$ m$) $x117)))) |
|
1311 |
(let ((@x172 (monotonicity (monotonicity @x120 (= (and $x48 (< n$ m$)) $x121)) @x169 $x171))) |
|
1312 |
(let ((@x126 (monotonicity @x83 @x120 (= (and (< n$a n$) (< n$ m$)) $x124)))) |
|
1313 |
(let ((@x130 (rewrite (= (< n$a m$) $x128)))) |
|
1314 |
(let ((@x178 (monotonicity (monotonicity @x130 (= (and (< n$a m$) $x44) $x131)) (monotonicity @x126 @x172 (= $x65 (or $x124 $x170))) (= (or (and (< n$a m$) $x44) $x65) (or $x131 (or $x124 $x170)))))) |
|
1315 |
(let ((@x136 (monotonicity @x130 @x107 (= (and (< n$a m$) (< m$ n$)) $x134)))) |
|
1316 |
(let ((@x181 (monotonicity @x136 @x178 (= $x67 (or $x134 (or $x131 (or $x124 $x170))))))) |
|
1317 |
(let ((@x184 (monotonicity (monotonicity @x98 (= (and $x40 (< m$ n$a)) $x137)) @x181 $x183))) |
|
1318 |
(let ((@x187 (monotonicity (monotonicity @x130 (= (and $x38 (< n$a m$)) $x140)) @x184 $x186))) |
|
1319 |
(let ((@x145 (monotonicity @x90 @x130 (= (and (< n$ n$a) (< n$a m$)) $x143)))) |
|
1320 |
(let ((@x193 (monotonicity (monotonicity @x120 (= (and (< n$ m$) $x33) $x146)) (monotonicity @x145 @x187 $x189) (= (or (and (< n$ m$) $x33) $x70) $x191)))) |
|
1321 |
(let ((@x151 (monotonicity @x120 @x98 (= (and (< n$ m$) (< m$ n$a)) $x149)))) |
|
1322 |
(let ((@x201 (trans (monotonicity @x151 @x193 (= $x72 (or $x149 $x191))) (rewrite (= (or $x149 $x191) $x197)) (= $x72 $x197)))) |
|
1323 |
(let ((@x205 (mp (asserted $x73) (monotonicity @x201 (= $x73 (not $x197))) (not $x197)))) |
|
1324 |
(let ((@x272 (mp (not-or-elim @x205 $x210) @x271 $x239))) |
|
1325 |
(let (($x273 (not $x38))) |
|
1326 |
(let (($x274 (or $x273 $x127))) |
|
1327 |
(let ((@x280 (monotonicity (rewrite (= $x140 (not $x274))) (= (not $x140) (not (not $x274)))))) |
|
1328 |
(let ((@x284 (trans @x280 (rewrite (= (not (not $x274)) $x274)) (= (not $x140) $x274)))) |
|
1329 |
(let ((@x285 (mp (not-or-elim @x205 (not $x140)) @x284 $x274))) |
|
1330 |
(let (($x286 (not $x40))) |
|
1331 |
(let (($x311 (not $x44))) |
|
1332 |
(let ((@x434 (hypothesis $x81))) |
|
1333 |
(let (($x386 (or $x95 $x80))) |
|
1334 |
(let ((@x392 (monotonicity (rewrite (= $x99 (not $x386))) (= (not $x99) (not (not $x386)))))) |
|
1335 |
(let ((@x396 (trans @x392 (rewrite (= (not (not $x386)) $x386)) (= (not $x99) $x386)))) |
|
1336 |
(let ((@x397 (mp (not-or-elim @x205 (not $x99)) @x396 $x386))) |
|
1337 |
(let (($x246 (not $x33))) |
|
1338 |
(let (($x410 (or $x246 $x80))) |
|
1339 |
(let ((@x416 (monotonicity (rewrite (= $x84 (not $x410))) (= (not $x84) (not (not $x410)))))) |
|
1340 |
(let ((@x420 (trans @x416 (rewrite (= (not (not $x410)) $x410)) (= (not $x84) $x410)))) |
|
1341 |
(let ((@x421 (mp (not-or-elim @x205 (not $x84)) @x420 $x410))) |
|
1342 |
(let ((@x439 ((_ th-lemma arith triangle-eq) (or $x33 $x128 $x94)))) |
|
1343 |
(let ((@x440 (unit-resolution @x439 (unit-resolution @x421 @x434 $x246) (unit-resolution @x397 @x434 $x95) $x128))) |
|
1344 |
(let (($x312 (or $x127 $x311))) |
|
1345 |
(let ((@x318 (monotonicity (rewrite (= $x131 (not $x312))) (= (not $x131) (not (not $x312)))))) |
|
1346 |
(let ((@x322 (trans @x318 (rewrite (= (not (not $x312)) $x312)) (= (not $x131) $x312)))) |
|
1347 |
(let ((@x323 (mp (not-or-elim @x205 (not $x131)) @x322 $x312))) |
|
1348 |
(let ((@x450 (mp (unit-resolution @x323 @x440 $x311) (monotonicity (commutativity (= $x44 $x40)) (= $x311 $x286)) $x286))) |
|
1349 |
(let (($x324 (or $x80 $x118))) |
|
1350 |
(let ((@x330 (monotonicity (rewrite (= $x124 (not $x324))) (= (not $x124) (not (not $x324)))))) |
|
1351 |
(let ((@x334 (trans @x330 (rewrite (= (not (not $x324)) $x324)) (= (not $x124) $x324)))) |
|
1352 |
(let ((@x335 (mp (not-or-elim @x205 (not $x124)) @x334 $x324))) |
|
1353 |
(let (($x299 (or $x127 $x104))) |
|
1354 |
(let ((@x305 (monotonicity (rewrite (= $x134 (not $x299))) (= (not $x134) (not (not $x299)))))) |
|
1355 |
(let ((@x309 (trans @x305 (rewrite (= (not (not $x299)) $x299)) (= (not $x134) $x299)))) |
|
1356 |
(let ((@x310 (mp (not-or-elim @x205 (not $x134)) @x309 $x299))) |
|
1357 |
(let ((@x444 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x40 $x105 $x117)) (unit-resolution @x310 @x440 $x104) (unit-resolution @x335 @x434 $x118) $x40))) |
|
1358 |
(let ((@x459 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x38 $x81 $x87)) (lemma (unit-resolution @x444 @x450 false) $x80) (or $x38 $x87)))) |
|
1359 |
(let ((@x460 (unit-resolution @x459 (unit-resolution @x285 (hypothesis $x128) $x273) (unit-resolution @x272 (hypothesis $x128) $x88) false))) |
|
1360 |
(let ((@x461 (lemma @x460 $x127))) |
|
1361 |
(let (($x254 (or $x118 $x95))) |
|
1362 |
(let ((@x262 (monotonicity (rewrite (= $x149 (not $x254))) (= (not $x149) (not (not $x254)))))) |
|
1363 |
(let ((@x256 (trans @x262 (rewrite (= (not (not $x254)) $x254)) (= (not $x149) $x254)))) |
|
1364 |
(let ((@x257 (mp (not-or-elim @x205 (not $x149)) @x256 $x254))) |
|
1365 |
(let (($x247 (or $x118 $x246))) |
|
1366 |
(let ((@x259 (monotonicity (rewrite (= $x146 (not $x247))) (= (not $x146) (not (not $x247)))))) |
|
1367 |
(let ((@x245 (trans @x259 (rewrite (= (not (not $x247)) $x247)) (= (not $x146) $x247)))) |
|
1368 |
(let ((@x238 (mp (not-or-elim @x205 (not $x146)) @x245 $x247))) |
|
1369 |
(let ((@x465 (unit-resolution @x439 (unit-resolution @x238 (hypothesis $x117) $x246) (unit-resolution @x257 (hypothesis $x117) $x95) @x461 false))) |
|
1370 |
(let (($x336 (not $x48))) |
|
1371 |
(let (($x374 (or $x104 $x336))) |
|
1372 |
(let ((@x380 (monotonicity (rewrite (= $x108 (not $x374))) (= (not $x108) (not (not $x374)))))) |
|
1373 |
(let ((@x384 (trans @x380 (rewrite (= (not (not $x374)) $x374)) (= (not $x108) $x374)))) |
|
1374 |
(let ((@x385 (mp (not-or-elim @x205 (not $x108)) @x384 $x374))) |
|
1375 |
(let ((@x475 (mp (unit-resolution @x385 (hypothesis $x105) $x336) (monotonicity (commutativity (= $x48 $x38)) (= $x336 $x273)) $x273))) |
|
1376 |
(let (($x362 (or $x104 $x88))) |
|
1377 |
(let ((@x368 (monotonicity (rewrite (= $x111 (not $x362))) (= (not $x111) (not (not $x362)))))) |
|
1378 |
(let ((@x372 (trans @x368 (rewrite (= (not (not $x362)) $x362)) (= (not $x111) $x362)))) |
|
1379 |
(let ((@x373 (mp (not-or-elim @x205 (not $x111)) @x372 $x362))) |
|
1380 |
(let ((@x469 (unit-resolution @x459 (unit-resolution @x373 (hypothesis $x105) $x88) $x38))) |
|
1381 |
(let ((@x478 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x40 $x105 $x117)) (lemma (unit-resolution @x469 @x475 false) $x104) (lemma @x465 $x118) $x40))) |
|
1382 |
(let (($x287 (or $x286 $x95))) |
|
1383 |
(let ((@x293 (monotonicity (rewrite (= $x137 (not $x287))) (= (not $x137) (not (not $x287)))))) |
|
1384 |
(let ((@x297 (trans @x293 (rewrite (= (not (not $x287)) $x287)) (= (not $x137) $x287)))) |
|
1385 |
(let ((@x298 (mp (not-or-elim @x205 (not $x137)) @x297 $x287))) |
|
1386 |
(let ((@x488 (mp (unit-resolution @x439 (unit-resolution @x298 @x478 $x95) @x461 $x33) (symm (commutativity (= $x50 $x33)) (= $x33 $x50)) $x50))) |
|
1387 |
(let (($x422 (or (not $x50) $x311))) |
|
1388 |
(let ((@x428 (monotonicity (rewrite (= $x57 (not $x422))) (= (not $x57) (not (not $x422)))))) |
|
1389 |
(let ((@x432 (trans @x428 (rewrite (= (not (not $x422)) $x422)) (= (not $x57) $x422)))) |
|
1390 |
(let ((@x433 (mp (not-or-elim @x205 (not $x57)) @x432 $x422))) |
|
1391 |
(unit-resolution @x433 @x488 (mp @x478 @x480 $x44) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
1392 |
||
57204 | 1393 |
fbc59441c65d9a844da44405d06d138b55c5d187 933 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1394 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1395 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
1396 |
(proof |
56727 | 1397 |
(let (($x91 (= x1$ x10$))) |
1398 |
(let (($x582 (not $x91))) |
|
1399 |
(let (($x92 (= x2$ x11$))) |
|
1400 |
(let ((?x655 (* (- 1) x11$))) |
|
1401 |
(let ((?x656 (+ x2$ ?x655))) |
|
1402 |
(let (($x657 (<= ?x656 0))) |
|
1403 |
(let ((?x235 (* (- 1) x10$))) |
|
1404 |
(let (($x313 (>= x10$ 0))) |
|
1405 |
(let ((?x320 (ite $x313 x10$ ?x235))) |
|
1406 |
(let ((?x331 (* (- 1) ?x320))) |
|
1407 |
(let ((?x662 (+ x10$ ?x331))) |
|
1408 |
(let (($x1382 (<= ?x662 0))) |
|
1409 |
(let (($x1530 (not $x1382))) |
|
1410 |
(let ((?x116 (* (- 1) x3$))) |
|
1411 |
(let (($x463 (>= x3$ 0))) |
|
1412 |
(let ((?x470 (ite $x463 x3$ ?x116))) |
|
1413 |
(let ((?x481 (* (- 1) ?x470))) |
|
1414 |
(let ((?x680 (+ x3$ ?x481))) |
|
1415 |
(let (($x672 (>= ?x680 0))) |
|
1416 |
(let (($x588 (= x3$ ?x470))) |
|
1417 |
(let (($x766 (not $x657))) |
|
1418 |
(let ((@x1256 (hypothesis $x766))) |
|
1419 |
(let ((?x676 (+ ?x116 ?x481))) |
|
1420 |
(let (($x1697 (>= ?x676 0))) |
|
1421 |
(let (($x589 (= ?x116 ?x470))) |
|
1422 |
(let (($x464 (not $x463))) |
|
1423 |
(let ((@x688 (hypothesis $x464))) |
|
1424 |
(let ((@x593 (def-axiom (or $x463 $x589)))) |
|
1425 |
(let ((@x1779 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x589) $x1697)) (hypothesis $x589) (hypothesis (not $x1697)) false))) |
|
1426 |
(let ((@x1780 (lemma @x1779 (or (not $x589) $x1697)))) |
|
1427 |
(let ((?x133 (* (- 1) x4$))) |
|
1428 |
(let (($x438 (>= x4$ 0))) |
|
1429 |
(let ((?x445 (ite $x438 x4$ ?x133))) |
|
1430 |
(let ((?x456 (* (- 1) ?x445))) |
|
1431 |
(let ((?x674 (+ ?x133 ?x456))) |
|
1432 |
(let (($x675 (<= ?x674 0))) |
|
1433 |
(let ((?x677 (+ x4$ ?x456))) |
|
1434 |
(let (($x678 (<= ?x677 0))) |
|
1435 |
(let (($x784 (not $x678))) |
|
1436 |
(let (($x745 (not $x675))) |
|
1437 |
(let ((@x1834 (hypothesis $x745))) |
|
1438 |
(let (($x597 (= ?x133 ?x445))) |
|
1439 |
(let (($x738 (not $x597))) |
|
1440 |
(let ((@x740 ((_ th-lemma arith triangle-eq) (or $x738 $x675)))) |
|
1441 |
(let ((@x1837 (lemma (unit-resolution @x740 (hypothesis $x597) @x1834 false) (or $x738 $x675)))) |
|
1442 |
(let ((@x601 (def-axiom (or $x438 $x597)))) |
|
1443 |
(let ((@x1840 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x675 (not $x438) $x784)) (unit-resolution @x601 (unit-resolution @x1837 @x1834 $x738) $x438) @x1834 $x784))) |
|
1444 |
(let (($x596 (= x4$ ?x445))) |
|
1445 |
(let ((@x599 (def-axiom (or (not $x438) $x596)))) |
|
1446 |
(let ((@x1841 (unit-resolution @x599 (unit-resolution @x601 (unit-resolution @x1837 @x1834 $x738) $x438) $x596))) |
|
1447 |
(let ((@x693 ((_ th-lemma arith triangle-eq) (or (not $x596) $x678)))) |
|
1448 |
(let ((@x1843 (lemma (unit-resolution @x693 @x1841 @x1840 false) $x675))) |
|
1449 |
(let ((?x218 (* (- 1) x9$))) |
|
1450 |
(let (($x288 (>= x9$ 0))) |
|
1451 |
(let ((?x295 (ite $x288 x9$ ?x218))) |
|
1452 |
(let ((?x306 (* (- 1) ?x295))) |
|
1453 |
(let ((?x659 (+ x9$ ?x306))) |
|
1454 |
(let (($x660 (<= ?x659 0))) |
|
1455 |
(let (($x636 (= x9$ ?x295))) |
|
1456 |
(let (($x338 (>= x8$ 0))) |
|
1457 |
(let (($x339 (not $x338))) |
|
1458 |
(let (($x661 (>= ?x659 0))) |
|
1459 |
(let (($x733 (not $x661))) |
|
1460 |
(let ((?x201 (* (- 1) x8$))) |
|
1461 |
(let ((?x345 (ite $x338 x8$ ?x201))) |
|
1462 |
(let ((?x356 (* (- 1) ?x345))) |
|
1463 |
(let ((?x665 (+ x8$ ?x356))) |
|
1464 |
(let (($x667 (>= ?x665 0))) |
|
1465 |
(let (($x628 (= x8$ ?x345))) |
|
1466 |
(let (($x439 (not $x438))) |
|
1467 |
(let ((@x763 (hypothesis $x439))) |
|
1468 |
(let ((@x1701 (hypothesis $x339))) |
|
1469 |
(let (($x289 (not $x288))) |
|
1470 |
(let ((@x1371 (hypothesis $x289))) |
|
1471 |
(let ((?x666 (+ ?x201 ?x356))) |
|
1472 |
(let (($x875 (<= ?x666 0))) |
|
1473 |
(let (($x629 (= ?x201 ?x345))) |
|
1474 |
(let ((@x633 (def-axiom (or $x338 $x629)))) |
|
1475 |
(let (($x1626 (not $x875))) |
|
1476 |
(let ((@x1635 (hypothesis $x1626))) |
|
1477 |
(let ((@x1640 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x629) $x875)) (hypothesis $x629) @x1635 false))) |
|
1478 |
(let ((@x1641 (lemma @x1640 (or (not $x629) $x875)))) |
|
1479 |
(let ((@x1738 (unit-resolution @x1641 (unit-resolution @x633 @x1701 $x629) $x875))) |
|
1480 |
(let ((?x150 (* (- 1) x5$))) |
|
1481 |
(let (($x413 (>= x5$ 0))) |
|
1482 |
(let ((?x420 (ite $x413 x5$ ?x150))) |
|
1483 |
(let ((?x431 (* (- 1) ?x420))) |
|
1484 |
(let ((?x757 (+ x5$ ?x431))) |
|
1485 |
(let (($x776 (>= ?x757 0))) |
|
1486 |
(let (($x604 (= x5$ ?x420))) |
|
1487 |
(let (($x644 (= x10$ ?x320))) |
|
1488 |
(let (($x645 (= ?x235 ?x320))) |
|
1489 |
(let (($x1136 (not $x645))) |
|
1490 |
(let ((?x1104 (+ ?x235 ?x331))) |
|
1491 |
(let (($x1250 (<= ?x1104 0))) |
|
1492 |
(let (($x1262 (not $x1250))) |
|
1493 |
(let ((?x1357 (+ ?x218 ?x306))) |
|
1494 |
(let (($x1370 (>= ?x1357 0))) |
|
1495 |
(let (($x637 (= ?x218 ?x295))) |
|
1496 |
(let (($x414 (not $x413))) |
|
1497 |
(let ((@x844 (hypothesis $x414))) |
|
1498 |
(let ((?x167 (* (- 1) x6$))) |
|
1499 |
(let (($x388 (>= x6$ 0))) |
|
1500 |
(let ((?x395 (ite $x388 x6$ ?x167))) |
|
1501 |
(let ((?x406 (* (- 1) ?x395))) |
|
1502 |
(let ((?x671 (+ x6$ ?x406))) |
|
1503 |
(let (($x673 (>= ?x671 0))) |
|
1504 |
(let (($x612 (= x6$ ?x395))) |
|
1505 |
(let ((@x1079 (hypothesis $x288))) |
|
1506 |
(let (($x860 (not $x667))) |
|
1507 |
(let ((?x931 (+ ?x150 ?x431))) |
|
1508 |
(let (($x933 (<= ?x931 0))) |
|
1509 |
(let (($x605 (= ?x150 ?x420))) |
|
1510 |
(let ((@x1000 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x605) $x933)) (unit-resolution (def-axiom (or $x413 $x605)) @x844 $x605) $x933))) |
|
1511 |
(let ((?x432 (+ x4$ x6$ ?x431))) |
|
1512 |
(let (($x611 (>= ?x432 0))) |
|
1513 |
(let (($x433 (= ?x432 0))) |
|
1514 |
(let ((?x332 (+ x9$ x11$ ?x331))) |
|
1515 |
(let (($x333 (= ?x332 0))) |
|
1516 |
(let ((?x307 (+ x8$ x10$ ?x306))) |
|
1517 |
(let (($x308 (= ?x307 0))) |
|
1518 |
(let ((?x357 (+ x7$ x9$ ?x356))) |
|
1519 |
(let (($x358 (= ?x357 0))) |
|
1520 |
(let ((?x184 (* (- 1) x7$))) |
|
1521 |
(let (($x363 (>= x7$ 0))) |
|
1522 |
(let ((?x370 (ite $x363 x7$ ?x184))) |
|
1523 |
(let ((?x381 (* (- 1) ?x370))) |
|
1524 |
(let ((?x382 (+ x6$ x8$ ?x381))) |
|
1525 |
(let (($x383 (= ?x382 0))) |
|
1526 |
(let ((?x407 (+ x5$ x7$ ?x406))) |
|
1527 |
(let (($x408 (= ?x407 0))) |
|
1528 |
(let ((?x457 (+ x3$ x5$ ?x456))) |
|
1529 |
(let (($x458 (= ?x457 0))) |
|
1530 |
(let ((?x482 (+ x2$ x4$ ?x481))) |
|
1531 |
(let (($x483 (= ?x482 0))) |
|
1532 |
(let ((?x98 (* (- 1) x2$))) |
|
1533 |
(let (($x488 (>= x2$ 0))) |
|
1534 |
(let ((?x495 (ite $x488 x2$ ?x98))) |
|
1535 |
(let ((?x506 (* (- 1) ?x495))) |
|
1536 |
(let ((?x507 (+ x3$ x1$ ?x506))) |
|
1537 |
(let (($x508 (= ?x507 0))) |
|
1538 |
(let (($x537 (and $x508 $x483 $x458 $x433 $x408 $x383 $x358 $x308 $x333))) |
|
1539 |
(let (($x548 (not (or (not $x537) (and $x91 $x92))))) |
|
1540 |
(let (($x93 (and $x91 $x92))) |
|
1541 |
(let (($x83 (and (= x10$ (- (ite (< x9$ 0) (- x9$) x9$) x8$)) (= x11$ (- (ite (< x10$ 0) (- x10$) x10$) x9$))))) |
|
1542 |
(let (($x85 (and (= x8$ (- (ite (< x7$ 0) (- x7$) x7$) x6$)) (and (= x9$ (- (ite (< x8$ 0) (- x8$) x8$) x7$)) $x83)))) |
|
1543 |
(let (($x87 (and (= x6$ (- (ite (< x5$ 0) (- x5$) x5$) x4$)) (and (= x7$ (- (ite (< x6$ 0) (- x6$) x6$) x5$)) $x85)))) |
|
1544 |
(let (($x89 (and (= x4$ (- (ite (< x3$ 0) (- x3$) x3$) x2$)) (and (= x5$ (- (ite (< x4$ 0) (- x4$) x4$) x3$)) $x87)))) |
|
1545 |
(let (($x94 (=> (and (= x3$ (- (ite (< x2$ 0) (- x2$) x2$) x1$)) $x89) $x93))) |
|
1546 |
(let (($x95 (not $x94))) |
|
1547 |
(let (($x78 (< x10$ 0))) |
|
1548 |
(let ((?x238 (ite $x78 ?x235 x10$))) |
|
1549 |
(let ((?x244 (+ ?x218 ?x238))) |
|
1550 |
(let (($x249 (= x11$ ?x244))) |
|
1551 |
(let (($x72 (< x9$ 0))) |
|
1552 |
(let ((?x221 (ite $x72 ?x218 x9$))) |
|
1553 |
(let ((?x227 (+ ?x201 ?x221))) |
|
1554 |
(let (($x232 (= x10$ ?x227))) |
|
1555 |
(let (($x252 (and $x232 $x249))) |
|
1556 |
(let (($x66 (< x8$ 0))) |
|
1557 |
(let ((?x204 (ite $x66 ?x201 x8$))) |
|
1558 |
(let ((?x210 (+ ?x184 ?x204))) |
|
1559 |
(let (($x215 (= x9$ ?x210))) |
|
1560 |
(let (($x255 (and $x215 $x252))) |
|
1561 |
(let (($x60 (< x7$ 0))) |
|
1562 |
(let ((?x187 (ite $x60 ?x184 x7$))) |
|
1563 |
(let ((?x193 (+ ?x167 ?x187))) |
|
1564 |
(let (($x198 (= x8$ ?x193))) |
|
1565 |
(let (($x258 (and $x198 $x255))) |
|
1566 |
(let (($x54 (< x6$ 0))) |
|
1567 |
(let ((?x170 (ite $x54 ?x167 x6$))) |
|
1568 |
(let ((?x176 (+ ?x150 ?x170))) |
|
1569 |
(let (($x181 (= x7$ ?x176))) |
|
1570 |
(let (($x261 (and $x181 $x258))) |
|
1571 |
(let (($x48 (< x5$ 0))) |
|
1572 |
(let ((?x153 (ite $x48 ?x150 x5$))) |
|
1573 |
(let ((?x159 (+ ?x133 ?x153))) |
|
1574 |
(let (($x164 (= x6$ ?x159))) |
|
1575 |
(let (($x264 (and $x164 $x261))) |
|
1576 |
(let (($x42 (< x4$ 0))) |
|
1577 |
(let ((?x136 (ite $x42 ?x133 x4$))) |
|
1578 |
(let ((?x142 (+ ?x116 ?x136))) |
|
1579 |
(let (($x147 (= x5$ ?x142))) |
|
1580 |
(let (($x267 (and $x147 $x264))) |
|
1581 |
(let (($x36 (< x3$ 0))) |
|
1582 |
(let ((?x119 (ite $x36 ?x116 x3$))) |
|
1583 |
(let ((?x125 (+ ?x98 ?x119))) |
|
1584 |
(let (($x130 (= x4$ ?x125))) |
|
1585 |
(let (($x270 (and $x130 $x267))) |
|
1586 |
(let (($x29 (< x2$ 0))) |
|
1587 |
(let ((?x101 (ite $x29 ?x98 x2$))) |
|
1588 |
(let ((?x108 (+ (* (- 1) x1$) ?x101))) |
|
1589 |
(let (($x113 (= x3$ ?x108))) |
|
1590 |
(let (($x273 (and $x113 $x270))) |
|
1591 |
(let (($x280 (or (not $x273) $x93))) |
|
1592 |
(let (($x528 (and $x458 (and $x433 (and $x408 (and $x383 (and $x358 (and $x308 $x333)))))))) |
|
1593 |
(let (($x526 (= $x264 (and $x433 (and $x408 (and $x383 (and $x358 (and $x308 $x333)))))))) |
|
1594 |
(let ((@x319 (monotonicity (rewrite (= $x78 (not $x313))) (= ?x238 (ite (not $x313) ?x235 x10$))))) |
|
1595 |
(let ((@x324 (trans @x319 (rewrite (= (ite (not $x313) ?x235 x10$) ?x320)) (= ?x238 ?x320)))) |
|
1596 |
(let ((@x330 (monotonicity (monotonicity @x324 (= ?x244 (+ ?x218 ?x320))) (= $x249 (= x11$ (+ ?x218 ?x320)))))) |
|
1597 |
(let ((@x337 (trans @x330 (rewrite (= (= x11$ (+ ?x218 ?x320)) $x333)) (= $x249 $x333)))) |
|
1598 |
(let ((@x294 (monotonicity (rewrite (= $x72 $x289)) (= ?x221 (ite $x289 ?x218 x9$))))) |
|
1599 |
(let ((@x302 (monotonicity (trans @x294 (rewrite (= (ite $x289 ?x218 x9$) ?x295)) (= ?x221 ?x295)) (= ?x227 (+ ?x201 ?x295))))) |
|
1600 |
(let ((@x312 (trans (monotonicity @x302 (= $x232 (= x10$ (+ ?x201 ?x295)))) (rewrite (= (= x10$ (+ ?x201 ?x295)) $x308)) (= $x232 $x308)))) |
|
1601 |
(let ((@x344 (monotonicity (rewrite (= $x66 $x339)) (= ?x204 (ite $x339 ?x201 x8$))))) |
|
1602 |
(let ((@x352 (monotonicity (trans @x344 (rewrite (= (ite $x339 ?x201 x8$) ?x345)) (= ?x204 ?x345)) (= ?x210 (+ ?x184 ?x345))))) |
|
1603 |
(let ((@x362 (trans (monotonicity @x352 (= $x215 (= x9$ (+ ?x184 ?x345)))) (rewrite (= (= x9$ (+ ?x184 ?x345)) $x358)) (= $x215 $x358)))) |
|
1604 |
(let ((@x518 (monotonicity @x362 (monotonicity @x312 @x337 (= $x252 (and $x308 $x333))) (= $x255 (and $x358 (and $x308 $x333)))))) |
|
1605 |
(let ((@x369 (monotonicity (rewrite (= $x60 (not $x363))) (= ?x187 (ite (not $x363) ?x184 x7$))))) |
|
1606 |
(let ((@x374 (trans @x369 (rewrite (= (ite (not $x363) ?x184 x7$) ?x370)) (= ?x187 ?x370)))) |
|
1607 |
(let ((@x380 (monotonicity (monotonicity @x374 (= ?x193 (+ ?x167 ?x370))) (= $x198 (= x8$ (+ ?x167 ?x370)))))) |
|
1608 |
(let ((@x387 (trans @x380 (rewrite (= (= x8$ (+ ?x167 ?x370)) $x383)) (= $x198 $x383)))) |
|
1609 |
(let ((@x521 (monotonicity @x387 @x518 (= $x258 (and $x383 (and $x358 (and $x308 $x333))))))) |
|
1610 |
(let ((@x394 (monotonicity (rewrite (= $x54 (not $x388))) (= ?x170 (ite (not $x388) ?x167 x6$))))) |
|
1611 |
(let ((@x399 (trans @x394 (rewrite (= (ite (not $x388) ?x167 x6$) ?x395)) (= ?x170 ?x395)))) |
|
1612 |
(let ((@x405 (monotonicity (monotonicity @x399 (= ?x176 (+ ?x150 ?x395))) (= $x181 (= x7$ (+ ?x150 ?x395)))))) |
|
1613 |
(let ((@x412 (trans @x405 (rewrite (= (= x7$ (+ ?x150 ?x395)) $x408)) (= $x181 $x408)))) |
|
1614 |
(let ((@x524 (monotonicity @x412 @x521 (= $x261 (and $x408 (and $x383 (and $x358 (and $x308 $x333)))))))) |
|
1615 |
(let ((@x419 (monotonicity (rewrite (= $x48 $x414)) (= ?x153 (ite $x414 ?x150 x5$))))) |
|
1616 |
(let ((@x427 (monotonicity (trans @x419 (rewrite (= (ite $x414 ?x150 x5$) ?x420)) (= ?x153 ?x420)) (= ?x159 (+ ?x133 ?x420))))) |
|
1617 |
(let ((@x437 (trans (monotonicity @x427 (= $x164 (= x6$ (+ ?x133 ?x420)))) (rewrite (= (= x6$ (+ ?x133 ?x420)) $x433)) (= $x164 $x433)))) |
|
1618 |
(let ((@x444 (monotonicity (rewrite (= $x42 $x439)) (= ?x136 (ite $x439 ?x133 x4$))))) |
|
1619 |
(let ((@x452 (monotonicity (trans @x444 (rewrite (= (ite $x439 ?x133 x4$) ?x445)) (= ?x136 ?x445)) (= ?x142 (+ ?x116 ?x445))))) |
|
1620 |
(let ((@x462 (trans (monotonicity @x452 (= $x147 (= x5$ (+ ?x116 ?x445)))) (rewrite (= (= x5$ (+ ?x116 ?x445)) $x458)) (= $x147 $x458)))) |
|
1621 |
(let ((@x469 (monotonicity (rewrite (= $x36 $x464)) (= ?x119 (ite $x464 ?x116 x3$))))) |
|
1622 |
(let ((@x477 (monotonicity (trans @x469 (rewrite (= (ite $x464 ?x116 x3$) ?x470)) (= ?x119 ?x470)) (= ?x125 (+ ?x98 ?x470))))) |
|
1623 |
(let ((@x487 (trans (monotonicity @x477 (= $x130 (= x4$ (+ ?x98 ?x470)))) (rewrite (= (= x4$ (+ ?x98 ?x470)) $x483)) (= $x130 $x483)))) |
|
1624 |
(let ((@x533 (monotonicity @x487 (monotonicity @x462 (monotonicity @x437 @x524 $x526) (= $x267 $x528)) (= $x270 (and $x483 $x528))))) |
|
1625 |
(let ((@x494 (monotonicity (rewrite (= $x29 (not $x488))) (= ?x101 (ite (not $x488) ?x98 x2$))))) |
|
1626 |
(let ((@x499 (trans @x494 (rewrite (= (ite (not $x488) ?x98 x2$) ?x495)) (= ?x101 ?x495)))) |
|
1627 |
(let ((@x505 (monotonicity (monotonicity @x499 (= ?x108 (+ (* (- 1) x1$) ?x495))) (= $x113 (= x3$ (+ (* (- 1) x1$) ?x495)))))) |
|
1628 |
(let ((@x512 (trans @x505 (rewrite (= (= x3$ (+ (* (- 1) x1$) ?x495)) $x508)) (= $x113 $x508)))) |
|
1629 |
(let ((@x541 (trans (monotonicity @x512 @x533 (= $x273 (and $x508 (and $x483 $x528)))) (rewrite (= (and $x508 (and $x483 $x528)) $x537)) (= $x273 $x537)))) |
|
1630 |
(let ((@x547 (monotonicity (monotonicity @x541 (= (not $x273) (not $x537))) (= $x280 (or (not $x537) $x93))))) |
|
1631 |
(let ((@x240 (monotonicity (rewrite (= (- x10$) ?x235)) (= (ite $x78 (- x10$) x10$) ?x238)))) |
|
1632 |
(let ((@x243 (monotonicity @x240 (= (- (ite $x78 (- x10$) x10$) x9$) (- ?x238 x9$))))) |
|
1633 |
(let ((@x248 (trans @x243 (rewrite (= (- ?x238 x9$) ?x244)) (= (- (ite $x78 (- x10$) x10$) x9$) ?x244)))) |
|
1634 |
(let ((@x251 (monotonicity @x248 (= (= x11$ (- (ite $x78 (- x10$) x10$) x9$)) $x249)))) |
|
1635 |
(let ((@x223 (monotonicity (rewrite (= (- x9$) ?x218)) (= (ite $x72 (- x9$) x9$) ?x221)))) |
|
1636 |
(let ((@x226 (monotonicity @x223 (= (- (ite $x72 (- x9$) x9$) x8$) (- ?x221 x8$))))) |
|
1637 |
(let ((@x231 (trans @x226 (rewrite (= (- ?x221 x8$) ?x227)) (= (- (ite $x72 (- x9$) x9$) x8$) ?x227)))) |
|
1638 |
(let ((@x234 (monotonicity @x231 (= (= x10$ (- (ite $x72 (- x9$) x9$) x8$)) $x232)))) |
|
1639 |
(let ((@x206 (monotonicity (rewrite (= (- x8$) ?x201)) (= (ite $x66 (- x8$) x8$) ?x204)))) |
|
1640 |
(let ((@x209 (monotonicity @x206 (= (- (ite $x66 (- x8$) x8$) x7$) (- ?x204 x7$))))) |
|
1641 |
(let ((@x214 (trans @x209 (rewrite (= (- ?x204 x7$) ?x210)) (= (- (ite $x66 (- x8$) x8$) x7$) ?x210)))) |
|
1642 |
(let ((@x217 (monotonicity @x214 (= (= x9$ (- (ite $x66 (- x8$) x8$) x7$)) $x215)))) |
|
1643 |
(let ((@x257 (monotonicity @x217 (monotonicity @x234 @x251 (= $x83 $x252)) (= (and (= x9$ (- (ite $x66 (- x8$) x8$) x7$)) $x83) $x255)))) |
|
1644 |
(let ((@x189 (monotonicity (rewrite (= (- x7$) ?x184)) (= (ite $x60 (- x7$) x7$) ?x187)))) |
|
1645 |
(let ((@x192 (monotonicity @x189 (= (- (ite $x60 (- x7$) x7$) x6$) (- ?x187 x6$))))) |
|
1646 |
(let ((@x197 (trans @x192 (rewrite (= (- ?x187 x6$) ?x193)) (= (- (ite $x60 (- x7$) x7$) x6$) ?x193)))) |
|
1647 |
(let ((@x200 (monotonicity @x197 (= (= x8$ (- (ite $x60 (- x7$) x7$) x6$)) $x198)))) |
|
1648 |
(let ((@x172 (monotonicity (rewrite (= (- x6$) ?x167)) (= (ite $x54 (- x6$) x6$) ?x170)))) |
|
1649 |
(let ((@x175 (monotonicity @x172 (= (- (ite $x54 (- x6$) x6$) x5$) (- ?x170 x5$))))) |
|
1650 |
(let ((@x180 (trans @x175 (rewrite (= (- ?x170 x5$) ?x176)) (= (- (ite $x54 (- x6$) x6$) x5$) ?x176)))) |
|
1651 |
(let ((@x183 (monotonicity @x180 (= (= x7$ (- (ite $x54 (- x6$) x6$) x5$)) $x181)))) |
|
1652 |
(let ((@x263 (monotonicity @x183 (monotonicity @x200 @x257 (= $x85 $x258)) (= (and (= x7$ (- (ite $x54 (- x6$) x6$) x5$)) $x85) $x261)))) |
|
1653 |
(let ((@x155 (monotonicity (rewrite (= (- x5$) ?x150)) (= (ite $x48 (- x5$) x5$) ?x153)))) |
|
1654 |
(let ((@x158 (monotonicity @x155 (= (- (ite $x48 (- x5$) x5$) x4$) (- ?x153 x4$))))) |
|
1655 |
(let ((@x163 (trans @x158 (rewrite (= (- ?x153 x4$) ?x159)) (= (- (ite $x48 (- x5$) x5$) x4$) ?x159)))) |
|
1656 |
(let ((@x166 (monotonicity @x163 (= (= x6$ (- (ite $x48 (- x5$) x5$) x4$)) $x164)))) |
|
1657 |
(let ((@x138 (monotonicity (rewrite (= (- x4$) ?x133)) (= (ite $x42 (- x4$) x4$) ?x136)))) |
|
1658 |
(let ((@x141 (monotonicity @x138 (= (- (ite $x42 (- x4$) x4$) x3$) (- ?x136 x3$))))) |
|
1659 |
(let ((@x146 (trans @x141 (rewrite (= (- ?x136 x3$) ?x142)) (= (- (ite $x42 (- x4$) x4$) x3$) ?x142)))) |
|
1660 |
(let ((@x149 (monotonicity @x146 (= (= x5$ (- (ite $x42 (- x4$) x4$) x3$)) $x147)))) |
|
1661 |
(let ((@x269 (monotonicity @x149 (monotonicity @x166 @x263 (= $x87 $x264)) (= (and (= x5$ (- (ite $x42 (- x4$) x4$) x3$)) $x87) $x267)))) |
|
1662 |
(let ((@x121 (monotonicity (rewrite (= (- x3$) ?x116)) (= (ite $x36 (- x3$) x3$) ?x119)))) |
|
1663 |
(let ((@x124 (monotonicity @x121 (= (- (ite $x36 (- x3$) x3$) x2$) (- ?x119 x2$))))) |
|
1664 |
(let ((@x129 (trans @x124 (rewrite (= (- ?x119 x2$) ?x125)) (= (- (ite $x36 (- x3$) x3$) x2$) ?x125)))) |
|
1665 |
(let ((@x132 (monotonicity @x129 (= (= x4$ (- (ite $x36 (- x3$) x3$) x2$)) $x130)))) |
|
1666 |
(let ((@x103 (monotonicity (rewrite (= (- x2$) ?x98)) (= (ite $x29 (- x2$) x2$) ?x101)))) |
|
1667 |
(let ((@x106 (monotonicity @x103 (= (- (ite $x29 (- x2$) x2$) x1$) (- ?x101 x1$))))) |
|
1668 |
(let ((@x112 (trans @x106 (rewrite (= (- ?x101 x1$) ?x108)) (= (- (ite $x29 (- x2$) x2$) x1$) ?x108)))) |
|
1669 |
(let ((@x115 (monotonicity @x112 (= (= x3$ (- (ite $x29 (- x2$) x2$) x1$)) $x113)))) |
|
1670 |
(let ((@x275 (monotonicity @x115 (monotonicity @x132 @x269 (= $x89 $x270)) (= (and (= x3$ (- (ite $x29 (- x2$) x2$) x1$)) $x89) $x273)))) |
|
1671 |
(let ((@x284 (trans (monotonicity @x275 (= $x94 (=> $x273 $x93))) (rewrite (= (=> $x273 $x93) $x280)) (= $x94 $x280)))) |
|
1672 |
(let ((@x552 (trans (monotonicity @x284 (= $x95 (not $x280))) (monotonicity @x547 (= (not $x280) $x548)) (= $x95 $x548)))) |
|
1673 |
(let ((@x554 (not-or-elim (mp (asserted $x95) @x552 $x548) $x537))) |
|
1674 |
(let ((@x558 (and-elim @x554 $x433))) |
|
1675 |
(let ((@x799 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x433) $x611)) @x558 $x611))) |
|
1676 |
(let (($x626 (<= ?x382 0))) |
|
1677 |
(let ((@x560 (and-elim @x554 $x383))) |
|
1678 |
(let ((@x703 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x383) $x626)) @x560 $x626))) |
|
1679 |
(let ((?x668 (+ x7$ ?x381))) |
|
1680 |
(let (($x670 (>= ?x668 0))) |
|
1681 |
(let (($x620 (= x7$ ?x370))) |
|
1682 |
(let ((?x777 (+ ?x167 ?x406))) |
|
1683 |
(let (($x780 (<= ?x777 0))) |
|
1684 |
(let (($x613 (= ?x167 ?x395))) |
|
1685 |
(let (($x389 (not $x388))) |
|
1686 |
(let (($x364 (not $x363))) |
|
1687 |
(let ((@x1027 (hypothesis $x364))) |
|
1688 |
(let ((@x1026 (hypothesis $x388))) |
|
1689 |
(let (($x619 (>= ?x407 0))) |
|
1690 |
(let ((@x559 (and-elim @x554 $x408))) |
|
1691 |
(let ((@x853 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x408) $x619)) @x559 $x619))) |
|
1692 |
(let (($x936 (<= ?x671 0))) |
|
1693 |
(let ((@x950 ((_ th-lemma arith triangle-eq) (or (not $x612) $x936)))) |
|
1694 |
(let ((@x1029 (unit-resolution @x950 (unit-resolution (def-axiom (or $x389 $x612)) @x1026 $x612) $x936))) |
|
1695 |
(let ((@x1032 (lemma ((_ th-lemma arith farkas 1 1 1 1 1) @x1029 @x853 @x1027 @x844 @x1026 false) (or $x363 $x413 $x389)))) |
|
1696 |
(let ((@x617 (def-axiom (or $x388 $x613)))) |
|
1697 |
(let ((@x1064 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x613) $x780)) (unit-resolution @x617 (unit-resolution @x1032 @x1027 @x844 $x389) $x613) $x780))) |
|
1698 |
(let ((@x1065 ((_ th-lemma arith farkas 1 1 1 1 1) (unit-resolution @x1032 @x1027 @x844 $x389) @x853 @x1027 @x844 @x1064 false))) |
|
1699 |
(let ((@x623 (def-axiom (or $x364 $x620)))) |
|
1700 |
(let ((@x1088 (unit-resolution @x623 (unit-resolution (lemma @x1065 (or $x363 $x413)) @x844 $x363) $x620))) |
|
1701 |
(let ((@x926 ((_ th-lemma arith triangle-eq) (or (not $x620) $x670)))) |
|
1702 |
(let ((@x1089 (unit-resolution @x926 @x1088 $x670))) |
|
1703 |
(let ((@x858 (hypothesis $x667))) |
|
1704 |
(let (($x634 (<= ?x357 0))) |
|
1705 |
(let ((@x561 (and-elim @x554 $x358))) |
|
1706 |
(let ((@x857 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x358) $x634)) @x561 $x634))) |
|
1707 |
(let ((@x1105 (lemma ((_ th-lemma arith farkas 1 1 1 1 1 1 1 1 1) @x857 @x858 @x1089 @x703 @x763 @x799 @x1000 @x844 @x1079 false) (or $x438 $x860 $x413 $x289)))) |
|
1708 |
(let (($x840 (<= ?x668 0))) |
|
1709 |
(let ((@x865 ((_ th-lemma arith triangle-eq) (or (not $x620) $x840)))) |
|
1710 |
(let ((@x1090 (unit-resolution @x865 @x1088 $x840))) |
|
1711 |
(let (($x627 (>= ?x382 0))) |
|
1712 |
(let ((@x835 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x383) $x627)) @x560 $x627))) |
|
1713 |
(let ((@x1242 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x438 (not $x611) $x388 (not $x933) $x413)) @x763 @x799 @x1000 @x844 $x388))) |
|
1714 |
(let ((@x615 (def-axiom (or $x389 $x612)))) |
|
1715 |
(let ((@x1095 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x338 (not $x840) (not $x627) (not $x936) (not $x619) $x413)))) |
|
1716 |
(let ((@x1245 (unit-resolution @x1095 (unit-resolution @x950 (unit-resolution @x615 @x1242 $x612) $x936) @x835 @x844 @x1090 @x853 $x338))) |
|
1717 |
(let ((@x631 (def-axiom (or $x339 $x628)))) |
|
1718 |
(let ((@x1132 ((_ th-lemma arith triangle-eq) (or (not $x628) $x667)))) |
|
1719 |
(let ((@x1247 (unit-resolution @x1132 (unit-resolution @x631 @x1245 $x628) (unit-resolution @x1105 @x763 @x844 @x1079 $x860) false))) |
|
1720 |
(let ((@x1328 (unit-resolution @x599 (unit-resolution (lemma @x1247 (or $x438 $x413 $x289)) @x844 @x1079 $x438) $x596))) |
|
1721 |
(let ((@x1147 ((_ th-lemma arith triangle-eq) (or (not $x636) $x661)))) |
|
1722 |
(let ((@x1148 (unit-resolution @x1147 (unit-resolution (def-axiom (or $x289 $x636)) @x1079 $x636) $x661))) |
|
1723 |
(let ((@x1152 ((_ th-lemma arith triangle-eq) (or (not $x636) $x660)))) |
|
1724 |
(let ((@x1153 (unit-resolution @x1152 (unit-resolution (def-axiom (or $x289 $x636)) @x1079 $x636) $x660))) |
|
1725 |
(let (($x658 (>= ?x656 0))) |
|
1726 |
(let (($x706 (not $x673))) |
|
1727 |
(let (($x663 (<= ?x665 0))) |
|
1728 |
(let (($x643 (>= ?x307 0))) |
|
1729 |
(let ((@x562 (and-elim @x554 $x308))) |
|
1730 |
(let ((@x1126 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x308) $x643)) @x562 $x643))) |
|
1731 |
(let (($x314 (not $x313))) |
|
1732 |
(let (($x1165 (not $x644))) |
|
1733 |
(let (($x664 (>= ?x662 0))) |
|
1734 |
(let (($x734 (not $x664))) |
|
1735 |
(let (($x710 (not $x658))) |
|
1736 |
(let ((@x711 (hypothesis $x710))) |
|
1737 |
(let ((@x731 (hypothesis $x661))) |
|
1738 |
(let ((@x716 (hypothesis $x664))) |
|
1739 |
(let (($x847 (not $x613))) |
|
1740 |
(let (($x839 (>= ?x777 0))) |
|
1741 |
(let (($x872 (not $x839))) |
|
1742 |
(let (($x681 (<= ?x680 0))) |
|
1743 |
(let (($x621 (= ?x184 ?x370))) |
|
1744 |
(let (($x823 (not $x621))) |
|
1745 |
(let ((?x778 (+ ?x184 ?x381))) |
|
1746 |
(let (($x779 (<= ?x778 0))) |
|
1747 |
(let (($x902 (not $x779))) |
|
1748 |
(let (($x669 (>= ?x677 0))) |
|
1749 |
(let (($x679 (<= ?x676 0))) |
|
1750 |
(let ((@x762 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x589) $x679)) (unit-resolution @x593 @x688 $x589) $x679))) |
|
1751 |
(let ((@x941 (unit-resolution @x740 (unit-resolution @x601 @x763 $x597) $x675))) |
|
1752 |
(let ((@x869 (hypothesis $x681))) |
|
1753 |
(let ((@x868 (hypothesis $x678))) |
|
1754 |
(let ((@x867 (hypothesis $x839))) |
|
1755 |
(let ((@x866 (unit-resolution @x865 (unit-resolution @x623 (hypothesis $x363) $x620) $x840))) |
|
1756 |
(let ((@x841 (hypothesis $x363))) |
|
1757 |
(let (($x618 (<= ?x407 0))) |
|
1758 |
(let ((@x698 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x408) $x618)) @x559 $x618))) |
|
1759 |
(let (($x603 (>= ?x457 0))) |
|
1760 |
(let ((@x557 (and-elim @x554 $x458))) |
|
1761 |
(let ((@x687 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x458) $x603)) @x557 $x603))) |
|
1762 |
(let (($x650 (<= ?x332 0))) |
|
1763 |
(let ((@x563 (and-elim @x554 $x333))) |
|
1764 |
(let ((@x715 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x333) $x650)) @x563 $x650))) |
|
1765 |
(let (($x595 (>= ?x482 0))) |
|
1766 |
(let ((@x556 (and-elim @x554 $x483))) |
|
1767 |
(let ((@x720 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x483) $x595)) @x556 $x595))) |
|
1768 |
(let (($x642 (<= ?x307 0))) |
|
1769 |
(let ((@x730 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x308) $x642)) @x562 $x642))) |
|
1770 |
(let ((@x870 ((_ th-lemma arith farkas -1 1 -1 1 -1 -1 1 1 -1 1 1 -1 -2 1) @x835 @x869 @x731 @x730 @x720 @x716 @x715 @x711 @x687 @x868 @x698 @x867 @x841 @x866 false))) |
|
1771 |
(let ((@x879 (unit-resolution (lemma @x870 (or $x364 (not $x681) $x733 $x734 $x658 $x784 $x872)) @x867 @x731 @x716 @x711 @x868 @x869 $x364))) |
|
1772 |
(let ((@x625 (def-axiom (or $x363 $x621)))) |
|
1773 |
(let ((@x825 ((_ th-lemma arith triangle-eq) (or $x823 $x779)))) |
|
1774 |
(let ((@x882 ((_ th-lemma arith farkas -1 1 -1 1 -1 -1 1 1 -1 1 1 -1 1) @x835 @x869 @x731 @x730 @x720 @x716 @x715 @x711 @x687 @x868 @x698 @x867 (unit-resolution @x825 (unit-resolution @x625 @x879 $x621) $x779) false))) |
|
1775 |
(let ((@x884 (lemma @x882 (or $x872 (not $x681) $x733 $x734 $x658 $x784)))) |
|
1776 |
(let ((@x945 (unit-resolution @x884 (unit-resolution ((_ th-lemma arith assign-bounds 2 1) (or $x678 $x438 $x745)) @x941 @x763 $x678) @x731 @x716 @x711 (unit-resolution ((_ th-lemma arith assign-bounds 1 2) (or $x681 (not $x679) $x463)) @x762 @x688 $x681) $x872))) |
|
1777 |
(let ((@x892 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x847 $x839)) (hypothesis $x613) (hypothesis $x872) false))) |
|
1778 |
(let ((@x893 (lemma @x892 (or $x847 $x839)))) |
|
1779 |
(let ((@x948 (unit-resolution @x615 (unit-resolution @x617 (unit-resolution @x893 @x945 $x847) $x388) $x612))) |
|
1780 |
(let (($x775 (<= ?x757 0))) |
|
1781 |
(let ((@x954 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x413 $x745 (not $x603) $x463 $x438)) @x763 @x687 @x688 @x941 $x413))) |
|
1782 |
(let ((@x607 (def-axiom (or $x414 $x604)))) |
|
1783 |
(let ((@x794 ((_ th-lemma arith triangle-eq) (or (not $x604) $x775)))) |
|
1784 |
(let ((@x960 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x363 (not $x936) (not $x619) $x438 (not $x775) (not $x611))))) |
|
1785 |
(let ((@x961 (unit-resolution @x960 @x763 @x853 @x799 (unit-resolution @x794 (unit-resolution @x607 @x954 $x604) $x775) (unit-resolution @x950 @x948 $x936) $x363))) |
|
1786 |
(let (($x602 (<= ?x457 0))) |
|
1787 |
(let ((@x832 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x458) $x602)) @x557 $x602))) |
|
1788 |
(let (($x932 (>= ?x674 0))) |
|
1789 |
(let ((@x966 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x738 $x932)) (unit-resolution @x601 @x763 $x597) $x932))) |
|
1790 |
(let ((@x967 ((_ th-lemma arith farkas -1 -1 1 1 -1 -1 1 1 1 -1 -1 1 1) @x835 @x731 @x730 @x762 @x720 @x716 @x715 @x711 (unit-resolution @x950 @x948 $x936) @x853 @x966 @x832 (unit-resolution @x865 (unit-resolution @x623 @x961 $x620) $x840) false))) |
|
1791 |
(let ((@x974 (unit-resolution (lemma @x967 (or $x438 $x733 $x734 $x658 $x463)) @x688 @x716 @x711 @x731 $x438))) |
|
1792 |
(let ((@x828 ((_ th-lemma arith triangle-eq) (or (not $x596) $x669)))) |
|
1793 |
(let ((@x978 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x413 (not $x603) $x463 $x439 $x784)) (unit-resolution @x693 (unit-resolution @x599 @x974 $x596) $x678) @x687 @x688 @x974 $x413))) |
|
1794 |
(let ((@x791 ((_ th-lemma arith triangle-eq) (or (not $x604) $x776)))) |
|
1795 |
(let ((@x981 (unit-resolution @x884 (unit-resolution @x693 (unit-resolution @x599 @x974 $x596) $x678) @x731 @x716 @x711 (unit-resolution ((_ th-lemma arith assign-bounds 1 2) (or $x681 (not $x679) $x463)) @x762 @x688 $x681) $x872))) |
|
1796 |
(let ((@x984 (unit-resolution @x615 (unit-resolution @x617 (unit-resolution @x893 @x981 $x847) $x388) $x612))) |
|
1797 |
(let ((@x808 ((_ th-lemma arith triangle-eq) (or (not $x612) $x673)))) |
|
1798 |
(let ((@x900 (hypothesis $x669))) |
|
1799 |
(let (($x610 (<= ?x432 0))) |
|
1800 |
(let ((@x812 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x433) $x610)) @x558 $x610))) |
|
1801 |
(let ((@x699 (hypothesis $x673))) |
|
1802 |
(let ((@x935 ((_ th-lemma arith farkas -1 -1 1 1 -1 -1 1 1 -1 1 -2 2 -1 1 1) @x835 @x731 @x730 (hypothesis $x679) @x720 @x716 @x715 @x711 @x699 @x698 (hypothesis $x776) @x812 @x900 @x832 (hypothesis $x779) false))) |
|
1803 |
(let ((@x971 (lemma @x935 (or $x902 $x733 (not $x679) $x734 $x658 $x706 (not $x776) (not $x669))))) |
|
1804 |
(let ((@x986 (unit-resolution @x971 @x762 @x731 @x716 @x711 (unit-resolution @x808 @x984 $x673) (unit-resolution @x791 (unit-resolution @x607 @x978 $x604) $x776) (unit-resolution @x828 (unit-resolution @x599 @x974 $x596) $x669) $x902))) |
|
1805 |
(let ((@x909 (lemma (unit-resolution @x825 (hypothesis $x621) (hypothesis $x902) false) (or $x823 $x779)))) |
|
1806 |
(let ((@x989 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x909 @x986 $x823) $x363) $x620))) |
|
1807 |
(let ((@x991 ((_ th-lemma arith farkas -1 -1 1 1 -1 -1 1 1 -1 1 -2 2 -2 -1 1 1) @x835 @x731 @x730 @x762 @x720 @x716 @x715 @x711 (unit-resolution @x808 @x984 $x673) @x698 (unit-resolution @x791 (unit-resolution @x607 @x978 $x604) $x776) @x812 (unit-resolution @x625 (unit-resolution @x909 @x986 $x823) $x363) (unit-resolution @x828 (unit-resolution @x599 @x974 $x596) $x669) @x832 (unit-resolution @x865 @x989 $x840) false))) |
|
1808 |
(let ((@x972 (unit-resolution (lemma @x991 (or $x463 $x733 $x734 $x658)) @x716 @x731 @x711 $x463))) |
|
1809 |
(let ((@x591 (def-axiom (or $x464 $x588)))) |
|
1810 |
(let ((@x725 ((_ th-lemma arith triangle-eq) (or (not $x588) $x681)))) |
|
1811 |
(let ((@x994 (unit-resolution @x725 (unit-resolution @x591 @x972 $x588) $x681))) |
|
1812 |
(let ((@x995 (unit-resolution @x884 (unit-resolution ((_ th-lemma arith assign-bounds 2 1) (or $x678 $x438 $x745)) @x941 @x763 $x678) @x731 @x716 @x711 @x994 $x872))) |
|
1813 |
(let ((@x1013 (unit-resolution @x615 (unit-resolution @x617 (unit-resolution @x893 @x995 $x847) $x388) $x612))) |
|
1814 |
(let ((@x1014 (unit-resolution @x950 @x1013 $x936))) |
|
1815 |
(let ((@x753 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x658 $x657)) @x711 $x657))) |
|
1816 |
(let ((@x1001 (hypothesis $x936))) |
|
1817 |
(let ((@x1004 ((_ th-lemma arith assign-bounds 1 1 1 1 1 2) (or $x363 (not $x936) (not $x619) $x438 (not $x611) (not $x933) $x413)))) |
|
1818 |
(let ((@x1006 (unit-resolution @x623 (unit-resolution @x1004 @x844 @x799 @x853 @x763 @x1001 @x1000 $x363) $x620))) |
|
1819 |
(let ((@x764 (hypothesis $x657))) |
|
1820 |
(let ((@x1008 ((_ th-lemma arith farkas 1 1 1 2 1 1 1 1 1 1 1 1 1 2 1) @x835 @x1001 @x853 @x844 @x731 @x730 @x720 @x716 @x715 @x764 @x687 @x941 @x869 @x763 (unit-resolution @x865 @x1006 $x840) false))) |
|
1821 |
(let ((@x1015 (unit-resolution (lemma @x1008 (or $x413 (not $x936) $x733 $x734 $x766 (not $x681) $x438)) @x1014 @x731 @x716 @x753 @x994 @x763 $x413))) |
|
1822 |
(let ((@x1018 (unit-resolution @x960 (unit-resolution @x794 (unit-resolution @x607 @x1015 $x604) $x775) @x853 @x763 @x1014 @x799 $x363))) |
|
1823 |
(let ((@x1021 ((_ 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) @x832 @x966 (unit-resolution @x865 (unit-resolution @x623 @x1018 $x620) $x840) @x835 @x1014 @x853 @x731 @x730 @x720 @x716 @x715 @x711 @x994 @x972 false))) |
|
1824 |
(let ((@x1025 (unit-resolution (lemma @x1021 (or $x438 $x733 $x734 $x658)) @x716 @x731 @x711 $x438))) |
|
1825 |
(let ((@x1035 (unit-resolution @x884 (unit-resolution @x693 (unit-resolution @x599 @x1025 $x596) $x678) @x731 @x716 @x711 @x994 $x872))) |
|
1826 |
(let ((@x1037 (unit-resolution @x617 (unit-resolution @x893 @x1035 $x847) $x388))) |
|
1827 |
(let (($x1024 (>= ?x931 0))) |
|
1828 |
(let ((@x1040 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x605) $x1024)) (unit-resolution (def-axiom (or $x413 $x605)) @x844 $x605) $x1024))) |
|
1829 |
(let ((@x1043 (unit-resolution @x865 (unit-resolution @x623 (unit-resolution @x1032 @x844 @x1037 $x363) $x620) $x840))) |
|
1830 |
(let ((@x1046 ((_ th-lemma arith farkas -1 1 -1 1 1 -1 1 1 -1 -1 -1 1 -1 1 1) (unit-resolution @x950 (unit-resolution @x615 @x1037 $x612) $x936) @x853 @x1043 @x835 @x731 @x730 @x720 @x716 @x715 @x711 @x994 @x1040 @x812 @x972 @x1037 false))) |
|
1831 |
(let ((@x1049 (unit-resolution (lemma @x1046 (or $x413 $x733 $x734 $x658)) @x716 @x731 @x711 $x413))) |
|
1832 |
(let ((@x895 (hypothesis $x463))) |
|
1833 |
(let ((@x897 (unit-resolution @x725 (unit-resolution @x591 @x895 $x588) $x681))) |
|
1834 |
(let ((@x901 ((_ 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) @x832 @x900 (hypothesis $x776) @x812 (hypothesis $x779) @x835 @x897 @x731 @x730 @x720 @x716 @x715 @x711 @x698 @x699 @x895 false))) |
|
1835 |
(let ((@x905 (lemma @x901 (or $x902 (not $x669) (not $x776) $x733 $x734 $x658 $x706 $x464)))) |
|
1836 |
(let ((@x1054 (unit-resolution @x905 (unit-resolution @x791 (unit-resolution @x607 @x1049 $x604) $x776) @x972 @x731 @x716 @x711 (unit-resolution @x828 (unit-resolution @x599 @x1025 $x596) $x669) (unit-resolution @x808 (unit-resolution @x615 @x1037 $x612) $x673) $x902))) |
|
1837 |
(let ((@x1057 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x909 @x1054 $x823) $x363) $x620))) |
|
1838 |
(let (($x707 (not $x670))) |
|
1839 |
(let ((@x704 (hypothesis $x338))) |
|
1840 |
(let ((@x768 (lemma ((_ th-lemma arith farkas 1 1 1 1 1 1 1 1 1 1) @x731 @x704 @x730 @x720 @x716 @x715 @x764 @x763 @x688 @x762 false) (or $x463 $x733 $x339 $x734 $x766 $x438)))) |
|
1841 |
(let ((@x770 (unit-resolution @x591 (unit-resolution @x768 @x763 @x704 @x716 @x764 @x731 $x463) $x588))) |
|
1842 |
(let ((@x772 ((_ th-lemma arith farkas 1 1 1 1 1 1 1 1 1 1) (unit-resolution @x768 @x763 @x704 @x716 @x764 @x731 $x463) @x731 @x704 @x730 @x720 @x716 @x715 @x764 @x763 (unit-resolution @x725 @x770 $x681) false))) |
|
1843 |
(let ((@x774 (lemma @x772 (or $x438 $x733 $x339 $x734 $x766)))) |
|
1844 |
(let ((@x782 (unit-resolution @x599 (unit-resolution @x774 @x704 @x731 @x716 @x753 $x438) $x596))) |
|
1845 |
(let ((@x783 (unit-resolution @x693 @x782 $x678))) |
|
1846 |
(let ((@x787 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x413 (not $x603) $x463 $x439 $x784)) @x688 @x687 (unit-resolution @x774 @x704 @x731 @x716 @x753 $x438) @x783 $x413))) |
|
1847 |
(let ((@x803 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x388 (not $x775) (not $x603) $x463 $x784 (not $x611))))) |
|
1848 |
(let ((@x804 (unit-resolution @x803 @x688 @x799 @x687 @x783 (unit-resolution @x794 (unit-resolution @x607 @x787 $x604) $x775) $x388))) |
|
1849 |
(let (($x818 (not $x610))) |
|
1850 |
(let (($x817 (not $x776))) |
|
1851 |
(let (($x816 (not $x650))) |
|
1852 |
(let (($x815 (not $x595))) |
|
1853 |
(let (($x814 (not $x642))) |
|
1854 |
(let (($x813 (not $x679))) |
|
1855 |
(let (($x743 (not $x618))) |
|
1856 |
(let (($x819 (or $x364 $x706 $x743 $x463 $x813 $x733 $x339 $x814 $x815 $x734 $x816 $x766 $x817 $x818))) |
|
1857 |
(let ((@x821 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1 1 1 1 1 -1) $x819) @x688 @x812 @x698 @x720 @x704 @x730 @x715 @x753 @x731 @x716 (unit-resolution @x808 (unit-resolution @x615 @x804 $x612) $x673) @x762 (unit-resolution @x791 (unit-resolution @x607 @x787 $x604) $x776) $x364))) |
|
1858 |
(let ((@x836 ((_ th-lemma arith farkas -1 1 1 -1 1 -1 -1 1 1 -2 2 -1 1 -1 1) (unit-resolution @x808 (unit-resolution @x615 @x804 $x612) $x673) @x698 @x762 @x731 @x730 @x720 @x716 @x715 @x711 (unit-resolution @x791 (unit-resolution @x607 @x787 $x604) $x776) @x812 @x835 @x832 (unit-resolution @x828 @x782 $x669) (unit-resolution @x825 (unit-resolution @x625 @x821 $x621) $x779) false))) |
|
1859 |
(let ((@x894 (unit-resolution (lemma @x836 (or $x463 $x733 $x734 $x658 $x339)) @x704 @x716 @x711 @x731 $x463))) |
|
1860 |
(let ((@x912 (unit-resolution @x884 (unit-resolution @x725 (unit-resolution @x591 @x894 $x588) $x681) @x731 @x716 @x711 @x783 $x872))) |
|
1861 |
(let ((@x915 (unit-resolution @x615 (unit-resolution @x617 (unit-resolution @x893 @x912 $x847) $x388) $x612))) |
|
1862 |
(let ((@x683 (hypothesis $x670))) |
|
1863 |
(let ((@x689 (hypothesis $x438))) |
|
1864 |
(let ((@x694 (unit-resolution @x693 (unit-resolution @x599 @x689 $x596) $x678))) |
|
1865 |
(let ((@x709 (lemma ((_ th-lemma arith farkas 1 -1 1 -1 1 -1 -1 1 1) @x704 @x703 @x699 @x698 @x689 @x694 @x688 @x687 @x683 false) (or $x463 $x339 $x706 $x439 $x707)))) |
|
1866 |
(let ((@x722 (unit-resolution @x591 (unit-resolution @x709 @x689 @x699 @x704 @x683 $x463) $x588))) |
|
1867 |
(let ((@x732 ((_ th-lemma arith farkas 2 -1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1) @x704 @x703 @x699 @x698 @x694 @x687 @x731 @x730 (unit-resolution @x725 @x722 $x681) @x720 @x716 @x715 @x711 @x683 false))) |
|
1868 |
(let ((@x682 (unit-resolution (lemma @x732 (or $x439 $x339 $x706 $x733 $x734 $x658 $x707)) @x699 @x704 @x731 @x716 @x711 @x683 $x439))) |
|
1869 |
(let ((@x747 ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x463 $x707 $x339 (not $x626) $x706 $x743 (not $x603) $x745 $x438)))) |
|
1870 |
(let ((@x748 (unit-resolution @x747 @x682 @x687 @x698 @x703 @x704 @x683 @x699 (unit-resolution @x740 (unit-resolution @x601 @x682 $x597) $x675) $x463))) |
|
1871 |
(let ((@x754 ((_ th-lemma arith farkas 1 2 1 1 1 1 1 2 1 1 1 1 1 1 1) @x683 @x704 @x703 @x699 @x698 @x687 (unit-resolution @x740 (unit-resolution @x601 @x682 $x597) $x675) @x682 @x731 @x730 @x720 @x716 @x715 @x753 (unit-resolution @x725 (unit-resolution @x591 @x748 $x588) $x681) false))) |
|
1872 |
(let ((@x917 (unit-resolution (lemma @x754 (or $x706 $x707 $x339 $x733 $x734 $x658)) (unit-resolution @x808 @x915 $x673) @x704 @x731 @x716 @x711 $x707))) |
|
1873 |
(let ((@x887 (unit-resolution @x599 (unit-resolution @x774 @x704 @x731 @x716 @x764 $x438) $x596))) |
|
1874 |
(let ((@x889 ((_ th-lemma arith farkas 1 1 1 1 1 1 1 1 1 -1 1) @x844 @x869 @x731 @x730 @x720 @x716 @x715 @x764 @x687 (unit-resolution @x693 @x887 $x678) @x704 false))) |
|
1875 |
(let ((@x918 (unit-resolution (lemma @x889 (or $x413 (not $x681) $x733 $x734 $x766 $x339)) (unit-resolution @x725 (unit-resolution @x591 @x894 $x588) $x681) @x731 @x716 @x753 @x704 $x413))) |
|
1876 |
(let ((@x921 (unit-resolution @x905 (unit-resolution @x828 @x782 $x669) (unit-resolution @x791 (unit-resolution @x607 @x918 $x604) $x776) @x731 @x716 @x711 (unit-resolution @x808 @x915 $x673) @x894 $x902))) |
|
1877 |
(let ((@x924 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x909 @x921 $x823) $x363) $x620))) |
|
1878 |
(let ((@x929 (lemma (unit-resolution @x926 @x924 @x917 false) (or $x339 $x733 $x734 $x658)))) |
|
1879 |
(let ((@x1060 ((_ th-lemma arith farkas -1 1 1 -1 1 -1 -1 1 1) @x812 @x972 (unit-resolution @x828 (unit-resolution @x599 @x1025 $x596) $x669) @x832 (unit-resolution @x625 (unit-resolution @x909 @x1054 $x823) $x363) (unit-resolution @x929 @x716 @x731 @x711 $x339) (unit-resolution @x865 @x1057 $x840) @x835 (unit-resolution @x791 (unit-resolution @x607 @x1049 $x604) $x776) false))) |
|
1880 |
(let ((@x1164 (hypothesis $x644))) |
|
1881 |
(let ((@x1168 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1165 $x664)) @x1164 (hypothesis $x734) false))) |
|
1882 |
(let ((@x1169 (lemma @x1168 (or $x1165 $x664)))) |
|
1883 |
(let ((@x1171 (unit-resolution @x1169 (unit-resolution (lemma @x1060 (or $x734 $x733 $x658)) @x711 @x1148 $x734) $x1165))) |
|
1884 |
(let ((@x647 (def-axiom (or $x314 $x644)))) |
|
1885 |
(let ((@x1172 (unit-resolution @x647 @x1171 $x314))) |
|
1886 |
(let ((@x1194 ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x338 $x313 (not $x660) (not $x643) $x289)))) |
|
1887 |
(let ((@x1219 (unit-resolution @x631 (unit-resolution @x1194 @x1172 @x1126 @x1079 @x1153 $x338) $x628))) |
|
1888 |
(let ((@x1118 ((_ th-lemma arith triangle-eq) (or (not $x628) $x663)))) |
|
1889 |
(let ((@x1220 (unit-resolution @x1118 @x1219 $x663))) |
|
1890 |
(let ((@x845 (hypothesis $x389))) |
|
1891 |
(let ((@x1071 (unit-resolution @x803 @x845 @x799 (unit-resolution ((_ th-lemma arith assign-bounds 1 2) (or $x775 (not $x933) $x413)) @x1000 @x844 $x775) @x688 @x687 $x784))) |
|
1892 |
(let ((@x1074 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x438 (not $x611) $x388 (not $x933) $x413)) @x845 @x799 @x844 @x1000 $x438))) |
|
1893 |
(let ((@x1078 (lemma (unit-resolution @x693 (unit-resolution @x599 @x1074 $x596) @x1071 false) (or $x388 $x463 $x413)))) |
|
1894 |
(let ((@x1084 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1) (or $x745 $x818 $x389 $x463 (not $x603) (not $x1024))) (unit-resolution @x1078 @x688 @x844 $x388) @x812 @x687 @x688 @x1040 $x745))) |
|
1895 |
(let ((@x1086 (unit-resolution @x808 (unit-resolution @x615 (unit-resolution @x1078 @x688 @x844 $x388) $x612) $x673))) |
|
1896 |
(let ((@x1091 (unit-resolution @x950 (unit-resolution @x615 (unit-resolution @x1078 @x688 @x844 $x388) $x612) $x936))) |
|
1897 |
(let ((@x1097 (unit-resolution @x709 (unit-resolution @x1095 @x1091 @x835 @x844 @x853 @x1090 $x338) @x1089 @x688 @x1086 $x439))) |
|
1898 |
(let ((@x1101 (lemma (unit-resolution @x740 (unit-resolution @x601 @x1097 $x597) @x1084 false) (or $x463 $x413)))) |
|
1899 |
(let ((@x1122 (unit-resolution @x725 (unit-resolution @x591 (unit-resolution @x1101 @x844 $x463) $x588) $x681))) |
|
1900 |
(let (($x1106 (>= ?x1104 0))) |
|
1901 |
(let ((@x1161 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1136 $x1106)) (hypothesis $x645) (hypothesis (not $x1106)) false))) |
|
1902 |
(let ((@x1162 (lemma @x1161 (or $x1136 $x1106)))) |
|
1903 |
(let ((@x1174 (unit-resolution @x1162 (unit-resolution (def-axiom (or $x313 $x645)) @x1172 $x645) $x1106))) |
|
1904 |
(let ((@x850 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x847 $x780)) (unit-resolution @x617 @x845 $x613) $x780))) |
|
1905 |
(let ((@x1113 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x936 $x673)) (unit-resolution ((_ th-lemma arith assign-bounds 1 2) (or $x706 (not $x780) $x388)) @x850 @x845 $x706) $x936))) |
|
1906 |
(let ((@x1115 (unit-resolution @x631 (unit-resolution @x1095 @x1113 @x835 @x853 @x844 @x1090 $x338) $x628))) |
|
1907 |
(let ((@x1127 (hypothesis $x660))) |
|
1908 |
(let (($x635 (>= ?x357 0))) |
|
1909 |
(let ((@x1130 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x358) $x635)) @x561 $x635))) |
|
1910 |
(let ((@x859 ((_ th-lemma arith farkas 1 1 1 1 1 1 1 1 1) @x858 @x857 @x853 @x845 @x731 @x730 @x850 @x844 (hypothesis $x313) false))) |
|
1911 |
(let ((@x1134 (unit-resolution (lemma @x859 (or $x413 $x860 $x388 $x733 $x314)) (unit-resolution @x1132 @x1115 $x667) @x844 @x731 @x845 $x314))) |
|
1912 |
(let ((@x649 (def-axiom (or $x313 $x645)))) |
|
1913 |
(let ((@x1139 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1136 $x1106)) (unit-resolution @x649 @x1134 $x645) $x1106))) |
|
1914 |
(let ((@x1140 (unit-resolution @x893 (unit-resolution @x617 @x845 $x613) $x839))) |
|
1915 |
(let ((@x1141 ((_ th-lemma arith farkas 1/2 -1/2 1/2 -1/2 -1/2 -1 1/2 -1/2 -1/2 1/2 1/2 1/2 -1/2 1/2 1) @x1090 @x835 @x698 @x1140 @x1139 @x1130 @x1127 @x1126 @x720 @x715 @x711 (unit-resolution @x693 (unit-resolution @x599 @x1074 $x596) $x678) @x687 @x1122 (unit-resolution @x1118 @x1115 $x663) false))) |
|
1916 |
(let ((@x1175 (unit-resolution (lemma @x1141 (or $x388 (not $x660) $x658 $x413 $x733)) @x844 @x711 @x1153 @x1148 $x388))) |
|
1917 |
(let ((@x1154 (hypothesis $x1106))) |
|
1918 |
(let ((@x1155 ((_ 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) @x683 @x703 @x699 @x698 @x1154 @x1153 @x1126 @x720 @x715 @x711 @x868 @x687 @x869 @x1079 false))) |
|
1919 |
(let ((@x1178 (unit-resolution (lemma @x1155 (or (not $x1106) $x707 $x706 $x658 $x784 (not $x681) $x289)) (unit-resolution @x808 (unit-resolution @x615 @x1175 $x612) $x673) @x1174 @x711 @x1122 @x1089 @x1079 $x784))) |
|
1920 |
(let ((@x1180 (unit-resolution @x1095 @x1090 @x835 @x844 (unit-resolution @x950 (unit-resolution @x615 @x1175 $x612) $x936) @x853 $x338))) |
|
1921 |
(let ((@x1183 (unit-resolution @x1105 (unit-resolution @x1132 (unit-resolution @x631 @x1180 $x628) $x667) @x844 @x1079 $x438))) |
|
1922 |
(let ((@x1187 (lemma (unit-resolution @x693 (unit-resolution @x599 @x1183 $x596) @x1178 false) (or $x413 $x289 $x658)))) |
|
1923 |
(let ((@x1223 (unit-resolution @x791 (unit-resolution @x607 (unit-resolution @x1187 @x711 @x1079 $x413) $x604) $x776))) |
|
1924 |
(let ((@x1190 (unit-resolution @x794 (unit-resolution @x607 (hypothesis $x413) $x604) $x775))) |
|
1925 |
(let ((@x1196 (unit-resolution @x631 (unit-resolution @x1194 (hypothesis $x314) @x1126 @x1079 @x1153 $x338) $x628))) |
|
1926 |
(let ((@x1191 (hypothesis $x314))) |
|
1927 |
(let ((@x1202 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x363 $x313 (not $x635) (not $x663) (not $x660) (not $x643))))) |
|
1928 |
(let ((@x1203 (unit-resolution @x1202 (unit-resolution @x1118 @x1196 $x663) @x1126 @x1191 @x1153 @x1130 $x363))) |
|
1929 |
(let ((@x1188 (hypothesis $x413))) |
|
1930 |
(let ((@x1206 ((_ th-lemma arith farkas -1 -1 -1 1 1 -1 1 -1 1) @x1188 @x1079 (unit-resolution @x926 (unit-resolution @x623 @x1203 $x620) $x670) @x703 @x857 (unit-resolution @x1132 @x1196 $x667) @x763 @x799 @x1190 false))) |
|
1931 |
(let ((@x1208 (lemma @x1206 (or $x438 $x414 $x289 $x313)))) |
|
1932 |
(let ((@x1224 (unit-resolution @x1208 (unit-resolution @x1187 @x711 @x1079 $x413) @x1079 @x1172 $x438))) |
|
1933 |
(let (($x1200 (not $x663))) |
|
1934 |
(let (($x1199 (not $x635))) |
|
1935 |
(let (($x1192 (not $x643))) |
|
1936 |
(let (($x1142 (not $x660))) |
|
1937 |
(let ((@x1227 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1 -1 1 1 1 -1 1 -1) (or $x706 $x743 $x313 $x1142 $x1192 $x817 $x1199 $x1200 $x439 $x818)) @x1172 @x698 @x1130 @x1126 @x812 @x1153 @x1224 @x1223 @x1220 $x706))) |
|
1938 |
(let ((@x1228 (unit-resolution @x794 (unit-resolution @x607 (unit-resolution @x1187 @x711 @x1079 $x413) $x604) $x775))) |
|
1939 |
(let ((@x1232 (unit-resolution @x623 (unit-resolution @x1202 @x1220 @x1126 @x1172 @x1153 @x1130 $x363) $x620))) |
|
1940 |
(let ((@x1209 (hypothesis $x840))) |
|
1941 |
(let ((@x1212 (unit-resolution @x591 (unit-resolution @x803 @x845 @x799 (hypothesis $x775) @x868 @x687 $x463) $x588))) |
|
1942 |
(let ((@x1214 (hypothesis $x663))) |
|
1943 |
(let ((@x1215 ((_ th-lemma arith farkas -1 2 -2 -1 1 1 1 -1 -1 -1 -1 1 -1 1 1) @x698 @x1130 @x1214 @x1127 @x1126 @x1154 @x720 @x715 @x711 (unit-resolution @x725 @x1212 $x681) @x1209 @x835 @x868 @x687 @x1140 false))) |
|
1944 |
(let ((@x1217 (lemma @x1215 (or $x388 $x1200 $x1142 (not $x1106) $x658 (not $x840) $x784 (not $x775))))) |
|
1945 |
(let ((@x1234 (unit-resolution @x1217 @x1220 @x1153 @x1174 @x711 (unit-resolution @x865 @x1232 $x840) (unit-resolution @x693 (unit-resolution @x599 @x1224 $x596) $x678) @x1228 $x388))) |
|
1946 |
(let ((@x1238 (lemma (unit-resolution @x808 (unit-resolution @x615 @x1234 $x612) @x1227 false) (or $x658 $x289)))) |
|
1947 |
(let ((@x1268 (unit-resolution @x631 (unit-resolution @x1095 @x1113 @x835 @x844 @x1090 @x853 $x338) $x628))) |
|
1948 |
(let ((@x1271 ((_ th-lemma arith triangle-eq) (or (not $x588) $x672)))) |
|
1949 |
(let ((@x1272 (unit-resolution @x1271 (unit-resolution @x591 (unit-resolution @x1101 @x844 $x463) $x588) $x672))) |
|
1950 |
(let ((@x1273 (unit-resolution (lemma @x859 (or $x413 $x860 $x388 $x733 $x314)) (unit-resolution @x1132 @x1268 $x667) @x844 @x731 @x845 $x314))) |
|
1951 |
(let ((@x1277 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1136 $x1250)) (unit-resolution @x649 @x1273 $x645) $x1250))) |
|
1952 |
(let ((@x1251 (hypothesis $x780))) |
|
1953 |
(let ((@x1252 (hypothesis $x672))) |
|
1954 |
(let (($x594 (<= ?x482 0))) |
|
1955 |
(let ((@x1255 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x483) $x594)) @x556 $x594))) |
|
1956 |
(let (($x651 (>= ?x332 0))) |
|
1957 |
(let ((@x1259 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x333) $x651)) @x563 $x651))) |
|
1958 |
(let ((@x1261 ((_ 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) @x683 @x857 @x703 (hypothesis $x1250) @x1259 @x1256 @x731 @x730 @x900 @x832 @x1255 @x1252 @x1251 @x853 @x858 false))) |
|
1959 |
(let ((@x1265 (lemma @x1261 (or $x657 $x707 $x1262 $x733 (not $x669) (not $x672) (not $x780) $x860)))) |
|
1960 |
(let ((@x1278 (unit-resolution @x1265 @x1277 @x1089 @x731 @x900 @x1272 @x850 (unit-resolution @x1132 @x1268 $x667) $x657))) |
|
1961 |
(let ((@x1280 ((_ th-lemma arith triangle-eq) (or $x92 $x766 $x710)))) |
|
1962 |
(let (($x583 (not $x92))) |
|
1963 |
(let (($x570 (or $x582 $x583))) |
|
1964 |
(let ((@x578 (monotonicity (rewrite (= $x93 (not $x570))) (= (not $x93) (not (not $x570)))))) |
|
1965 |
(let ((@x568 (trans @x578 (rewrite (= (not (not $x570)) $x570)) (= (not $x93) $x570)))) |
|
1966 |
(let ((@x569 (mp (not-or-elim (mp (asserted $x95) @x552 $x548) (not $x93)) @x568 $x570))) |
|
1967 |
(let ((@x1282 (unit-resolution @x569 (unit-resolution @x1280 @x1278 (hypothesis $x658) $x92) $x582))) |
|
1968 |
(let ((?x652 (+ x1$ ?x235))) |
|
1969 |
(let (($x654 (>= ?x652 0))) |
|
1970 |
(let (($x587 (>= ?x507 0))) |
|
1971 |
(let ((@x555 (and-elim @x554 $x508))) |
|
1972 |
(let ((@x1287 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x508) $x587)) @x555 $x587))) |
|
1973 |
(let ((?x1145 (+ x2$ ?x506))) |
|
1974 |
(let (($x1239 (<= ?x1145 0))) |
|
1975 |
(let (($x584 (= x2$ ?x495))) |
|
1976 |
(let ((@x1289 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x488 $x815 $x413 $x784 (not $x603) (not $x681))))) |
|
1977 |
(let ((@x573 (def-axiom (or (not $x488) $x584)))) |
|
1978 |
(let ((@x1291 (unit-resolution @x573 (unit-resolution @x1289 @x868 @x687 @x844 @x1122 @x720 $x488) $x584))) |
|
1979 |
(let ((@x1294 ((_ th-lemma arith triangle-eq) (or (not $x584) $x1239)))) |
|
1980 |
(let ((@x1296 ((_ 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 @x1294 @x1291 $x1239) @x720 @x1122 @x1287 @x1090 @x731 @x730 @x835 @x1040 @x812 @x850 @x853 (unit-resolution @x1162 (unit-resolution @x649 @x1273 $x645) $x1106) @x715 @x1278 @x868 @x687 $x654))) |
|
1981 |
(let (($x653 (<= ?x652 0))) |
|
1982 |
(let (($x586 (<= ?x507 0))) |
|
1983 |
(let ((@x1299 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x508) $x586)) @x555 $x586))) |
|
1984 |
(let (($x1240 (>= ?x1145 0))) |
|
1985 |
(let ((@x1301 ((_ th-lemma arith triangle-eq) (or (not $x584) $x1240)))) |
|
1986 |
(let ((@x1303 ((_ 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 @x1301 @x1291 $x1240) @x1255 @x1272 @x1299 @x1089 @x1127 @x1126 @x703 @x1000 @x799 @x1140 @x698 @x1277 @x1259 (hypothesis $x658) @x900 @x832 $x653))) |
|
1987 |
(let ((@x1307 ((_ th-lemma arith triangle-eq) (or $x91 (not $x653) (not $x654))))) |
|
1988 |
(let ((@x1310 (lemma (unit-resolution @x1307 @x1303 @x1296 @x1282 false) (or $x388 $x1142 $x710 (not $x669) $x733 $x784 $x413)))) |
|
1989 |
(let ((@x1332 (unit-resolution @x1310 (unit-resolution @x828 @x1328 $x669) (unit-resolution @x1238 @x1079 $x658) @x1153 @x1148 (unit-resolution @x693 @x1328 $x678) @x844 $x388))) |
|
1990 |
(let (($x1304 (not $x653))) |
|
1991 |
(let ((@x1338 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x780 $x389 (not $x936))) (unit-resolution @x950 (unit-resolution @x615 @x1332 $x612) $x936) @x1332 $x780))) |
|
1992 |
(let ((@x1339 (unit-resolution @x1095 (unit-resolution @x950 (unit-resolution @x615 @x1332 $x612) $x936) @x835 @x844 @x1090 @x853 $x338))) |
|
1993 |
(let ((@x1341 (unit-resolution @x1132 (unit-resolution @x631 @x1339 $x628) $x667))) |
|
1994 |
(let ((@x1316 (unit-resolution @x631 (unit-resolution @x1095 @x1029 @x835 @x844 @x1090 @x853 $x338) $x628))) |
|
1995 |
(let ((@x1318 ((_ th-lemma arith farkas -1 -1 -1 1 -1 1 -1 1 1) @x1026 (hypothesis $x313) @x731 @x730 @x853 @x844 (unit-resolution @x1132 @x1316 $x667) @x857 @x1029 false))) |
|
1996 |
(let ((@x1342 (unit-resolution (lemma @x1318 (or $x314 $x389 $x733 $x413)) @x1332 @x1148 @x844 $x314))) |
|
1997 |
(let ((@x1312 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1136 $x1250)) (hypothesis $x645) (hypothesis $x1262) false))) |
|
1998 |
(let ((@x1313 (lemma @x1312 (or $x1136 $x1250)))) |
|
1999 |
(let ((@x1345 (unit-resolution @x1265 (unit-resolution @x1313 (unit-resolution @x649 @x1342 $x645) $x1250) @x1341 @x1148 (unit-resolution @x828 @x1328 $x669) @x1272 @x1338 @x1089 $x657))) |
|
2000 |
(let ((@x1347 (unit-resolution @x569 (unit-resolution @x1280 @x1345 (unit-resolution @x1238 @x1079 $x658) $x92) $x582))) |
|
2001 |
(let ((@x1348 (unit-resolution @x1289 (unit-resolution @x693 @x1328 $x678) @x687 @x844 @x1122 @x720 $x488))) |
|
2002 |
(let ((@x1314 (hypothesis $x1024))) |
|
2003 |
(let (($x1305 (not $x654))) |
|
2004 |
(let ((@x1321 (hypothesis $x1305))) |
|
2005 |
(let ((@x1322 (hypothesis $x1239))) |
|
2006 |
(let ((@x1323 ((_ th-lemma arith farkas -2 -1 1 -1 -1 1 1 -1 1 -1 1 -1 1 1) @x1026 @x731 @x730 @x853 @x858 @x857 @x1322 @x720 @x869 @x1287 @x1321 @x1314 @x812 @x1029 false))) |
|
2007 |
(let ((@x1326 (lemma @x1323 (or $x654 $x389 $x733 $x860 (not $x1239) (not $x681) (not $x1024))))) |
|
2008 |
(let ((@x1351 (unit-resolution @x1326 @x1332 @x1148 @x1341 (unit-resolution @x1294 (unit-resolution @x573 @x1348 $x584) $x1239) @x1122 @x1040 $x654))) |
|
2009 |
(let ((@x1354 ((_ th-lemma arith farkas -1 1 -1 1 -1 1 -1 1 -1 1 -1 1 2 2 -2 1) @x1153 @x1126 @x698 @x1341 @x857 (unit-resolution @x1301 (unit-resolution @x573 @x1348 $x584) $x1240) @x1255 @x1272 @x1299 (unit-resolution @x1307 @x1351 @x1347 $x1304) @x1000 @x799 @x1079 @x1089 @x703 (unit-resolution @x808 (unit-resolution @x615 @x1332 $x612) $x673) false))) |
|
2010 |
(let ((@x641 (def-axiom (or $x288 $x637)))) |
|
2011 |
(let ((@x1435 (unit-resolution @x641 (unit-resolution (lemma @x1354 (or $x413 $x289)) @x844 $x289) $x637))) |
|
2012 |
(let ((@x1438 ((_ th-lemma arith triangle-eq) (or (not $x637) $x1370)))) |
|
2013 |
(let ((@x1439 (unit-resolution @x1438 @x1435 $x1370))) |
|
2014 |
(let ((@x1374 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x1200 $x1199 $x288 (not $x840) $x388 (not $x627))) @x845 @x1130 @x1371 @x866 @x835 $x1200))) |
|
2015 |
(let ((@x1377 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x338 $x364 (not $x840) $x388 (not $x627))) @x845 @x835 @x841 @x866 $x338))) |
|
2016 |
(let ((@x1381 (lemma (unit-resolution @x1118 (unit-resolution @x631 @x1377 $x628) @x1374 false) (or $x388 $x288 $x364)))) |
|
2017 |
(let ((@x1440 (unit-resolution @x1381 (unit-resolution (lemma @x1354 (or $x413 $x289)) @x844 $x289) (unit-resolution (lemma @x1065 (or $x363 $x413)) @x844 $x363) $x388))) |
|
2018 |
(let ((@x1442 (unit-resolution @x950 (unit-resolution @x615 @x1440 $x612) $x936))) |
|
2019 |
(let ((@x1445 (unit-resolution (unit-resolution @x1095 @x835 @x853 (or $x338 (not $x840) (not $x936) $x413)) @x1442 @x844 @x1090 $x338))) |
|
2020 |
(let ((@x1448 (unit-resolution @x808 (unit-resolution @x615 @x1440 $x612) $x673))) |
|
2021 |
(let (($x1361 (<= ?x1357 0))) |
|
2022 |
(let ((@x1450 ((_ th-lemma arith triangle-eq) (or (not $x637) $x1361)))) |
|
2023 |
(let ((@x1451 (unit-resolution @x1450 @x1435 $x1361))) |
|
2024 |
(let ((@x1452 (unit-resolution @x1118 (unit-resolution @x631 @x1445 $x628) $x663))) |
|
2025 |
(let (($x1403 (not $x1361))) |
|
2026 |
(let (($x1002 (not $x933))) |
|
2027 |
(let (($x957 (not $x936))) |
|
2028 |
(let (($x1092 (not $x840))) |
|
2029 |
(let (($x1392 (not $x1370))) |
|
2030 |
(let (($x1081 (not $x1024))) |
|
2031 |
(let ((@x1383 (hypothesis $x1370))) |
|
2032 |
(let ((@x1387 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x488 $x815 $x464 (not $x681) $x438)) @x720 (or $x488 $x464 (not $x681) $x438)))) |
|
2033 |
(let ((@x1390 (unit-resolution @x1294 (unit-resolution @x573 (unit-resolution @x1387 @x763 @x897 @x895 $x488) $x584) $x1239))) |
|
2034 |
(let (($x958 (not $x619))) |
|
2035 |
(let (($x1093 (not $x627))) |
|
2036 |
(let (($x871 (not $x681))) |
|
2037 |
(let (($x1391 (not $x587))) |
|
2038 |
(let (($x1324 (not $x1239))) |
|
2039 |
(let (($x1393 (or $x654 $x1324 $x1391 $x871 $x815 $x1081 $x818 $x1392 $x814 $x1092 $x1093 $x957 $x958 $x1200 $x1199))) |
|
2040 |
(let ((@x1395 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 2 -2 1 -1 1 -1) $x1393) @x1390 @x812 @x853 @x835 @x1130 @x730 @x1287 @x897 @x1001 @x1209 @x1314 @x1214 @x720 @x1383 $x654))) |
|
2041 |
(let ((@x1396 (hypothesis $x1361))) |
|
2042 |
(let ((@x1397 (hypothesis $x933))) |
|
2043 |
(let ((@x1399 (unit-resolution @x1301 (unit-resolution @x573 (unit-resolution @x1387 @x763 @x897 @x895 $x488) $x584) $x1240))) |
|
2044 |
(let (($x1404 (not $x634))) |
|
2045 |
(let (($x742 (not $x626))) |
|
2046 |
(let (($x801 (not $x611))) |
|
2047 |
(let (($x1402 (not $x594))) |
|
2048 |
(let (($x1263 (not $x672))) |
|
2049 |
(let (($x1401 (not $x586))) |
|
2050 |
(let (($x1400 (not $x1240))) |
|
2051 |
(let (($x1405 (or $x653 $x1400 $x1401 $x1263 $x1402 $x1002 $x801 $x1403 $x1192 $x707 $x742 $x706 $x743 $x860 $x1404))) |
|
2052 |
(let ((@x1407 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 2 -2 1 -1 1 -1) $x1405) @x1399 @x799 @x698 @x703 @x857 @x1126 @x1299 @x699 @x683 @x858 (unit-resolution @x1271 (unit-resolution @x591 @x895 $x588) $x672) @x1397 @x1396 @x1255 $x653))) |
|
2053 |
(let ((@x1411 ((_ th-lemma arith assign-bounds 1 1 2 2 1 1 1 1 1 1 1) (or $x313 $x1403 $x1192 $x707 $x742 $x706 $x743 $x1002 $x438 $x801 $x860 $x1404)))) |
|
2054 |
(let ((@x1412 (unit-resolution @x1411 @x763 @x698 @x703 @x857 @x1126 @x799 @x699 @x683 @x858 @x1397 @x1396 $x313))) |
|
2055 |
(let ((@x1415 ((_ th-lemma arith triangle-eq) (or $x1165 $x1382)))) |
|
2056 |
(let ((@x1417 ((_ th-lemma arith assign-bounds 1 -1 -1 1 2 -2 1 -1 -3 3 -1 1 -2 2 -1 1) (unit-resolution @x1415 (unit-resolution @x647 @x1412 $x644) $x1382) @x1259 (unit-resolution @x1271 (unit-resolution @x591 @x895 $x588) $x672) @x1255 @x1397 @x799 @x1396 @x1126 @x683 @x703 @x699 @x698 @x858 @x857 @x966 @x832 $x657))) |
|
2057 |
(let ((@x1419 ((_ th-lemma arith assign-bounds 1 -1 -1 1 2 -2 1 -1 -3 3 -1 1 -2 2 -1 1) (unit-resolution @x1169 (unit-resolution @x647 @x1412 $x644) $x664) @x715 @x897 @x720 @x1314 @x812 @x1383 @x730 @x1209 @x835 @x1001 @x853 @x1214 @x1130 @x941 @x687 $x658))) |
|
2058 |
(let ((@x1420 (unit-resolution @x1280 @x1419 @x1417 (unit-resolution @x569 (unit-resolution @x1307 @x1407 @x1395 $x91) $x583) false))) |
|
2059 |
(let ((@x1422 (lemma @x1420 (or $x438 $x1081 $x1392 $x1092 $x957 $x1200 $x1002 $x1403 $x707 $x706 $x860 $x464)))) |
|
2060 |
(let ((@x1453 (unit-resolution @x1422 @x1040 @x1439 @x1090 @x1442 @x1452 @x1000 @x1451 @x1089 @x1448 (unit-resolution @x1132 (unit-resolution @x631 @x1445 $x628) $x667) (unit-resolution @x1101 @x844 $x463) $x438))) |
|
2061 |
(let ((@x1459 (unit-resolution (unit-resolution @x1289 @x687 @x720 (or $x488 $x413 $x784 $x871)) (unit-resolution @x693 (unit-resolution @x599 @x1453 $x596) $x678) @x844 @x1122 $x488))) |
|
2062 |
(let ((@x1462 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 2 -2 1 -1 1 -1) $x1393) (unit-resolution @x1294 (unit-resolution @x573 @x1459 $x584) $x1239) @x812 @x853 @x835 @x1130 @x730 @x720 @x1122 @x1442 @x1090 @x1040 @x1452 @x1287 @x1439 $x654))) |
|
2063 |
(let ((@x1464 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 2 -2 1 -1 1 -1) $x1405) (unit-resolution @x1301 (unit-resolution @x573 @x1459 $x584) $x1240) @x799 @x698 @x703 @x857 @x1126 @x1255 @x1448 @x1089 (unit-resolution @x1132 (unit-resolution @x631 @x1445 $x628) $x667) @x1272 @x1000 @x1451 @x1299 $x653))) |
|
2064 |
(let (($x1156 (not $x1106))) |
|
2065 |
(let ((@x1423 ((_ th-lemma arith farkas -1 -1 -1 -1 1 1 1 -1 -1 1 1 -1 1) @x715 @x711 @x868 @x869 @x720 @x687 @x683 @x703 @x1396 @x1126 @x699 @x698 @x1154 false))) |
|
2066 |
(let ((@x1426 (unit-resolution (lemma @x1423 (or $x1156 $x658 $x784 $x871 $x707 $x1403 $x706)) @x711 @x694 @x869 @x683 @x1396 @x699 $x1156))) |
|
2067 |
(let ((@x1429 (unit-resolution @x647 (unit-resolution @x649 (unit-resolution @x1162 @x1426 $x1136) $x313) $x644))) |
|
2068 |
(let ((@x1431 ((_ th-lemma arith farkas 1/2 -1/2 -3/2 3/2 -1/2 1/2 1 -1 -1 1 1/2 -1/2 -1/2 -1/2 -1/2 1/2 1/2 1) @x1383 @x730 @x1209 @x835 @x1001 @x853 @x1314 @x812 @x1214 @x1130 (unit-resolution @x1169 @x1429 $x664) @x715 @x711 @x694 @x869 @x720 @x687 @x689 false))) |
|
2069 |
(let ((@x1433 (lemma @x1431 (or $x658 $x1392 $x1092 $x957 $x1081 $x1200 $x871 $x439 $x707 $x1403 $x706)))) |
|
2070 |
(let ((@x1467 (unit-resolution @x1433 @x1439 @x1090 @x1442 @x1040 @x1452 @x1122 @x1453 @x1089 @x1451 @x1448 $x658))) |
|
2071 |
(let ((@x1468 (unit-resolution @x1280 @x1467 (unit-resolution @x569 (unit-resolution @x1307 @x1464 @x1462 $x91) $x583) $x766))) |
|
2072 |
(let (($x1470 (not $x602))) |
|
2073 |
(let (($x903 (not $x669))) |
|
2074 |
(let (($x1469 (not $x651))) |
|
2075 |
(let (($x1471 (or $x1262 $x1469 $x657 $x903 $x1263 $x1402 $x1470 $x1092 $x1093 $x1392 $x814 $x957 $x958))) |
|
2076 |
(let ((@x1473 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1 -1 -1 1 1 1 -1 -1 1 1 -1) $x1471) @x1468 @x853 @x835 @x730 @x1259 @x832 (unit-resolution @x828 (unit-resolution @x599 @x1453 $x596) $x669) @x1272 @x1442 @x1090 @x1255 @x1439 $x1262))) |
|
2077 |
(let ((@x1476 (unit-resolution @x647 (unit-resolution @x649 (unit-resolution @x1313 @x1473 $x1136) $x313) $x644))) |
|
2078 |
(let ((@x1478 ((_ th-lemma arith farkas -1 -1 -2 -1 -1 1 1 1 -1 -1 1 1 -1 1) @x1259 @x1468 (unit-resolution @x649 (unit-resolution @x1313 @x1473 $x1136) $x313) (unit-resolution @x828 (unit-resolution @x599 @x1453 $x596) $x669) @x1272 @x1255 @x832 @x1090 @x835 @x1439 @x730 @x1442 @x853 (unit-resolution @x1415 @x1476 $x1382) false))) |
|
2079 |
(let ((@x1479 (lemma @x1478 $x413))) |
|
2080 |
(let ((@x1536 (unit-resolution @x791 (unit-resolution @x607 @x1479 $x604) $x776))) |
|
2081 |
(let ((@x1515 (unit-resolution @x794 (unit-resolution @x607 @x1479 $x604) $x775))) |
|
2082 |
(let ((@x1360 (lemma ((_ th-lemma arith farkas 1 1 1 1 1) @x1188 @x763 @x799 @x845 @x1190 false) (or $x438 $x414 $x388)))) |
|
2083 |
(let ((@x1518 (unit-resolution @x693 (unit-resolution @x599 (unit-resolution @x1360 @x845 @x1479 $x438) $x596) $x678))) |
|
2084 |
(let ((@x1521 (unit-resolution (unit-resolution @x803 @x799 @x687 (or $x388 (not $x775) $x463 $x784)) @x1518 @x1515 @x845 $x463))) |
|
2085 |
(let ((@x1523 (unit-resolution @x1271 (unit-resolution @x591 @x1521 $x588) $x672))) |
|
2086 |
(let ((@x1524 (unit-resolution @x828 (unit-resolution @x599 (unit-resolution @x1360 @x845 @x1479 $x438) $x596) $x669))) |
|
2087 |
(let ((@x906 (hypothesis $x902))) |
|
2088 |
(let ((@x1366 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x779 $x364 $x1092)) (unit-resolution @x625 (unit-resolution @x909 @x906 $x823) $x363) @x906 $x1092))) |
|
2089 |
(let ((@x1367 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x909 @x906 $x823) $x363) $x620))) |
|
2090 |
(let ((@x1369 (lemma (unit-resolution @x865 @x1367 @x1366 false) $x779))) |
|
2091 |
(let ((@x1483 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1) (or $x902 $x338 $x1093 $x872 $x743 $x414)) @x835 @x1369 @x698 (or $x338 $x872 $x414)))) |
|
2092 |
(let ((@x1486 (unit-resolution @x1118 (unit-resolution @x631 (unit-resolution @x1483 @x1140 @x1479 $x338) $x628) $x663))) |
|
2093 |
(let ((@x1489 (unit-resolution ((_ th-lemma arith assign-bounds 1 2 2 2 2 2) (or $x872 $x957 $x1200 $x1199 $x288 $x1092 $x1093)) @x1371 @x1130 @x835 @x1140 @x1113 @x1486 $x1092))) |
|
2094 |
(let ((@x1495 (unit-resolution (unit-resolution ((_ th-lemma arith assign-bounds 2 1) (or $x707 $x363 $x902)) @x1369 (or $x707 $x363)) (unit-resolution @x1381 @x1371 @x845 $x364) $x707))) |
|
2095 |
(let ((@x1500 (lemma (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x840 $x670)) @x1495 @x1489 false) (or $x288 $x388)))) |
|
2096 |
(let ((@x639 (def-axiom (or $x289 $x636)))) |
|
2097 |
(let ((@x1508 (unit-resolution @x1152 (unit-resolution @x639 (unit-resolution @x1500 @x845 $x288) $x636) $x660))) |
|
2098 |
(let ((@x1535 (unit-resolution @x1132 (unit-resolution @x631 (unit-resolution @x1483 @x1140 @x1479 $x338) $x628) $x667))) |
|
2099 |
(let ((@x1537 (unit-resolution @x1147 (unit-resolution @x639 (unit-resolution @x1500 @x845 $x288) $x636) $x661))) |
|
2100 |
(let (($x585 (= ?x98 ?x495))) |
|
2101 |
(let (($x1544 (not $x585))) |
|
2102 |
(let ((?x1502 (+ ?x98 ?x506))) |
|
2103 |
(let (($x1503 (<= ?x1502 0))) |
|
2104 |
(let (($x1548 (not $x1503))) |
|
2105 |
(let (($x1107 (not $x780))) |
|
2106 |
(let (($x1549 (or $x654 $x1548 $x903 $x1263 $x1402 $x1470 $x1391 $x817 $x818 $x733 $x814 $x1107 $x860 $x1404 $x958))) |
|
2107 |
(let ((@x1568 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 -1 1 2 -1 -1 1 -1 1 1 -1 1 -1) $x1549) @x1321 @x832 @x812 @x853 @x857 @x730 @x1255 @x731 @x1536 @x858 @x1251 @x900 @x1252 @x1287 $x1548))) |
|
2108 |
(let ((@x1566 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1544 $x1503)) (hypothesis $x585) (hypothesis $x1548) false))) |
|
2109 |
(let ((@x1567 (lemma @x1566 (or $x1544 $x1503)))) |
|
2110 |
(let ((@x575 (def-axiom (or $x488 $x585)))) |
|
2111 |
(let ((@x1571 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1567 @x1568 $x1544) $x488) $x584))) |
|
2112 |
(let ((@x1573 ((_ th-lemma arith farkas -1/2 1/2 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) @x1251 @x853 @x900 @x1252 @x1255 @x832 @x731 @x730 @x858 @x857 (unit-resolution @x1294 @x1571 $x1239) @x1287 @x1321 @x1536 @x812 (unit-resolution @x575 (unit-resolution @x1567 @x1568 $x1544) $x488) false))) |
|
2113 |
(let ((@x1575 (lemma @x1573 (or $x654 $x1107 $x903 $x1263 $x733 $x860)))) |
|
2114 |
(let ((@x1581 (unit-resolution @x1118 (unit-resolution @x631 (unit-resolution @x1483 @x867 @x1479 $x338) $x628) $x663))) |
|
2115 |
(let (($x800 (not $x775))) |
|
2116 |
(let (($x1583 (or $x1400 $x414 $x872 $x743 $x1142 $x1192 $x1200 $x1199 $x1401 $x653 $x1263 $x1402 $x800 $x801))) |
|
2117 |
(let ((@x1585 (unit-resolution ((_ th-lemma arith assign-bounds 2 1 -1 -1 1 -1 1 -1 1 1 -1 -1 1) $x1583) (hypothesis $x1304) @x1479 @x799 @x698 @x1130 @x1126 @x1255 @x1127 @x1515 @x867 @x1252 @x1581 @x1299 $x1400))) |
|
2118 |
(let (($x1504 (>= ?x1502 0))) |
|
2119 |
(let (($x1556 (not $x1504))) |
|
2120 |
(let (($x744 (not $x603))) |
|
2121 |
(let (($x1557 (or $x653 $x1556 $x784 $x871 $x815 $x744 $x1401 $x800 $x801 $x1142 $x1192 $x872 $x1200 $x1199 $x743))) |
|
2122 |
(let ((@x1586 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 -1 1 2 -1 -1 1 -1 1 1 -1 1 -1) $x1557) (hypothesis $x1304) @x687 @x799 @x698 @x1130 @x1126 @x720 @x1127 @x868 @x1515 @x869 @x867 @x1581 @x1299 $x1556))) |
|
2123 |
(let ((@x1577 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1544 $x1504)) (hypothesis $x585) (hypothesis $x1556) false))) |
|
2124 |
(let ((@x1578 (lemma @x1577 (or $x1544 $x1504)))) |
|
2125 |
(let ((@x1589 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1578 @x1586 $x1544) $x488) $x584))) |
|
2126 |
(let ((@x1592 (lemma (unit-resolution @x1301 @x1589 @x1585 false) (or $x653 $x1142 $x872 $x1263 $x784 $x871)))) |
|
2127 |
(let ((@x1594 (unit-resolution @x1592 @x1508 @x1140 @x1523 @x1518 (unit-resolution @x725 (unit-resolution @x591 @x1521 $x588) $x681) $x653))) |
|
2128 |
(let ((@x1595 (unit-resolution @x1307 @x1594 (unit-resolution @x1575 @x850 @x1524 @x1523 @x1537 @x1535 $x654) $x91))) |
|
2129 |
(let ((@x1597 (unit-resolution @x1280 (unit-resolution @x569 @x1595 $x583) (unit-resolution @x1238 (unit-resolution @x1500 @x845 $x288) $x658) $x766))) |
|
2130 |
(let ((@x1511 (unit-resolution (unit-resolution @x1202 @x1126 @x1130 (or $x363 $x313 $x1200 $x1142)) @x1027 @x1486 @x1508 $x313))) |
|
2131 |
(let (($x1501 (>= ?x778 0))) |
|
2132 |
(let ((@x1528 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x823 $x1501)) (unit-resolution @x625 @x1027 $x621) $x1501))) |
|
2133 |
(let (($x1529 (not $x1501))) |
|
2134 |
(let (($x1531 (or $x657 $x1529 $x742 $x1530 $x1469 $x1142 $x1192 $x1107 $x958 $x903 $x1263 $x1402 $x1470))) |
|
2135 |
(let ((@x1532 ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1 1 -1 1 1 1 -1 -1) $x1531))) |
|
2136 |
(let ((@x1533 (unit-resolution @x1532 @x1528 @x853 @x703 @x1126 @x1259 @x1255 @x1508 @x850 @x1524 @x1523 @x832 (unit-resolution @x1415 (unit-resolution @x647 @x1511 $x644) $x1382) $x657))) |
|
2137 |
(let ((@x1534 (unit-resolution @x1280 @x1533 (unit-resolution @x1238 (unit-resolution @x1500 @x845 $x288) $x658) $x92))) |
|
2138 |
(let (($x489 (not $x488))) |
|
2139 |
(let ((@x1541 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x489 $x1263 $x1402 $x1470 $x903 $x363 $x958 $x388 $x1107)) @x832 @x853 @x1255 (or $x489 $x1263 $x903 $x363 $x388 $x1107)))) |
|
2140 |
(let ((@x1543 (unit-resolution @x575 (unit-resolution @x1541 @x1027 @x845 @x850 @x1524 @x1523 $x489) $x585))) |
|
2141 |
(let ((@x1551 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 -1 1 2 -1 -1 1 -1 1 1 -1 1 -1) $x1549) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1544 $x1503)) @x1543 $x1503) @x832 @x812 @x853 @x857 @x730 @x1287 @x1537 @x1536 @x1535 @x850 @x1524 @x1523 @x1255 $x654))) |
|
2142 |
(let ((@x1559 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 -1 1 2 -1 -1 1 -1 1 1 -1 1 -1) $x1557) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1544 $x1504)) @x1543 $x1504) @x687 @x799 @x698 @x1130 @x1126 @x1299 @x1508 @x1518 @x1515 (unit-resolution @x725 (unit-resolution @x591 @x1521 $x588) $x681) @x1140 @x1486 @x720 $x653))) |
|
2143 |
(let ((@x1561 (unit-resolution @x569 (unit-resolution @x1307 @x1559 @x1551 $x91) @x1534 false))) |
|
2144 |
(let ((@x1599 (unit-resolution @x623 (unit-resolution (lemma @x1561 (or $x363 $x388)) @x845 $x363) $x620))) |
|
2145 |
(let ((@x1601 (unit-resolution @x1265 @x1597 @x1535 @x1537 @x1524 @x1523 @x850 (unit-resolution @x926 @x1599 $x670) $x1262))) |
|
2146 |
(let ((@x1604 (unit-resolution @x647 (unit-resolution @x649 (unit-resolution @x1313 @x1601 $x1136) $x313) $x644))) |
|
2147 |
(let ((@x1608 (unit-resolution ((_ th-lemma arith assign-bounds -2 2 -2 2 -2 -1) (or $x1501 $x733 $x814 $x860 $x1404 $x314 $x707)) (unit-resolution @x649 (unit-resolution @x1313 @x1601 $x1136) $x313) @x730 @x1537 (unit-resolution @x926 @x1599 $x670) @x1535 @x857 $x1501))) |
|
2148 |
(let ((@x1609 (unit-resolution @x1532 @x1608 (unit-resolution @x1415 @x1604 $x1382) @x853 @x703 @x1126 @x1259 @x1597 @x1508 @x850 @x1524 @x1523 @x832 @x1255 false))) |
|
2149 |
(let ((@x1610 (lemma @x1609 $x388))) |
|
2150 |
(let ((@x1615 (unit-resolution @x808 (unit-resolution @x615 @x1610 $x612) $x673))) |
|
2151 |
(let ((@x1808 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x439 $x706 $x817 $x818 $x743 $x1199 $x288 $x1626 $x338)) @x1371 @x698 @x1701 @x1130 @x812 @x1615 @x1536 @x1738 $x439))) |
|
2152 |
(let ((@x1781 (unit-resolution (unit-resolution ((_ th-lemma arith assign-bounds 2 1) (or $x707 $x363 $x902)) @x1369 (or $x707 $x363)) @x1027 $x707))) |
|
2153 |
(let (($x1637 (not $x629))) |
|
2154 |
(let ((@x1667 (unit-resolution ((_ th-lemma arith assign-bounds -1 1 -1 -1 1) (or $x1626 $x1199 $x288 $x1529 $x389 $x742)) @x1528 @x1130 @x1371 @x1610 @x703 $x1626))) |
|
2155 |
(let ((@x1670 (unit-resolution @x631 (unit-resolution @x633 (unit-resolution @x1641 @x1667 $x1637) $x338) $x628))) |
|
2156 |
(let ((@x1672 ((_ th-lemma arith farkas 1 1 1 1 1) @x1027 (unit-resolution @x1118 @x1670 $x663) @x1130 @x1371 (unit-resolution @x633 (unit-resolution @x1641 @x1667 $x1637) $x338) false))) |
|
2157 |
(let ((@x1711 (unit-resolution @x639 (unit-resolution (lemma @x1672 (or $x363 $x288)) @x1027 $x288) $x636))) |
|
2158 |
(let ((@x1712 (unit-resolution @x1152 @x1711 $x660))) |
|
2159 |
(let ((@x1618 (unit-resolution @x1438 (unit-resolution @x641 (unit-resolution @x1238 @x711 $x289) $x637) $x1370))) |
|
2160 |
(let ((@x1619 (unit-resolution @x1450 (unit-resolution @x641 (unit-resolution @x1238 @x711 $x289) $x637) $x1361))) |
|
2161 |
(let ((@x1616 (unit-resolution @x1238 @x711 $x289))) |
|
2162 |
(let ((@x1676 (unit-resolution @x623 (unit-resolution (lemma @x1672 (or $x363 $x288)) @x1616 $x363) $x620))) |
|
2163 |
(let ((@x1677 (unit-resolution @x926 @x1676 $x670))) |
|
2164 |
(let ((@x1611 (unit-resolution @x950 (unit-resolution @x615 @x1610 $x612) $x936))) |
|
2165 |
(let ((@x1643 (unit-resolution (unit-resolution @x960 @x853 @x799 (or $x363 $x957 $x438 $x800)) @x763 @x1611 @x1515 $x363))) |
|
2166 |
(let ((@x1645 (unit-resolution @x926 (unit-resolution @x623 @x1643 $x620) $x670))) |
|
2167 |
(let ((@x1612 (hypothesis $x875))) |
|
2168 |
(let ((@x1613 (hypothesis $x675))) |
|
2169 |
(let ((@x1622 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x313 $x707 $x742 $x288 $x1192 $x414 $x1403 $x706 $x743)) @x683 @x703 @x1616 @x1126 @x1479 @x1615 @x698 @x1619 $x313))) |
|
2170 |
(let ((@x1625 ((_ th-lemma arith assign-bounds -1 1 1 -1 -1 -1 1 1 -1 -3 3 1 2 -2 -2 2) (unit-resolution @x1169 (unit-resolution @x647 @x1622 $x644) $x664) @x715 @x711 @x720 @x687 @x683 @x703 @x730 @x1618 @x1615 @x698 @x1613 @x1612 @x1130 @x1536 @x812 $x871))) |
|
2171 |
(let ((@x1628 ((_ th-lemma arith assign-bounds 1 1 1 1 2 2 1 1 1 1 1) (or $x463 $x744 $x745 $x707 $x742 $x706 $x743 $x1626 $x1199 $x817 $x818 $x288)))) |
|
2172 |
(let ((@x1629 (unit-resolution @x1628 @x1612 @x812 @x698 @x703 @x1130 @x1616 @x1615 @x683 @x1613 @x1536 @x687 $x463))) |
|
2173 |
(let ((@x1633 (lemma (unit-resolution @x725 (unit-resolution @x591 @x1629 $x588) @x1625 false) (or $x1626 $x658 $x707 $x745)))) |
|
2174 |
(let ((@x1648 (unit-resolution @x633 (unit-resolution @x1641 (unit-resolution @x1633 @x1645 @x711 @x941 $x1626) $x1637) $x338))) |
|
2175 |
(let ((@x1650 ((_ th-lemma arith assign-bounds -1 -2 -2 2 -2 2) (or $x1024 $x817 $x339 $x707 $x742 $x706 $x743)))) |
|
2176 |
(let ((@x1653 (unit-resolution @x747 @x687 @x698 @x703 (or $x463 $x707 $x339 $x706 $x745 $x438)))) |
|
2177 |
(let ((@x1662 (unit-resolution @x1422 (unit-resolution @x1132 (unit-resolution @x631 @x1648 $x628) $x667) (unit-resolution @x1118 (unit-resolution @x631 @x1648 $x628) $x663) @x1618 @x763 @x1611 (unit-resolution @x865 (unit-resolution @x623 @x1643 $x620) $x840) (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x933 $x414 $x800)) @x1515 @x1479 $x933) @x1619 @x1645 @x1615 (unit-resolution @x1653 @x1648 @x941 @x1645 @x1615 @x763 $x463) (unit-resolution @x1650 @x1648 @x703 @x1615 @x1645 @x1536 @x698 $x1024) false))) |
|
2178 |
(let ((@x1678 (unit-resolution (lemma @x1662 (or $x438 $x658)) @x711 $x438))) |
|
2179 |
(let ((@x1683 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x675 $x439 $x784)) (unit-resolution @x693 (unit-resolution @x599 @x1678 $x596) $x678) @x1678 $x675))) |
|
2180 |
(let ((@x1686 (unit-resolution @x633 (unit-resolution @x1641 (unit-resolution @x1633 @x1677 @x711 @x1683 $x1626) $x1637) $x338))) |
|
2181 |
(let ((@x1692 (unit-resolution @x591 (unit-resolution @x709 @x1686 @x1615 @x1678 @x1677 $x463) $x588))) |
|
2182 |
(let ((@x1694 (unit-resolution @x1433 (unit-resolution @x725 @x1692 $x681) (unit-resolution @x1118 (unit-resolution @x631 @x1686 $x628) $x663) @x1615 @x1611 @x711 @x1678 (unit-resolution @x865 @x1676 $x840) (unit-resolution @x1650 @x1686 @x703 @x1615 @x1677 @x1536 @x698 $x1024) @x1677 @x1619 @x1618 false))) |
|
2183 |
(let ((@x1695 (lemma @x1694 $x658))) |
|
2184 |
(let ((@x1698 (unit-resolution (unit-resolution @x960 @x853 @x799 (or $x363 $x957 $x438 $x800)) @x1027 @x1611 @x1515 $x438))) |
|
2185 |
(let ((@x1700 (unit-resolution @x828 (unit-resolution @x599 @x1698 $x596) $x669))) |
|
2186 |
(let ((@x1704 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x464 $x1470 $x817 $x818 $x903 $x338 $x1093 $x363 $x902)) @x1701 @x812 @x1027 @x835 @x832 @x1536 @x1700 @x1369 $x464))) |
|
2187 |
(let ((@x1708 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x589) $x1697)) (unit-resolution @x593 @x1704 $x589) $x1697))) |
|
2188 |
(let ((@x1709 (unit-resolution @x693 (unit-resolution @x599 @x1698 $x596) $x678))) |
|
2189 |
(let ((@x1714 (unit-resolution @x1194 @x1126 (or $x338 $x313 $x1142 $x289)))) |
|
2190 |
(let ((@x1715 (unit-resolution @x1714 @x1701 @x1712 (unit-resolution (lemma @x1672 (or $x363 $x288)) @x1027 $x288) $x313))) |
|
2191 |
(let ((@x1717 (unit-resolution @x1415 (unit-resolution @x647 @x1715 $x644) $x1382))) |
|
2192 |
(let (($x1718 (not $x1697))) |
|
2193 |
(let (($x1719 (or $x657 $x1718 $x744 $x1530 $x1469 $x1402 $x957 $x958 $x784 $x800 $x801 $x742 $x1529 $x1142 $x1192))) |
|
2194 |
(let ((@x1721 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 -1 1 -1 -1 1 -1 -2 2 -1 1 -1 1) $x1719) @x1717 @x799 @x853 @x703 @x1126 @x1259 @x1255 @x1712 @x1709 @x1515 @x1611 @x1528 @x687 @x1708 $x657))) |
|
2195 |
(let (($x1696 (>= ?x666 0))) |
|
2196 |
(let ((@x1726 ((_ th-lemma arith triangle-eq) (or $x1637 $x1696)))) |
|
2197 |
(let ((@x1727 (unit-resolution @x1726 (unit-resolution @x633 @x1701 $x629) $x1696))) |
|
2198 |
(let ((@x1730 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1) (or $x488 $x1530 $x1469 $x710 $x338 $x1142 $x1192)) @x1701 @x1126 @x1259 @x1695 @x1712 @x1717 $x488))) |
|
2199 |
(let (($x1733 (not $x1696))) |
|
2200 |
(let (($x1734 (or $x654 $x1324 $x1391 $x1530 $x1469 $x710 $x1470 $x817 $x818 $x903 $x1093 $x902 $x1733 $x1404))) |
|
2201 |
(let ((@x1736 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 -1 -1 1 -1 1) $x1734) (unit-resolution @x1294 (unit-resolution @x573 @x1730 $x584) $x1239) @x812 @x835 @x857 @x1259 @x1287 @x1695 @x1536 @x1700 @x1369 @x832 @x1717 @x1727 $x654))) |
|
2202 |
(let (($x1740 (or $x653 $x1400 $x1401 $x734 $x816 $x766 $x744 $x800 $x801 $x784 $x742 $x1529 $x1626 $x1199))) |
|
2203 |
(let ((@x1742 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 -1 -1 1 -1 1) $x1740) @x1721 @x799 @x703 @x1130 @x715 @x1299 @x687 (unit-resolution @x1169 (unit-resolution @x647 @x1715 $x644) $x664) @x1709 @x1515 @x1738 (unit-resolution @x1301 (unit-resolution @x573 @x1730 $x584) $x1240) @x1528 $x653))) |
|
2204 |
(let ((@x1743 (unit-resolution @x1307 @x1742 @x1736 (unit-resolution @x569 (unit-resolution @x1280 @x1721 @x1695 $x92) $x582) false))) |
|
2205 |
(let ((@x1784 (unit-resolution @x631 (unit-resolution (lemma @x1743 (or $x338 $x363)) @x1027 $x338) $x628))) |
|
2206 |
(let ((@x1785 (unit-resolution @x1118 @x1784 $x663))) |
|
2207 |
(let ((@x1788 (unit-resolution ((_ th-lemma arith assign-bounds 2 2 2 2 2 1) (or $x1529 $x1142 $x1192 $x1200 $x1199 $x313 $x1092)) @x1785 @x1528 @x1712 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x840 $x670)) @x1781 $x840) @x1126 @x1130 $x313))) |
|
2208 |
(let ((@x1790 (unit-resolution @x1415 (unit-resolution @x647 @x1788 $x644) $x1382))) |
|
2209 |
(let ((@x1791 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x780 $x389 $x957)) @x1611 @x1610 $x780))) |
|
2210 |
(let ((@x1796 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2) (or $x875 $x1200 $x339)) (unit-resolution (lemma @x1743 (or $x338 $x363)) @x1027 $x338) @x1785 $x875))) |
|
2211 |
(let ((@x1750 (hypothesis $x1382))) |
|
2212 |
(let ((@x1747 ((_ th-lemma arith farkas 1 -1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -2 2 1) @x832 @x1287 @x1321 @x716 @x715 @x764 @x1536 @x812 @x900 @x835 @x1369 @x857 @x858 @x731 @x730 (hypothesis $x1503) false))) |
|
2213 |
(let ((@x1751 (unit-resolution (lemma @x1747 (or $x1548 $x654 $x734 $x766 $x903 $x860 $x733)) @x1321 @x716 @x764 @x900 @x858 @x731 $x1548))) |
|
2214 |
(let ((@x1754 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1567 @x1751 $x1544) $x488) $x584))) |
|
2215 |
(let ((@x1758 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 -2 2 2 -2 2) (or $x1696 $x860 $x489 $x734 $x816 $x766 $x733 $x814)) (unit-resolution @x575 (unit-resolution @x1567 @x1751 $x1544) $x488) @x715 @x764 @x731 @x716 @x858 @x730 $x1696))) |
|
2216 |
(let ((@x1759 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 -1 -1 1 -1 1) $x1734) @x1758 (unit-resolution @x1294 @x1754 $x1239) @x812 @x835 @x857 @x1259 @x1750 @x1695 @x1536 @x900 @x1369 @x1321 @x832 @x1287 false))) |
|
2217 |
(let ((@x1765 (unit-resolution (lemma @x1759 (or $x654 $x1530 $x903 $x766 $x733 $x734 $x860)) @x764 @x900 @x1750 @x731 @x716 @x858 $x654))) |
|
2218 |
(let ((@x1766 (unit-resolution @x1307 @x1765 (unit-resolution @x569 (unit-resolution @x1280 @x764 @x1695 $x92) $x582) $x1304))) |
|
2219 |
(let ((@x1767 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 -1 -1 1 -1 1) $x1740) @x1766 @x799 @x703 @x1130 @x715 @x1299 @x687 @x716 @x868 @x1515 @x1612 @x764 (hypothesis $x1501) $x1400))) |
|
2220 |
(let (($x1768 (or $x1556 $x744 $x1401 $x653 $x1530 $x1469 $x710 $x800 $x801 $x784 $x742 $x1529 $x1199 $x1200 $x1142 $x1192))) |
|
2221 |
(let ((@x1770 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -2 2) $x1768) @x1766 @x799 @x703 @x1130 @x1126 @x1259 @x687 @x1695 @x1127 @x868 @x1515 @x1214 (hypothesis $x1501) @x1750 @x1299 $x1556))) |
|
2222 |
(let ((@x1773 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1578 @x1770 $x1544) $x488) $x584))) |
|
2223 |
(let ((@x1776 (lemma (unit-resolution @x1301 @x1773 @x1767 false) (or $x766 $x1142 $x784 $x1200 $x1529 $x1530 $x734 $x1626 $x903 $x733 $x860)))) |
|
2224 |
(let ((@x1798 (unit-resolution @x1776 @x1712 @x1709 @x1785 @x1528 @x1790 (unit-resolution @x1169 (unit-resolution @x647 @x1788 $x644) $x664) @x1796 @x1700 (unit-resolution @x1147 @x1711 $x661) (unit-resolution @x1132 @x1784 $x667) $x766))) |
|
2225 |
(let ((@x1799 (unit-resolution @x1532 @x1798 @x853 @x703 @x1126 @x1259 @x1528 @x1712 @x1791 @x1700 @x1790 @x832 @x1255 $x1263))) |
|
2226 |
(let (($x759 (not $x589))) |
|
2227 |
(let ((@x1800 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 -1 1 -1 -1 1 -1 -2 2 -1 1 -1 1) $x1719) @x1798 @x799 @x853 @x703 @x1126 @x1259 @x1790 @x1712 @x1709 @x1515 @x1611 @x1528 @x687 @x1255 $x1718))) |
|
2228 |
(let ((@x1803 (unit-resolution @x591 (unit-resolution @x593 (unit-resolution @x1780 @x1800 $x759) $x463) $x588))) |
|
2229 |
(let ((@x1805 (lemma (unit-resolution @x1271 @x1803 @x1799 false) $x363))) |
|
2230 |
(let ((@x1812 (unit-resolution @x926 (unit-resolution @x623 @x1805 $x620) $x670))) |
|
2231 |
(let ((@x1814 (unit-resolution @x1628 @x812 @x698 @x703 @x1130 @x1615 @x1812 @x1536 @x687 (or $x463 $x745 $x1626 $x288)))) |
|
2232 |
(let ((@x1815 (unit-resolution @x1814 (unit-resolution @x740 (unit-resolution @x601 @x1808 $x597) $x675) @x1738 @x1371 $x463))) |
|
2233 |
(let ((@x1818 (unit-resolution @x865 (unit-resolution @x623 @x1805 $x620) $x840))) |
|
2234 |
(let ((@x1819 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x738 $x932)) (unit-resolution @x601 @x1808 $x597) $x932))) |
|
2235 |
(let ((@x1823 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x313 $x707 $x742 $x288 $x1192 $x414 $x1403 $x706 $x743)) @x703 @x1812 @x1126 @x1479 @x1615 @x698 (or $x313 $x288 $x1403)))) |
|
2236 |
(let ((@x1824 (unit-resolution @x1823 (unit-resolution @x1450 (unit-resolution @x641 @x1371 $x637) $x1361) @x1371 $x313))) |
|
2237 |
(let ((@x1827 ((_ th-lemma arith farkas -1 -3 3 -2 2 -2 2 -1 1 1 1 -1 1 -1 -1 1 1) @x1255 @x1611 @x853 @x1515 @x799 @x857 @x1727 (unit-resolution @x1415 (unit-resolution @x647 @x1824 $x644) $x1382) @x1259 @x1256 @x1126 (unit-resolution @x1450 (unit-resolution @x641 @x1371 $x637) $x1361) @x1819 @x1818 @x832 @x835 (unit-resolution @x1271 (unit-resolution @x591 @x1815 $x588) $x672) false))) |
|
2238 |
(let ((@x1829 (lemma @x1827 (or $x288 $x657 $x338)))) |
|
2239 |
(let ((@x1844 (unit-resolution @x1829 @x1701 @x1256 $x288))) |
|
2240 |
(let ((@x1848 (unit-resolution @x1208 @x1479 (or $x438 $x289 $x313)))) |
|
2241 |
(let ((@x1851 (unit-resolution @x1415 (unit-resolution @x647 (unit-resolution @x1848 @x1844 @x763 $x313) $x644) $x1382))) |
|
2242 |
(let ((@x1831 ((_ th-lemma arith farkas -1 1 -1 -1 1 1 1 -1 1 1 -1 -1 1) @x1255 @x1615 @x698 @x1750 @x1259 @x1256 @x1126 @x1613 @x1812 @x687 @x703 @x1127 (hypothesis $x1697) false))) |
|
2243 |
(let ((@x1833 (lemma @x1831 (or $x745 $x1530 $x657 $x1142 $x1718)))) |
|
2244 |
(let ((@x1852 (unit-resolution @x1833 (unit-resolution @x1152 (unit-resolution @x639 @x1844 $x636) $x660) @x1843 @x1256 @x1851 $x1718))) |
|
2245 |
(let ((@x1855 (unit-resolution @x591 (unit-resolution @x593 (unit-resolution @x1780 @x1852 $x759) $x463) $x588))) |
|
2246 |
(let ((@x1857 ((_ th-lemma arith farkas 1/2 -3/2 -1 1 3/2 -1 -1/2 -1/2 1/2 1 1/2 -1/2 -1/2 1/2 1/2 1/2 -1/2 1) @x966 @x1611 @x1515 @x799 @x853 @x857 @x1818 @x832 @x835 @x1727 (unit-resolution @x1271 @x1855 $x672) @x1255 @x1851 @x1259 @x1256 @x1126 (unit-resolution @x1152 (unit-resolution @x639 @x1844 $x636) $x660) @x1844 false))) |
|
2247 |
(let ((@x1868 (unit-resolution (lemma @x1857 (or $x338 $x657 $x438)) @x763 @x1256 $x338))) |
|
2248 |
(let ((@x1874 (unit-resolution ((_ th-lemma arith assign-bounds 2 2 2 2 2 1) (or $x1529 $x438 $x800 $x801 $x957 $x958 $x1092)) @x853 @x1515 @x1611 @x799 @x1818 (or $x1529 $x438)))) |
|
2249 |
(let (($x1436 (not $x637))) |
|
2250 |
(let ((@x1878 (unit-resolution (unit-resolution @x1650 @x703 @x1615 @x1812 @x1536 @x698 (or $x1024 $x339)) @x1868 $x1024))) |
|
2251 |
(let ((@x1881 (unit-resolution (unit-resolution @x1653 @x1812 @x1615 (or $x463 $x339 $x745 $x438)) @x1868 @x1843 @x763 $x463))) |
|
2252 |
(let ((@x1864 (unit-resolution @x1422 @x1611 @x1818 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x933 $x414 $x800)) @x1515 @x1479 $x933) @x1812 @x1615 (or $x438 $x1081 $x1392 $x1200 $x1403 $x860 $x464)))) |
|
2253 |
(let ((@x1865 (unit-resolution @x1864 (unit-resolution @x1438 (hypothesis $x637) $x1370) (unit-resolution @x1450 (hypothesis $x637) $x1361) @x763 @x1214 @x858 @x895 @x1314 false))) |
|
2254 |
(let ((@x1883 (unit-resolution (lemma @x1865 (or $x1436 $x438 $x1200 $x860 $x464 $x1081)) @x763 (unit-resolution @x1118 (unit-resolution @x631 @x1868 $x628) $x663) (unit-resolution @x1132 (unit-resolution @x631 @x1868 $x628) $x667) @x1881 @x1878 $x1436))) |
|
2255 |
(let ((@x1887 (unit-resolution ((_ th-lemma arith assign-bounds -2 2 -2 2 -2 -1) (or $x1501 $x733 $x814 $x860 $x1404 $x314 $x707)) @x1812 @x730 @x857 (or $x1501 $x733 $x860 $x314)))) |
|
2256 |
(let ((@x1888 (unit-resolution @x1887 (unit-resolution @x1848 (unit-resolution @x641 @x1883 $x288) @x763 $x313) (unit-resolution @x1874 @x763 $x1529) (unit-resolution @x1132 (unit-resolution @x631 @x1868 $x628) $x667) $x733))) |
|
2257 |
(let ((@x1890 (unit-resolution @x1147 (unit-resolution @x639 (unit-resolution @x641 @x1883 $x288) $x636) @x1888 false))) |
|
2258 |
(let ((@x1894 (unit-resolution (lemma @x1890 (or $x438 $x657)) @x1256 $x438))) |
|
2259 |
(let ((@x1897 (unit-resolution (unit-resolution @x709 @x1615 @x1812 (or $x463 $x339 $x439)) @x688 @x1894 $x339))) |
|
2260 |
(let ((@x1900 (unit-resolution @x1152 (unit-resolution @x639 (unit-resolution @x1829 @x1897 @x1256 $x288) $x636) $x660))) |
|
2261 |
(let ((@x1901 (unit-resolution @x1833 @x1900 @x1843 @x1256 (unit-resolution @x1780 (unit-resolution @x593 @x688 $x589) $x1697) $x1530))) |
|
2262 |
(let ((@x1902 (unit-resolution @x1714 @x1900 @x1897 (unit-resolution @x1829 @x1897 @x1256 $x288) $x313))) |
|
2263 |
(let ((@x1906 (lemma (unit-resolution @x1415 (unit-resolution @x647 @x1902 $x644) @x1901 false) (or $x463 $x657)))) |
|
2264 |
(let ((@x1909 (unit-resolution @x1271 (unit-resolution @x591 (unit-resolution @x1906 @x1256 $x463) $x588) $x672))) |
|
2265 |
(let ((@x1914 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 -2 2 2 -2) (or $x1501 $x707 $x706 $x817 $x818 $x743 $x439)) @x1894 @x698 @x1615 @x1812 @x1536 @x812 $x1501))) |
|
2266 |
(let ((@x1917 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 2 -2 2 -2) (or $x839 $x706 $x817 $x818 $x903 $x1470 $x464)) (unit-resolution @x1906 @x1256 $x463) @x812 @x1615 @x1536 @x832 (unit-resolution @x828 (unit-resolution @x599 @x1894 $x596) $x669) $x839))) |
|
2267 |
(let ((@x1921 (unit-resolution @x631 (unit-resolution (unit-resolution @x1483 @x1479 (or $x338 $x872)) @x1917 $x338) $x628))) |
|
2268 |
(let ((@x1924 (unit-resolution ((_ th-lemma arith assign-bounds 1 2 2 2 2 2) (or $x872 $x957 $x1200 $x1199 $x288 $x1092 $x1093)) @x1130 @x835 @x1611 @x1818 (or $x872 $x1200 $x288)))) |
|
2269 |
(let ((@x1926 (unit-resolution @x639 (unit-resolution @x1924 (unit-resolution @x1118 @x1921 $x663) @x1917 $x288) $x636))) |
|
2270 |
(let ((@x1929 (unit-resolution @x1532 @x853 @x703 @x1126 @x1259 @x1791 @x832 @x1255 (or $x657 $x1529 $x1530 $x1142 $x903 $x1263)))) |
|
2271 |
(let ((@x1930 (unit-resolution @x1929 (unit-resolution @x1152 @x1926 $x660) @x1256 @x1914 (unit-resolution @x828 (unit-resolution @x599 @x1894 $x596) $x669) @x1909 $x1530))) |
|
2272 |
(let ((@x1932 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1 -1 1 1 1 -1 1 -1) (or $x706 $x743 $x313 $x1142 $x1192 $x817 $x1199 $x1200 $x439 $x818)) @x698 @x1130 @x1126 @x812 (or $x706 $x313 $x1142 $x817 $x1200 $x439)))) |
|
2273 |
(let ((@x1935 (unit-resolution (unit-resolution @x1932 @x1536 @x1615 (or $x313 $x1142 $x1200 $x439)) (unit-resolution @x1152 @x1926 $x660) (unit-resolution @x1118 @x1921 $x663) @x1894 $x313))) |
|
2274 |
(let ((@x1938 (lemma (unit-resolution @x1415 (unit-resolution @x647 @x1935 $x644) @x1930 false) $x657))) |
|
2275 |
(let ((@x1942 (unit-resolution @x569 (unit-resolution (unit-resolution @x1280 @x1695 (or $x92 $x766)) @x1938 $x92) $x582))) |
|
2276 |
(let ((@x1943 (unit-resolution (unit-resolution @x1653 @x1812 @x1615 (or $x463 $x339 $x745 $x438)) @x688 @x1843 @x763 $x339))) |
|
2277 |
(let ((@x1947 (unit-resolution @x1814 (unit-resolution @x1641 (unit-resolution @x633 @x1943 $x629) $x875) @x1843 @x688 $x288))) |
|
2278 |
(let ((@x1950 (unit-resolution @x1415 (unit-resolution @x647 (unit-resolution @x1848 @x1947 @x763 $x313) $x644) $x1382))) |
|
2279 |
(let ((@x1954 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x488 $x463 $x813 $x815 $x438)) @x720 (or $x488 $x463 $x813 $x438)))) |
|
2280 |
(let ((@x1957 (unit-resolution @x1294 (unit-resolution @x573 (unit-resolution @x1954 @x762 @x763 @x688 $x488) $x584) $x1239))) |
|
2281 |
(let (($x1958 (not $x932))) |
|
2282 |
(let (($x1959 (or $x654 $x1324 $x1391 $x957 $x800 $x801 $x958 $x1404 $x1733 $x1092 $x1093 $x1958 $x1470 $x1530 $x1469 $x710))) |
|
2283 |
(let ((@x1961 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 2 1 -1 -2 1 -1 1 -1 -1 1 1 -1 -1) $x1959) @x1957 @x799 @x853 @x835 @x857 @x1259 @x1287 @x1695 @x1515 @x1611 @x966 @x1818 @x832 @x1950 (unit-resolution @x1726 (unit-resolution @x633 @x1943 $x629) $x1696) $x654))) |
|
2284 |
(let ((@x1962 (unit-resolution @x1301 (unit-resolution @x573 (unit-resolution @x1954 @x762 @x763 @x688 $x488) $x584) $x1240))) |
|
2285 |
(let ((@x1963 (unit-resolution @x1169 (unit-resolution @x647 (unit-resolution @x1848 @x1947 @x763 $x313) $x644) $x664))) |
|
2286 |
(let (($x1964 (or $x653 $x1400 $x1401 $x706 $x817 $x818 $x743 $x1199 $x1626 $x707 $x742 $x745 $x744 $x734 $x816 $x766))) |
|
2287 |
(let ((@x1966 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 2 1 -1 -2 1 -1 1 -1 -1 1 1 -1 -1) $x1964) @x1963 @x812 @x698 @x703 @x1130 @x715 @x1299 @x1938 @x687 @x1615 @x1812 @x1843 @x1536 (unit-resolution @x1641 (unit-resolution @x633 @x1943 $x629) $x875) @x1962 $x653))) |
|
2288 |
(let ((@x1992 (unit-resolution (lemma (unit-resolution @x1307 @x1966 @x1961 @x1942 false) (or $x463 $x438)) @x763 $x463))) |
|
2289 |
(let ((@x1995 (unit-resolution @x1387 (unit-resolution @x725 (unit-resolution @x591 @x1992 $x588) $x681) @x763 @x1992 $x488))) |
|
2290 |
(let ((@x1983 (unit-resolution @x1450 (unit-resolution @x641 (unit-resolution @x1848 @x1191 @x763 $x289) $x637) (unit-resolution @x1823 @x1191 (unit-resolution @x1848 @x1191 @x763 $x289) $x1403) false))) |
|
2291 |
(let ((@x1999 (unit-resolution @x647 (unit-resolution (lemma @x1983 (or $x313 $x438)) @x763 $x313) $x644))) |
|
2292 |
(let ((@x1971 (hypothesis $x932))) |
|
2293 |
(let ((@x1987 ((_ th-lemma arith assign-bounds 1 -1 1 1 -1 -1 -1 3 -3 1 -1 -1 1 2 -2 2) (unit-resolution @x1450 (hypothesis $x637) $x1361) @x1252 @x1255 (unit-resolution @x1415 @x1164 $x1382) @x1259 @x1695 @x1126 @x1611 @x853 @x1818 @x835 @x1971 @x832 @x1515 @x799 @x857 $x875))) |
|
2294 |
(let ((@x1988 ((_ th-lemma arith assign-bounds 1 -1 1 1 -1 -1 -1 3 -3 1 -1 -1 1 2 -2 2) (unit-resolution @x1438 (hypothesis $x637) $x1370) @x869 @x720 (unit-resolution @x1169 @x1164 $x664) @x715 @x1938 @x730 @x1615 @x698 @x1812 @x703 @x1843 @x687 @x1536 @x812 @x1130 $x1696))) |
|
2295 |
(let ((@x1974 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 2 1 -1 -2 1 -1 1 -1 -1 1 1 -1 -1) $x1964) (unit-resolution @x1169 @x1164 $x664) @x812 @x698 @x703 @x1130 @x715 @x1299 @x1938 @x687 @x1615 @x1812 @x1843 @x1536 @x1612 (hypothesis $x1240) $x653))) |
|
2296 |
(let ((@x1976 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 2 1 -1 -2 1 -1 1 -1 -1 1 1 -1 -1) $x1959) (unit-resolution @x1307 @x1974 @x1942 $x1305) @x799 @x853 @x835 @x857 @x1259 @x1287 @x1695 @x1515 @x1611 @x1971 @x1818 @x832 @x1322 (hypothesis $x1696) $x1530))) |
|
2297 |
(let ((@x1979 (lemma (unit-resolution @x1415 @x1164 @x1976 false) (or $x1165 $x1958 $x1324 $x1733 $x1626 $x1400)))) |
|
2298 |
(let ((@x1989 (unit-resolution @x1979 @x1988 @x1987 @x1322 @x1971 @x1164 (hypothesis $x1240) false))) |
|
2299 |
(let ((@x2002 (unit-resolution (lemma @x1989 (or $x1436 $x1324 $x1958 $x1165 $x1400 $x871 $x1263)) (unit-resolution @x1294 (unit-resolution @x573 @x1995 $x584) $x1239) @x966 @x1999 (unit-resolution @x1301 (unit-resolution @x573 @x1995 $x584) $x1240) (unit-resolution @x725 (unit-resolution @x591 @x1992 $x588) $x681) (unit-resolution @x1271 (unit-resolution @x591 @x1992 $x588) $x672) $x1436))) |
|
2300 |
(let ((@x2005 ((_ th-lemma arith assign-bounds -2 -1 1 2 -1 1 -1 1 1 -1 1) (or $x875 $x957 $x800 $x801 $x958 $x1404 $x289 $x1092 $x1093 $x1958 $x1470 $x464)))) |
|
2301 |
(let ((@x2006 (unit-resolution @x2005 (unit-resolution @x641 @x2002 $x288) @x799 @x853 @x835 @x857 @x832 @x1515 @x1992 @x1611 @x966 @x1818 $x875))) |
|
2302 |
(let ((@x2007 (unit-resolution @x1979 @x2006 (unit-resolution @x1294 (unit-resolution @x573 @x1995 $x584) $x1239) @x966 @x1999 (unit-resolution @x1301 (unit-resolution @x573 @x1995 $x584) $x1240) $x1733))) |
|
2303 |
(let ((@x2010 (unit-resolution @x1147 (unit-resolution @x639 (unit-resolution @x641 @x2002 $x288) $x636) $x661))) |
|
2304 |
(let ((@x2011 (unit-resolution @x774 @x2010 @x1938 @x763 (unit-resolution @x1169 @x1999 $x664) $x339))) |
|
2305 |
(let ((@x2014 (lemma (unit-resolution @x1726 (unit-resolution @x633 @x2011 $x629) @x2007 false) $x438))) |
|
2306 |
(let ((@x2021 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 -2 2 2 -2) (or $x1501 $x707 $x706 $x817 $x818 $x743 $x439)) @x2014 @x698 @x1615 @x1812 @x1536 @x812 $x1501))) |
|
2307 |
(let ((@x2017 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2) (or $x875 $x1200 $x339)) (unit-resolution @x633 (unit-resolution @x1641 @x1635 $x1637) $x338) @x1635 $x1200))) |
|
2308 |
(let ((@x2018 (unit-resolution @x631 (unit-resolution @x633 (unit-resolution @x1641 @x1635 $x1637) $x338) $x628))) |
|
2309 |
(let ((@x2020 (lemma (unit-resolution @x1118 @x2018 @x2017 false) $x875))) |
|
2310 |
(let ((@x2023 (unit-resolution ((_ th-lemma arith assign-bounds -1 1 -1 -1 1) (or $x1626 $x1199 $x288 $x1529 $x389 $x742)) @x1130 @x1610 @x703 (or $x1626 $x288 $x1529)))) |
|
2311 |
(let ((@x2026 (unit-resolution @x1152 (unit-resolution @x639 (unit-resolution @x2023 @x2020 @x2021 $x288) $x636) $x660))) |
|
2312 |
(let ((@x2027 (unit-resolution @x1714 @x1701 (unit-resolution @x2023 @x2020 @x2021 $x288) @x2026 $x313))) |
|
2313 |
(let ((@x2030 (unit-resolution @x828 (unit-resolution @x599 @x2014 $x596) $x669))) |
|
2314 |
(let ((@x2034 (unit-resolution ((_ th-lemma arith assign-bounds -2 2 -2 -2 2 -1) (or $x932 $x817 $x818 $x706 $x364 $x743 $x903)) @x698 @x812 (or $x932 $x817 $x706 $x364 $x903)))) |
|
2315 |
(let ((@x2037 (unit-resolution (unit-resolution @x2034 @x1536 @x1615 @x1805 (or $x932 $x903)) @x2030 $x932))) |
|
2316 |
(let ((@x2040 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1) (or $x488 $x1530 $x1469 $x710 $x338 $x1142 $x1192)) @x1126 @x1259 @x1695 (or $x488 $x1530 $x338 $x1142)))) |
|
2317 |
(let ((@x2041 (unit-resolution @x2040 (unit-resolution @x1415 (unit-resolution @x647 @x2027 $x644) $x1382) @x1701 @x2026 $x488))) |
|
2318 |
(let ((@x2045 (unit-resolution @x1979 (unit-resolution @x1301 (unit-resolution @x573 @x2041 $x584) $x1240) (unit-resolution @x1294 (unit-resolution @x573 @x2041 $x584) $x1239) @x2020 @x2037 (unit-resolution @x647 @x2027 $x644) @x1727 false))) |
|
2319 |
(let ((@x2046 (lemma @x2045 $x338))) |
|
2320 |
(let ((@x2049 (unit-resolution @x1147 (unit-resolution @x639 (unit-resolution @x2023 @x2020 @x2021 $x288) $x636) $x661))) |
|
2321 |
(let ((@x2050 (unit-resolution (unit-resolution @x709 @x1615 @x1812 (or $x463 $x339 $x439)) @x2046 @x2014 $x463))) |
|
2322 |
(let ((@x2055 (unit-resolution (unit-resolution @x1575 @x1791 (or $x654 $x903 $x1263 $x733 $x860)) (unit-resolution @x1271 (unit-resolution @x591 @x2050 $x588) $x672) @x2030 @x2049 (unit-resolution @x1132 (unit-resolution @x631 @x2046 $x628) $x667) $x654))) |
|
2323 |
(let ((@x2058 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 2 -2 2 -2) (or $x839 $x706 $x817 $x818 $x903 $x1470 $x464)) @x2050 @x812 @x1615 @x1536 @x832 @x2030 $x839))) |
|
2324 |
(let ((@x2059 (unit-resolution @x1592 (unit-resolution @x1271 (unit-resolution @x591 @x2050 $x588) $x672) @x2026 @x2058 (unit-resolution @x693 (unit-resolution @x599 @x2014 $x596) $x678) (unit-resolution @x725 (unit-resolution @x591 @x2050 $x588) $x681) $x653))) |
|
2325 |
(unit-resolution @x1307 @x2059 @x2055 @x1942 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2326 |
|
57204 | 2327 |
5c29815a1036cbd6b831d4adbe102069cf0d830f 20 0 |
56727 | 2328 |
unsat |
57170 | 2329 |
((set-logic AUFLIRA) |
56727 | 2330 |
(proof |
57170 | 2331 |
(let ((?x30 (* 2.0 x$))) |
2332 |
(let ((?x32 (+ ?x30 1.0))) |
|
2333 |
(let ((?x28 (+ x$ x$))) |
|
2334 |
(let (($x33 (< ?x28 ?x32))) |
|
2335 |
(let (($x34 (or false $x33))) |
|
2336 |
(let (($x35 (or $x33 $x34))) |
|
2337 |
(let (($x36 (not $x35))) |
|
2338 |
(let ((@x67 (monotonicity (rewrite (= (< ?x30 (+ 1.0 ?x30)) true)) (= (not (< ?x30 (+ 1.0 ?x30))) (not true))))) |
|
2339 |
(let ((@x71 (trans @x67 (rewrite (= (not true) false)) (= (not (< ?x30 (+ 1.0 ?x30))) false)))) |
|
2340 |
(let ((?x40 (+ 1.0 ?x30))) |
|
2341 |
(let (($x43 (< ?x30 ?x40))) |
|
2342 |
(let ((@x45 (monotonicity (rewrite (= ?x28 ?x30)) (rewrite (= ?x32 ?x40)) (= $x33 $x43)))) |
|
2343 |
(let ((@x52 (trans (monotonicity @x45 (= $x34 (or false $x43))) (rewrite (= (or false $x43) $x43)) (= $x34 $x43)))) |
|
2344 |
(let ((@x59 (trans (monotonicity @x45 @x52 (= $x35 (or $x43 $x43))) (rewrite (= (or $x43 $x43) $x43)) (= $x35 $x43)))) |
|
2345 |
(let ((@x62 (monotonicity @x59 (= $x36 (not $x43))))) |
|
2346 |
(mp (asserted $x36) (trans @x62 @x71 (= $x36 false)) false)))))))))))))))))) |
|
56727 | 2347 |
|
57204 | 2348 |
d2037888c28cf52f7a45f66288246169de6f14ad 113 0 |
56727 | 2349 |
unsat |
2350 |
((set-logic <null>) |
|
2351 |
(proof |
|
2352 |
(let ((?x228 (mod x$ 2))) |
|
2353 |
(let ((?x262 (* (- 1) ?x228))) |
|
2354 |
(let ((?x31 (mod$ x$ 2))) |
|
2355 |
(let ((?x263 (+ ?x31 ?x262))) |
|
2356 |
(let (($x280 (>= ?x263 0))) |
|
2357 |
(let (($x264 (= ?x263 0))) |
|
2358 |
(let (($x205 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x136 (mod ?v0 ?v1))) |
|
2359 |
(let ((?x93 (* (- 1) ?v1))) |
|
2360 |
(let ((?x90 (* (- 1) ?v0))) |
|
2361 |
(let ((?x144 (mod ?x90 ?x93))) |
|
2362 |
(let ((?x150 (* (- 1) ?x144))) |
|
2363 |
(let (($x111 (<= ?v1 0))) |
|
2364 |
(let ((?x170 (ite $x111 ?x150 ?x136))) |
|
2365 |
(let (($x78 (= ?v1 0))) |
|
2366 |
(let ((?x175 (ite $x78 ?v0 ?x170))) |
|
2367 |
(let ((?x135 (mod$ ?v0 ?v1))) |
|
2368 |
(= ?x135 ?x175))))))))))) :pattern ( (mod$ ?v0 ?v1) ))) |
|
2369 |
)) |
|
2370 |
(let (($x181 (forall ((?v0 Int) (?v1 Int) )(let ((?x136 (mod ?v0 ?v1))) |
|
2371 |
(let ((?x93 (* (- 1) ?v1))) |
|
2372 |
(let ((?x90 (* (- 1) ?v0))) |
|
2373 |
(let ((?x144 (mod ?x90 ?x93))) |
|
2374 |
(let ((?x150 (* (- 1) ?x144))) |
|
2375 |
(let (($x111 (<= ?v1 0))) |
|
2376 |
(let ((?x170 (ite $x111 ?x150 ?x136))) |
|
2377 |
(let (($x78 (= ?v1 0))) |
|
2378 |
(let ((?x175 (ite $x78 ?v0 ?x170))) |
|
2379 |
(let ((?x135 (mod$ ?v0 ?v1))) |
|
2380 |
(= ?x135 ?x175)))))))))))) |
|
2381 |
)) |
|
2382 |
(let ((?x136 (mod ?1 ?0))) |
|
2383 |
(let ((?x93 (* (- 1) ?0))) |
|
2384 |
(let ((?x90 (* (- 1) ?1))) |
|
2385 |
(let ((?x144 (mod ?x90 ?x93))) |
|
2386 |
(let ((?x150 (* (- 1) ?x144))) |
|
2387 |
(let (($x111 (<= ?0 0))) |
|
2388 |
(let ((?x170 (ite $x111 ?x150 ?x136))) |
|
2389 |
(let (($x78 (= ?0 0))) |
|
2390 |
(let ((?x175 (ite $x78 ?1 ?x170))) |
|
2391 |
(let ((?x135 (mod$ ?1 ?0))) |
|
2392 |
(let (($x178 (= ?x135 ?x175))) |
|
2393 |
(let (($x142 (forall ((?v0 Int) (?v1 Int) )(let (($x78 (= ?v1 0))) |
|
2394 |
(let ((?x140 (ite $x78 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1))))))) |
|
2395 |
(let ((?x135 (mod$ ?v0 ?v1))) |
|
2396 |
(= ?x135 ?x140))))) |
|
2397 |
)) |
|
2398 |
(let (($x164 (forall ((?v0 Int) (?v1 Int) )(let ((?x93 (* (- 1) ?v1))) |
|
2399 |
(let ((?x90 (* (- 1) ?v0))) |
|
2400 |
(let ((?x144 (mod ?x90 ?x93))) |
|
2401 |
(let ((?x150 (* (- 1) ?x144))) |
|
2402 |
(let ((?x136 (mod ?v0 ?v1))) |
|
2403 |
(let (($x79 (< 0 ?v1))) |
|
2404 |
(let ((?x155 (ite $x79 ?x136 ?x150))) |
|
2405 |
(let (($x78 (= ?v1 0))) |
|
2406 |
(let ((?x158 (ite $x78 ?v0 ?x155))) |
|
2407 |
(let ((?x135 (mod$ ?v0 ?v1))) |
|
2408 |
(= ?x135 ?x158)))))))))))) |
|
2409 |
)) |
|
2410 |
(let ((@x169 (monotonicity (rewrite (= (< 0 ?0) (not $x111))) (= (ite (< 0 ?0) ?x136 ?x150) (ite (not $x111) ?x136 ?x150))))) |
|
2411 |
(let ((@x174 (trans @x169 (rewrite (= (ite (not $x111) ?x136 ?x150) ?x170)) (= (ite (< 0 ?0) ?x136 ?x150) ?x170)))) |
|
2412 |
(let ((@x177 (monotonicity @x174 (= (ite $x78 ?1 (ite (< 0 ?0) ?x136 ?x150)) ?x175)))) |
|
2413 |
(let ((@x180 (monotonicity @x177 (= (= ?x135 (ite $x78 ?1 (ite (< 0 ?0) ?x136 ?x150))) $x178)))) |
|
2414 |
(let (($x79 (< 0 ?0))) |
|
2415 |
(let ((?x155 (ite $x79 ?x136 ?x150))) |
|
2416 |
(let ((?x158 (ite $x78 ?1 ?x155))) |
|
2417 |
(let (($x161 (= ?x135 ?x158))) |
|
2418 |
(let (($x162 (= (= ?x135 (ite $x78 ?1 (ite $x79 ?x136 (- (mod (- ?1) (- ?0)))))) $x161))) |
|
2419 |
(let ((@x146 (monotonicity (rewrite (= (- ?1) ?x90)) (rewrite (= (- ?0) ?x93)) (= (mod (- ?1) (- ?0)) ?x144)))) |
|
2420 |
(let ((@x154 (trans (monotonicity @x146 (= (- (mod (- ?1) (- ?0))) (- ?x144))) (rewrite (= (- ?x144) ?x150)) (= (- (mod (- ?1) (- ?0))) ?x150)))) |
|
2421 |
(let ((@x157 (monotonicity @x154 (= (ite $x79 ?x136 (- (mod (- ?1) (- ?0)))) ?x155)))) |
|
2422 |
(let ((@x160 (monotonicity @x157 (= (ite $x78 ?1 (ite $x79 ?x136 (- (mod (- ?1) (- ?0))))) ?x158)))) |
|
2423 |
(let ((@x185 (trans (quant-intro (monotonicity @x160 $x162) (= $x142 $x164)) (quant-intro @x180 (= $x164 $x181)) (= $x142 $x181)))) |
|
2424 |
(let ((@x196 (mp~ (mp (asserted $x142) @x185 $x181) (nnf-pos (refl (~ $x178 $x178)) (~ $x181 $x181)) $x181))) |
|
2425 |
(let ((@x210 (mp @x196 (quant-intro (refl (= $x178 $x178)) (= $x181 $x205)) $x205))) |
|
2426 |
(let (($x270 (or (not $x205) $x264))) |
|
2427 |
(let ((?x225 (* (- 1) 2))) |
|
2428 |
(let ((?x224 (* (- 1) x$))) |
|
2429 |
(let ((?x226 (mod ?x224 ?x225))) |
|
2430 |
(let ((?x227 (* (- 1) ?x226))) |
|
2431 |
(let (($x223 (<= 2 0))) |
|
2432 |
(let ((?x229 (ite $x223 ?x227 ?x228))) |
|
2433 |
(let (($x222 (= 2 0))) |
|
2434 |
(let ((?x230 (ite $x222 x$ ?x229))) |
|
2435 |
(let (($x231 (= ?x31 ?x230))) |
|
2436 |
(let ((@x244 (monotonicity (monotonicity (rewrite (= ?x225 (- 2))) (= ?x226 (mod ?x224 (- 2)))) (= ?x227 (* (- 1) (mod ?x224 (- 2))))))) |
|
2437 |
(let ((@x247 (monotonicity (rewrite (= $x223 false)) @x244 (= ?x229 (ite false (* (- 1) (mod ?x224 (- 2))) ?x228))))) |
|
2438 |
(let ((@x251 (trans @x247 (rewrite (= (ite false (* (- 1) (mod ?x224 (- 2))) ?x228) ?x228)) (= ?x229 ?x228)))) |
|
2439 |
(let ((@x254 (monotonicity (rewrite (= $x222 false)) @x251 (= ?x230 (ite false x$ ?x228))))) |
|
2440 |
(let ((@x261 (monotonicity (trans @x254 (rewrite (= (ite false x$ ?x228) ?x228)) (= ?x230 ?x228)) (= $x231 (= ?x31 ?x228))))) |
|
2441 |
(let ((@x274 (monotonicity (trans @x261 (rewrite (= (= ?x31 ?x228) $x264)) (= $x231 $x264)) (= (or (not $x205) $x231) $x270)))) |
|
2442 |
(let ((@x277 (trans @x274 (rewrite (= $x270 $x270)) (= (or (not $x205) $x231) $x270)))) |
|
2443 |
(let ((@x278 (mp ((_ quant-inst x$ 2) (or (not $x205) $x231)) @x277 $x270))) |
|
2444 |
(let ((@x337 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x264) $x280)) (unit-resolution @x278 @x210 $x264) $x280))) |
|
2445 |
(let (($x305 (>= ?x228 0))) |
|
2446 |
(let (($x64 (>= ?x31 0))) |
|
2447 |
(let (($x67 (not $x64))) |
|
2448 |
(let (($x36 (not (<= (+ x$ 1) (+ x$ (+ (* 2 ?x31) 1)))))) |
|
2449 |
(let ((@x69 (monotonicity (rewrite (= (>= (* 2 ?x31) 0) $x64)) (= (not (>= (* 2 ?x31) 0)) $x67)))) |
|
2450 |
(let ((?x32 (* 2 ?x31))) |
|
2451 |
(let ((?x47 (+ 1 x$ ?x32))) |
|
2452 |
(let (($x52 (<= (+ 1 x$) ?x47))) |
|
2453 |
(let (($x55 (not $x52))) |
|
2454 |
(let ((@x63 (monotonicity (rewrite (= $x52 (>= ?x32 0))) (= $x55 (not (>= ?x32 0)))))) |
|
2455 |
(let ((@x46 (monotonicity (rewrite (= (+ ?x32 1) (+ 1 ?x32))) (= (+ x$ (+ ?x32 1)) (+ x$ (+ 1 ?x32)))))) |
|
2456 |
(let ((@x51 (trans @x46 (rewrite (= (+ x$ (+ 1 ?x32)) ?x47)) (= (+ x$ (+ ?x32 1)) ?x47)))) |
|
2457 |
(let ((@x54 (monotonicity (rewrite (= (+ x$ 1) (+ 1 x$))) @x51 (= (<= (+ x$ 1) (+ x$ (+ ?x32 1))) $x52)))) |
|
2458 |
(let ((@x73 (trans (monotonicity @x54 (= $x36 $x55)) (trans @x63 @x69 (= $x55 $x67)) (= $x36 $x67)))) |
|
2459 |
(let ((@x74 (mp (asserted $x36) @x73 $x67))) |
|
2460 |
((_ th-lemma arith farkas -1 1 1) @x74 (unit-resolution ((_ th-lemma arith) (or false $x305)) (true-axiom true) $x305) @x337 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
2461 |
||
57204 | 2462 |
29e336c1b1dbb5e85401e6a2954560661ff3cadc 112 0 |
57170 | 2463 |
unsat |
2464 |
((set-logic <null>) |
|
2465 |
(proof |
|
2466 |
(let ((?x224 (mod x$ 2))) |
|
2467 |
(let (($x318 (>= ?x224 2))) |
|
2468 |
(let (($x319 (not $x318))) |
|
2469 |
(let ((?x258 (* (- 1) ?x224))) |
|
2470 |
(let ((?x29 (mod$ x$ 2))) |
|
2471 |
(let ((?x259 (+ ?x29 ?x258))) |
|
2472 |
(let (($x275 (<= ?x259 0))) |
|
2473 |
(let (($x260 (= ?x259 0))) |
|
2474 |
(let (($x201 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x132 (mod ?v0 ?v1))) |
|
2475 |
(let ((?x89 (* (- 1) ?v1))) |
|
2476 |
(let ((?x86 (* (- 1) ?v0))) |
|
2477 |
(let ((?x140 (mod ?x86 ?x89))) |
|
2478 |
(let ((?x146 (* (- 1) ?x140))) |
|
2479 |
(let (($x107 (<= ?v1 0))) |
|
2480 |
(let ((?x166 (ite $x107 ?x146 ?x132))) |
|
2481 |
(let (($x74 (= ?v1 0))) |
|
2482 |
(let ((?x171 (ite $x74 ?v0 ?x166))) |
|
2483 |
(let ((?x131 (mod$ ?v0 ?v1))) |
|
2484 |
(= ?x131 ?x171))))))))))) :pattern ( (mod$ ?v0 ?v1) ))) |
|
2485 |
)) |
|
2486 |
(let (($x177 (forall ((?v0 Int) (?v1 Int) )(let ((?x132 (mod ?v0 ?v1))) |
|
2487 |
(let ((?x89 (* (- 1) ?v1))) |
|
2488 |
(let ((?x86 (* (- 1) ?v0))) |
|
2489 |
(let ((?x140 (mod ?x86 ?x89))) |
|
2490 |
(let ((?x146 (* (- 1) ?x140))) |
|
2491 |
(let (($x107 (<= ?v1 0))) |
|
2492 |
(let ((?x166 (ite $x107 ?x146 ?x132))) |
|
2493 |
(let (($x74 (= ?v1 0))) |
|
2494 |
(let ((?x171 (ite $x74 ?v0 ?x166))) |
|
2495 |
(let ((?x131 (mod$ ?v0 ?v1))) |
|
2496 |
(= ?x131 ?x171)))))))))))) |
|
2497 |
)) |
|
2498 |
(let ((?x132 (mod ?1 ?0))) |
|
2499 |
(let ((?x89 (* (- 1) ?0))) |
|
2500 |
(let ((?x86 (* (- 1) ?1))) |
|
2501 |
(let ((?x140 (mod ?x86 ?x89))) |
|
2502 |
(let ((?x146 (* (- 1) ?x140))) |
|
2503 |
(let (($x107 (<= ?0 0))) |
|
2504 |
(let ((?x166 (ite $x107 ?x146 ?x132))) |
|
2505 |
(let (($x74 (= ?0 0))) |
|
2506 |
(let ((?x171 (ite $x74 ?1 ?x166))) |
|
2507 |
(let ((?x131 (mod$ ?1 ?0))) |
|
2508 |
(let (($x174 (= ?x131 ?x171))) |
|
2509 |
(let (($x138 (forall ((?v0 Int) (?v1 Int) )(let (($x74 (= ?v1 0))) |
|
2510 |
(let ((?x136 (ite $x74 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1))))))) |
|
2511 |
(let ((?x131 (mod$ ?v0 ?v1))) |
|
2512 |
(= ?x131 ?x136))))) |
|
2513 |
)) |
|
2514 |
(let (($x160 (forall ((?v0 Int) (?v1 Int) )(let ((?x89 (* (- 1) ?v1))) |
|
2515 |
(let ((?x86 (* (- 1) ?v0))) |
|
2516 |
(let ((?x140 (mod ?x86 ?x89))) |
|
2517 |
(let ((?x146 (* (- 1) ?x140))) |
|
2518 |
(let ((?x132 (mod ?v0 ?v1))) |
|
2519 |
(let (($x75 (< 0 ?v1))) |
|
2520 |
(let ((?x151 (ite $x75 ?x132 ?x146))) |
|
2521 |
(let (($x74 (= ?v1 0))) |
|
2522 |
(let ((?x154 (ite $x74 ?v0 ?x151))) |
|
2523 |
(let ((?x131 (mod$ ?v0 ?v1))) |
|
2524 |
(= ?x131 ?x154)))))))))))) |
|
2525 |
)) |
|
2526 |
(let ((@x165 (monotonicity (rewrite (= (< 0 ?0) (not $x107))) (= (ite (< 0 ?0) ?x132 ?x146) (ite (not $x107) ?x132 ?x146))))) |
|
2527 |
(let ((@x170 (trans @x165 (rewrite (= (ite (not $x107) ?x132 ?x146) ?x166)) (= (ite (< 0 ?0) ?x132 ?x146) ?x166)))) |
|
2528 |
(let ((@x173 (monotonicity @x170 (= (ite $x74 ?1 (ite (< 0 ?0) ?x132 ?x146)) ?x171)))) |
|
2529 |
(let ((@x176 (monotonicity @x173 (= (= ?x131 (ite $x74 ?1 (ite (< 0 ?0) ?x132 ?x146))) $x174)))) |
|
2530 |
(let (($x75 (< 0 ?0))) |
|
2531 |
(let ((?x151 (ite $x75 ?x132 ?x146))) |
|
2532 |
(let ((?x154 (ite $x74 ?1 ?x151))) |
|
2533 |
(let (($x157 (= ?x131 ?x154))) |
|
2534 |
(let (($x158 (= (= ?x131 (ite $x74 ?1 (ite $x75 ?x132 (- (mod (- ?1) (- ?0)))))) $x157))) |
|
2535 |
(let ((@x142 (monotonicity (rewrite (= (- ?1) ?x86)) (rewrite (= (- ?0) ?x89)) (= (mod (- ?1) (- ?0)) ?x140)))) |
|
2536 |
(let ((@x150 (trans (monotonicity @x142 (= (- (mod (- ?1) (- ?0))) (- ?x140))) (rewrite (= (- ?x140) ?x146)) (= (- (mod (- ?1) (- ?0))) ?x146)))) |
|
2537 |
(let ((@x153 (monotonicity @x150 (= (ite $x75 ?x132 (- (mod (- ?1) (- ?0)))) ?x151)))) |
|
2538 |
(let ((@x156 (monotonicity @x153 (= (ite $x74 ?1 (ite $x75 ?x132 (- (mod (- ?1) (- ?0))))) ?x154)))) |
|
2539 |
(let ((@x181 (trans (quant-intro (monotonicity @x156 $x158) (= $x138 $x160)) (quant-intro @x176 (= $x160 $x177)) (= $x138 $x177)))) |
|
2540 |
(let ((@x192 (mp~ (mp (asserted $x138) @x181 $x177) (nnf-pos (refl (~ $x174 $x174)) (~ $x177 $x177)) $x177))) |
|
2541 |
(let ((@x206 (mp @x192 (quant-intro (refl (= $x174 $x174)) (= $x177 $x201)) $x201))) |
|
2542 |
(let (($x266 (or (not $x201) $x260))) |
|
2543 |
(let ((?x221 (* (- 1) 2))) |
|
2544 |
(let ((?x220 (* (- 1) x$))) |
|
2545 |
(let ((?x222 (mod ?x220 ?x221))) |
|
2546 |
(let ((?x223 (* (- 1) ?x222))) |
|
2547 |
(let (($x219 (<= 2 0))) |
|
2548 |
(let ((?x225 (ite $x219 ?x223 ?x224))) |
|
2549 |
(let (($x218 (= 2 0))) |
|
2550 |
(let ((?x226 (ite $x218 x$ ?x225))) |
|
2551 |
(let (($x227 (= ?x29 ?x226))) |
|
2552 |
(let ((@x240 (monotonicity (monotonicity (rewrite (= ?x221 (- 2))) (= ?x222 (mod ?x220 (- 2)))) (= ?x223 (* (- 1) (mod ?x220 (- 2))))))) |
|
2553 |
(let ((@x243 (monotonicity (rewrite (= $x219 false)) @x240 (= ?x225 (ite false (* (- 1) (mod ?x220 (- 2))) ?x224))))) |
|
2554 |
(let ((@x247 (trans @x243 (rewrite (= (ite false (* (- 1) (mod ?x220 (- 2))) ?x224) ?x224)) (= ?x225 ?x224)))) |
|
2555 |
(let ((@x250 (monotonicity (rewrite (= $x218 false)) @x247 (= ?x226 (ite false x$ ?x224))))) |
|
2556 |
(let ((@x257 (monotonicity (trans @x250 (rewrite (= (ite false x$ ?x224) ?x224)) (= ?x226 ?x224)) (= $x227 (= ?x29 ?x224))))) |
|
2557 |
(let ((@x270 (monotonicity (trans @x257 (rewrite (= (= ?x29 ?x224) $x260)) (= $x227 $x260)) (= (or (not $x201) $x227) $x266)))) |
|
2558 |
(let ((@x273 (trans @x270 (rewrite (= $x266 $x266)) (= (or (not $x201) $x227) $x266)))) |
|
2559 |
(let ((@x274 (mp ((_ quant-inst x$ 2) (or (not $x201) $x227)) @x273 $x266))) |
|
2560 |
(let ((@x336 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x260) $x275)) (unit-resolution @x274 @x206 $x260) $x275))) |
|
2561 |
(let (($x63 (>= ?x29 2))) |
|
2562 |
(let ((?x37 (* 2 ?x29))) |
|
2563 |
(let (($x56 (>= ?x37 3))) |
|
2564 |
(let (($x46 (< (+ x$ ?x37) (+ 3 x$)))) |
|
2565 |
(let (($x49 (not $x46))) |
|
2566 |
(let ((@x58 (monotonicity (rewrite (= $x46 (not $x56))) (= $x49 (not (not $x56)))))) |
|
2567 |
(let ((@x67 (trans (trans @x58 (rewrite (= (not (not $x56)) $x56)) (= $x49 $x56)) (rewrite (= $x56 $x63)) (= $x49 $x63)))) |
|
2568 |
(let ((@x42 (monotonicity (rewrite (= (+ ?x29 ?x29) ?x37)) (= (+ x$ (+ ?x29 ?x29)) (+ x$ ?x37))))) |
|
2569 |
(let ((@x48 (monotonicity @x42 (rewrite (= (+ x$ 3) (+ 3 x$))) (= (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3)) $x46)))) |
|
2570 |
(let ((@x51 (monotonicity @x48 (= (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3))) $x49)))) |
|
2571 |
(let ((@x69 (trans @x51 @x67 (= (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3))) $x63)))) |
|
2572 |
(let ((@x70 (mp (asserted (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3)))) @x69 $x63))) |
|
2573 |
((_ th-lemma arith farkas -1 1 1) @x70 @x336 (unit-resolution ((_ th-lemma arith) (or false $x319)) (true-axiom true) $x319) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
2574 |
||
57204 | 2575 |
5bcedd8db3cccf5f1df2ef7ad1ca5e39c817a6f4 32 0 |
56727 | 2576 |
unsat |
2577 |
((set-logic <null>) |
|
2578 |
(proof |
|
2579 |
(let (($x28 (= x$ 0.0))) |
|
2580 |
(let (($x29 (not $x28))) |
|
2581 |
(let ((@x30 (asserted $x29))) |
|
2582 |
(let (($x101 (<= x$ 0.0))) |
|
2583 |
(let ((?x47 (* 2.0 x$))) |
|
2584 |
(let (($x99 (<= ?x47 0.0))) |
|
2585 |
(let (($x95 (= ?x47 0.0))) |
|
2586 |
(let (($x36 (< 1.0 (ite (< x$ 0.0) (- x$) x$)))) |
|
2587 |
(let (($x38 (or $x36 (not $x36)))) |
|
2588 |
(let ((?x41 (ite $x38 4.0 2.0))) |
|
2589 |
(let (($x45 (not (not (= (+ x$ x$) (* ?x41 x$)))))) |
|
2590 |
(let ((@x90 (rewrite (= (not (not (= ?x47 (* 4.0 x$)))) (= ?x47 (* 4.0 x$)))))) |
|
2591 |
(let (($x84 (= (not (= (+ x$ x$) (* ?x41 x$))) (not (= ?x47 (* 4.0 x$)))))) |
|
2592 |
(let (($x57 (< 1.0 (ite (< x$ 0.0) (* (- 1.0) x$) x$)))) |
|
2593 |
(let (($x55 (= (ite (< x$ 0.0) (- x$) x$) (ite (< x$ 0.0) (* (- 1.0) x$) x$)))) |
|
2594 |
(let ((@x59 (monotonicity (monotonicity (rewrite (= (- x$) (* (- 1.0) x$))) $x55) (= $x36 $x57)))) |
|
2595 |
(let ((@x65 (monotonicity @x59 (monotonicity @x59 (= (not $x36) (not $x57))) (= $x38 (or $x57 (not $x57)))))) |
|
2596 |
(let ((@x69 (trans @x65 (rewrite (= (or $x57 (not $x57)) true)) (= $x38 true)))) |
|
2597 |
(let ((@x76 (trans (monotonicity @x69 (= ?x41 (ite true 4.0 2.0))) (rewrite (= (ite true 4.0 2.0) 4.0)) (= ?x41 4.0)))) |
|
2598 |
(let ((@x82 (monotonicity (rewrite (= (+ x$ x$) ?x47)) (monotonicity @x76 (= (* ?x41 x$) (* 4.0 x$))) (= (= (+ x$ x$) (* ?x41 x$)) (= ?x47 (* 4.0 x$)))))) |
|
2599 |
(let ((@x88 (monotonicity (monotonicity @x82 $x84) (= $x45 (not (not (= ?x47 (* 4.0 x$)))))))) |
|
2600 |
(let ((@x97 (trans (trans @x88 @x90 (= $x45 (= ?x47 (* 4.0 x$)))) (rewrite (= (= ?x47 (* 4.0 x$)) $x95)) (= $x45 $x95)))) |
|
2601 |
(let ((@x98 (mp (asserted $x45) @x97 $x95))) |
|
2602 |
(let ((@x110 (unit-resolution ((_ th-lemma arith assign-bounds 1) (or $x101 (not $x99))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x95) $x99)) @x98 $x99) $x101))) |
|
2603 |
(let (($x102 (>= x$ 0.0))) |
|
2604 |
(let (($x100 (>= ?x47 0.0))) |
|
2605 |
(let ((@x117 (unit-resolution ((_ th-lemma arith assign-bounds 1) (or $x102 (not $x100))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x95) $x100)) @x98 $x100) $x102))) |
|
2606 |
(unit-resolution ((_ th-lemma arith triangle-eq) (or $x28 (not $x101) (not $x102))) @x117 @x110 @x30 false)))))))))))))))))))))))))))))) |
|
2607 |
||
57204 | 2608 |
97186805a3315ef9a1cc4847a2e19a6d09c77915 236 0 |
56727 | 2609 |
unsat |
2610 |
((set-logic <null>) |
|
2611 |
(proof |
|
2612 |
(let ((?x410 (div n$ 2))) |
|
2613 |
(let ((?x704 (* (- 1) ?x410))) |
|
2614 |
(let ((?x381 (div n$ 4))) |
|
2615 |
(let ((?x601 (* (- 2) ?x381))) |
|
2616 |
(let ((?x329 (mod n$ 4))) |
|
2617 |
(let ((?x363 (* (- 1) ?x329))) |
|
2618 |
(let ((?x35 (mod$ n$ 4))) |
|
2619 |
(let ((?x705 (+ n$ ?x35 ?x363 ?x601 ?x704))) |
|
2620 |
(let (($x706 (>= ?x705 2))) |
|
2621 |
(let ((?x39 (mod$ n$ 2))) |
|
2622 |
(let (($x515 (>= ?x39 1))) |
|
2623 |
(let (($x725 (not $x515))) |
|
2624 |
(let (($x514 (<= ?x39 1))) |
|
2625 |
(let ((?x519 (mod n$ 2))) |
|
2626 |
(let ((?x534 (* (- 1) ?x519))) |
|
2627 |
(let ((?x535 (+ ?x39 ?x534))) |
|
2628 |
(let (($x408 (<= ?x535 0))) |
|
2629 |
(let (($x490 (= ?x535 0))) |
|
2630 |
(let (($x191 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x108 (mod ?v0 ?v1))) |
|
2631 |
(let ((?x65 (* (- 1) ?v1))) |
|
2632 |
(let ((?x62 (* (- 1) ?v0))) |
|
2633 |
(let ((?x116 (mod ?x62 ?x65))) |
|
2634 |
(let ((?x122 (* (- 1) ?x116))) |
|
2635 |
(let (($x83 (<= ?v1 0))) |
|
2636 |
(let ((?x142 (ite $x83 ?x122 ?x108))) |
|
2637 |
(let (($x50 (= ?v1 0))) |
|
2638 |
(let ((?x147 (ite $x50 ?v0 ?x142))) |
|
2639 |
(let ((?x107 (mod$ ?v0 ?v1))) |
|
2640 |
(= ?x107 ?x147))))))))))) :pattern ( (mod$ ?v0 ?v1) ))) |
|
2641 |
)) |
|
2642 |
(let (($x153 (forall ((?v0 Int) (?v1 Int) )(let ((?x108 (mod ?v0 ?v1))) |
|
2643 |
(let ((?x65 (* (- 1) ?v1))) |
|
2644 |
(let ((?x62 (* (- 1) ?v0))) |
|
2645 |
(let ((?x116 (mod ?x62 ?x65))) |
|
2646 |
(let ((?x122 (* (- 1) ?x116))) |
|
2647 |
(let (($x83 (<= ?v1 0))) |
|
2648 |
(let ((?x142 (ite $x83 ?x122 ?x108))) |
|
2649 |
(let (($x50 (= ?v1 0))) |
|
2650 |
(let ((?x147 (ite $x50 ?v0 ?x142))) |
|
2651 |
(let ((?x107 (mod$ ?v0 ?v1))) |
|
2652 |
(= ?x107 ?x147)))))))))))) |
|
2653 |
)) |
|
2654 |
(let ((?x108 (mod ?1 ?0))) |
|
2655 |
(let ((?x65 (* (- 1) ?0))) |
|
2656 |
(let ((?x62 (* (- 1) ?1))) |
|
2657 |
(let ((?x116 (mod ?x62 ?x65))) |
|
2658 |
(let ((?x122 (* (- 1) ?x116))) |
|
2659 |
(let (($x83 (<= ?0 0))) |
|
2660 |
(let ((?x142 (ite $x83 ?x122 ?x108))) |
|
2661 |
(let (($x50 (= ?0 0))) |
|
2662 |
(let ((?x147 (ite $x50 ?1 ?x142))) |
|
2663 |
(let ((?x107 (mod$ ?1 ?0))) |
|
2664 |
(let (($x150 (= ?x107 ?x147))) |
|
2665 |
(let (($x114 (forall ((?v0 Int) (?v1 Int) )(let (($x50 (= ?v1 0))) |
|
2666 |
(let ((?x112 (ite $x50 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1))))))) |
|
2667 |
(let ((?x107 (mod$ ?v0 ?v1))) |
|
2668 |
(= ?x107 ?x112))))) |
|
2669 |
)) |
|
2670 |
(let (($x136 (forall ((?v0 Int) (?v1 Int) )(let ((?x65 (* (- 1) ?v1))) |
|
2671 |
(let ((?x62 (* (- 1) ?v0))) |
|
2672 |
(let ((?x116 (mod ?x62 ?x65))) |
|
2673 |
(let ((?x122 (* (- 1) ?x116))) |
|
2674 |
(let ((?x108 (mod ?v0 ?v1))) |
|
2675 |
(let (($x51 (< 0 ?v1))) |
|
2676 |
(let ((?x127 (ite $x51 ?x108 ?x122))) |
|
2677 |
(let (($x50 (= ?v1 0))) |
|
2678 |
(let ((?x130 (ite $x50 ?v0 ?x127))) |
|
2679 |
(let ((?x107 (mod$ ?v0 ?v1))) |
|
2680 |
(= ?x107 ?x130)))))))))))) |
|
2681 |
)) |
|
2682 |
(let ((@x141 (monotonicity (rewrite (= (< 0 ?0) (not $x83))) (= (ite (< 0 ?0) ?x108 ?x122) (ite (not $x83) ?x108 ?x122))))) |
|
2683 |
(let ((@x146 (trans @x141 (rewrite (= (ite (not $x83) ?x108 ?x122) ?x142)) (= (ite (< 0 ?0) ?x108 ?x122) ?x142)))) |
|
2684 |
(let ((@x149 (monotonicity @x146 (= (ite $x50 ?1 (ite (< 0 ?0) ?x108 ?x122)) ?x147)))) |
|
2685 |
(let ((@x152 (monotonicity @x149 (= (= ?x107 (ite $x50 ?1 (ite (< 0 ?0) ?x108 ?x122))) $x150)))) |
|
2686 |
(let (($x51 (< 0 ?0))) |
|
2687 |
(let ((?x127 (ite $x51 ?x108 ?x122))) |
|
2688 |
(let ((?x130 (ite $x50 ?1 ?x127))) |
|
2689 |
(let (($x133 (= ?x107 ?x130))) |
|
2690 |
(let (($x134 (= (= ?x107 (ite $x50 ?1 (ite $x51 ?x108 (- (mod (- ?1) (- ?0)))))) $x133))) |
|
2691 |
(let ((@x118 (monotonicity (rewrite (= (- ?1) ?x62)) (rewrite (= (- ?0) ?x65)) (= (mod (- ?1) (- ?0)) ?x116)))) |
|
2692 |
(let ((@x126 (trans (monotonicity @x118 (= (- (mod (- ?1) (- ?0))) (- ?x116))) (rewrite (= (- ?x116) ?x122)) (= (- (mod (- ?1) (- ?0))) ?x122)))) |
|
2693 |
(let ((@x129 (monotonicity @x126 (= (ite $x51 ?x108 (- (mod (- ?1) (- ?0)))) ?x127)))) |
|
2694 |
(let ((@x132 (monotonicity @x129 (= (ite $x50 ?1 (ite $x51 ?x108 (- (mod (- ?1) (- ?0))))) ?x130)))) |
|
2695 |
(let ((@x157 (trans (quant-intro (monotonicity @x132 $x134) (= $x114 $x136)) (quant-intro @x152 (= $x136 $x153)) (= $x114 $x153)))) |
|
2696 |
(let ((@x168 (mp~ (mp (asserted $x114) @x157 $x153) (nnf-pos (refl (~ $x150 $x150)) (~ $x153 $x153)) $x153))) |
|
2697 |
(let ((@x196 (mp @x168 (quant-intro (refl (= $x150 $x150)) (= $x153 $x191)) $x191))) |
|
2698 |
(let (($x260 (not $x191))) |
|
2699 |
(let (($x541 (or $x260 $x490))) |
|
2700 |
(let ((?x211 (* (- 1) 2))) |
|
2701 |
(let ((?x222 (* (- 1) n$))) |
|
2702 |
(let ((?x517 (mod ?x222 ?x211))) |
|
2703 |
(let ((?x518 (* (- 1) ?x517))) |
|
2704 |
(let (($x209 (<= 2 0))) |
|
2705 |
(let ((?x520 (ite $x209 ?x518 ?x519))) |
|
2706 |
(let (($x208 (= 2 0))) |
|
2707 |
(let ((?x521 (ite $x208 n$ ?x520))) |
|
2708 |
(let (($x485 (= ?x39 ?x521))) |
|
2709 |
(let ((@x593 (monotonicity (monotonicity (rewrite (= ?x211 (- 2))) (= ?x517 (mod ?x222 (- 2)))) (= ?x518 (* (- 1) (mod ?x222 (- 2))))))) |
|
2710 |
(let ((@x221 (rewrite (= $x209 false)))) |
|
2711 |
(let ((@x596 (monotonicity @x221 @x593 (= ?x520 (ite false (* (- 1) (mod ?x222 (- 2))) ?x519))))) |
|
2712 |
(let ((@x599 (trans @x596 (rewrite (= (ite false (* (- 1) (mod ?x222 (- 2))) ?x519) ?x519)) (= ?x520 ?x519)))) |
|
2713 |
(let ((@x219 (rewrite (= $x208 false)))) |
|
2714 |
(let ((@x487 (trans (monotonicity @x219 @x599 (= ?x521 (ite false n$ ?x519))) (rewrite (= (ite false n$ ?x519) ?x519)) (= ?x521 ?x519)))) |
|
2715 |
(let ((@x538 (trans (monotonicity @x487 (= $x485 (= ?x39 ?x519))) (rewrite (= (= ?x39 ?x519) $x490)) (= $x485 $x490)))) |
|
2716 |
(let ((@x406 (trans (monotonicity @x538 (= (or $x260 $x485) $x541)) (rewrite (= $x541 $x541)) (= (or $x260 $x485) $x541)))) |
|
2717 |
(let ((@x407 (mp ((_ quant-inst n$ 2) (or $x260 $x485)) @x406 $x541))) |
|
2718 |
(let ((@x715 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x490) $x408)) (unit-resolution @x407 @x196 $x490) $x408))) |
|
2719 |
(let (($x303 (>= ?x519 2))) |
|
2720 |
(let (($x304 (not $x303))) |
|
2721 |
(let ((@x26 (true-axiom true))) |
|
2722 |
(let ((@x722 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x514 $x303 (not $x408))) (unit-resolution ((_ th-lemma arith) (or false $x304)) @x26 $x304) @x715 $x514))) |
|
2723 |
(let (($x41 (= ?x39 1))) |
|
2724 |
(let (($x169 (not $x41))) |
|
2725 |
(let ((?x42 (mod$ m$ 2))) |
|
2726 |
(let (($x43 (= ?x42 1))) |
|
2727 |
(let ((?x29 (+ n$ m$))) |
|
2728 |
(let ((?x214 (mod ?x29 2))) |
|
2729 |
(let ((?x253 (* (- 1) ?x214))) |
|
2730 |
(let ((?x31 (mod$ ?x29 2))) |
|
2731 |
(let ((?x603 (+ n$ m$ ?x31 ?x35 ?x253 (* (- 1) (div ?x29 2)) ?x363 ?x601 (* (- 1) (div m$ 2))))) |
|
2732 |
(let (($x604 (>= ?x603 2))) |
|
2733 |
(let (($x523 (>= ?x42 1))) |
|
2734 |
(let (($x609 (not $x523))) |
|
2735 |
(let (($x522 (<= ?x42 1))) |
|
2736 |
(let ((?x439 (mod m$ 2))) |
|
2737 |
(let ((?x466 (* (- 1) ?x439))) |
|
2738 |
(let ((?x467 (+ ?x42 ?x466))) |
|
2739 |
(let (($x482 (<= ?x467 0))) |
|
2740 |
(let (($x468 (= ?x467 0))) |
|
2741 |
(let (($x473 (or $x260 $x468))) |
|
2742 |
(let ((?x440 (ite $x209 (* (- 1) (mod (* (- 1) m$) ?x211)) ?x439))) |
|
2743 |
(let ((?x441 (ite $x208 m$ ?x440))) |
|
2744 |
(let (($x442 (= ?x42 ?x441))) |
|
2745 |
(let ((@x453 (rewrite (= (ite false (* (- 1) (mod (* (- 1) m$) (- 2))) ?x439) ?x439)))) |
|
2746 |
(let (($x447 (= (* (- 1) (mod (* (- 1) m$) ?x211)) (* (- 1) (mod (* (- 1) m$) (- 2)))))) |
|
2747 |
(let ((@x229 (rewrite (= ?x211 (- 2))))) |
|
2748 |
(let ((@x445 (monotonicity @x229 (= (mod (* (- 1) m$) ?x211) (mod (* (- 1) m$) (- 2)))))) |
|
2749 |
(let ((@x451 (monotonicity @x221 (monotonicity @x445 $x447) (= ?x440 (ite false (* (- 1) (mod (* (- 1) m$) (- 2))) ?x439))))) |
|
2750 |
(let ((@x458 (monotonicity @x219 (trans @x451 @x453 (= ?x440 ?x439)) (= ?x441 (ite false m$ ?x439))))) |
|
2751 |
(let ((@x465 (monotonicity (trans @x458 (rewrite (= (ite false m$ ?x439) ?x439)) (= ?x441 ?x439)) (= $x442 (= ?x42 ?x439))))) |
|
2752 |
(let ((@x477 (monotonicity (trans @x465 (rewrite (= (= ?x42 ?x439) $x468)) (= $x442 $x468)) (= (or $x260 $x442) $x473)))) |
|
2753 |
(let ((@x481 (mp ((_ quant-inst m$ 2) (or $x260 $x442)) (trans @x477 (rewrite (= $x473 $x473)) (= (or $x260 $x442) $x473)) $x473))) |
|
2754 |
(let ((@x277 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x468) $x482)) (unit-resolution @x481 @x196 $x468) $x482))) |
|
2755 |
(let ((@x386 (unit-resolution ((_ th-lemma arith) (or false (not (>= ?x439 2)))) @x26 (not (>= ?x439 2))))) |
|
2756 |
(let ((@x384 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x522 (>= ?x439 2) (not $x482))) @x386 @x277 $x522))) |
|
2757 |
(let ((@x564 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x43 (not $x522) $x609)) (hypothesis (not $x43)) (or (not $x522) $x609)))) |
|
2758 |
(let ((?x272 (div ?x29 2))) |
|
2759 |
(let ((?x288 (* (- 2) ?x272))) |
|
2760 |
(let ((?x289 (+ n$ m$ ?x253 ?x288))) |
|
2761 |
(let (($x294 (<= ?x289 0))) |
|
2762 |
(let (($x287 (= ?x289 0))) |
|
2763 |
(let ((@x617 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x287) $x294)) (unit-resolution ((_ th-lemma arith) (or false $x287)) @x26 $x287) $x294))) |
|
2764 |
(let (($x433 (<= ?x31 0))) |
|
2765 |
(let (($x32 (= ?x31 0))) |
|
2766 |
(let ((@x33 (asserted $x32))) |
|
2767 |
(let ((?x254 (+ ?x31 ?x253))) |
|
2768 |
(let (($x270 (<= ?x254 0))) |
|
2769 |
(let (($x255 (= ?x254 0))) |
|
2770 |
(let (($x261 (or $x260 $x255))) |
|
2771 |
(let ((?x215 (ite $x209 (* (- 1) (mod (* (- 1) ?x29) ?x211)) ?x214))) |
|
2772 |
(let ((?x216 (ite $x208 ?x29 ?x215))) |
|
2773 |
(let (($x217 (= ?x31 ?x216))) |
|
2774 |
(let (($x239 (= (ite false (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2))) ?x214) ?x214))) |
|
2775 |
(let (($x237 (= ?x215 (ite false (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2))) ?x214)))) |
|
2776 |
(let (($x234 (= (* (- 1) (mod (* (- 1) ?x29) ?x211)) (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2)))))) |
|
2777 |
(let ((@x232 (monotonicity (rewrite (= (* (- 1) ?x29) (+ ?x222 (* (- 1) m$)))) @x229 (= (mod (* (- 1) ?x29) ?x211) (mod (+ ?x222 (* (- 1) m$)) (- 2)))))) |
|
2778 |
(let ((@x242 (trans (monotonicity @x221 (monotonicity @x232 $x234) $x237) (rewrite $x239) (= ?x215 ?x214)))) |
|
2779 |
(let ((@x249 (trans (monotonicity @x219 @x242 (= ?x216 (ite false ?x29 ?x214))) (rewrite (= (ite false ?x29 ?x214) ?x214)) (= ?x216 ?x214)))) |
|
2780 |
(let ((@x259 (trans (monotonicity @x249 (= $x217 (= ?x31 ?x214))) (rewrite (= (= ?x31 ?x214) $x255)) (= $x217 $x255)))) |
|
2781 |
(let ((@x268 (trans (monotonicity @x259 (= (or $x260 $x217) $x261)) (rewrite (= $x261 $x261)) (= (or $x260 $x217) $x261)))) |
|
2782 |
(let ((@x269 (mp ((_ quant-inst (+ n$ m$) 2) (or $x260 $x217)) @x268 $x261))) |
|
2783 |
(let ((@x626 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x255) $x270)) (unit-resolution @x269 @x196 $x255) $x270))) |
|
2784 |
(let ((?x498 (+ m$ ?x466 (* (- 2) (div m$ 2))))) |
|
2785 |
(let (($x496 (= ?x498 0))) |
|
2786 |
(let ((@x633 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x496) (<= ?x498 0))) (unit-resolution ((_ th-lemma arith) (or false $x496)) @x26 $x496) (<= ?x498 0)))) |
|
2787 |
(let ((?x397 (* (- 4) ?x381))) |
|
2788 |
(let ((?x398 (+ n$ ?x363 ?x397))) |
|
2789 |
(let (($x403 (<= ?x398 0))) |
|
2790 |
(let (($x396 (= ?x398 0))) |
|
2791 |
(let ((@x640 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x396) $x403)) (unit-resolution ((_ th-lemma arith) (or false $x396)) @x26 $x396) $x403))) |
|
2792 |
(let ((?x364 (+ ?x35 ?x363))) |
|
2793 |
(let (($x379 (<= ?x364 0))) |
|
2794 |
(let (($x365 (= ?x364 0))) |
|
2795 |
(let (($x370 (or $x260 $x365))) |
|
2796 |
(let ((?x330 (ite (<= 4 0) (* (- 1) (mod ?x222 (* (- 1) 4))) ?x329))) |
|
2797 |
(let ((?x331 (ite (= 4 0) n$ ?x330))) |
|
2798 |
(let (($x332 (= ?x35 ?x331))) |
|
2799 |
(let ((@x342 (monotonicity (rewrite (= (* (- 1) 4) (- 4))) (= (mod ?x222 (* (- 1) 4)) (mod ?x222 (- 4)))))) |
|
2800 |
(let ((@x345 (monotonicity @x342 (= (* (- 1) (mod ?x222 (* (- 1) 4))) (* (- 1) (mod ?x222 (- 4))))))) |
|
2801 |
(let ((@x348 (monotonicity (rewrite (= (<= 4 0) false)) @x345 (= ?x330 (ite false (* (- 1) (mod ?x222 (- 4))) ?x329))))) |
|
2802 |
(let ((@x352 (trans @x348 (rewrite (= (ite false (* (- 1) (mod ?x222 (- 4))) ?x329) ?x329)) (= ?x330 ?x329)))) |
|
2803 |
(let ((@x355 (monotonicity (rewrite (= (= 4 0) false)) @x352 (= ?x331 (ite false n$ ?x329))))) |
|
2804 |
(let ((@x362 (monotonicity (trans @x355 (rewrite (= (ite false n$ ?x329) ?x329)) (= ?x331 ?x329)) (= $x332 (= ?x35 ?x329))))) |
|
2805 |
(let ((@x374 (monotonicity (trans @x362 (rewrite (= (= ?x35 ?x329) $x365)) (= $x332 $x365)) (= (or $x260 $x332) $x370)))) |
|
2806 |
(let ((@x378 (mp ((_ quant-inst n$ 4) (or $x260 $x332)) (trans @x374 (rewrite (= $x370 $x370)) (= (or $x260 $x332) $x370)) $x370))) |
|
2807 |
(let ((@x645 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x365) $x379)) (unit-resolution @x378 @x196 $x365) $x379))) |
|
2808 |
(let (($x435 (<= ?x35 3))) |
|
2809 |
(let (($x37 (= ?x35 3))) |
|
2810 |
(let ((@x38 (asserted $x37))) |
|
2811 |
(let ((@x655 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x468) (>= ?x467 0))) (unit-resolution @x481 @x196 $x468) (>= ?x467 0)))) |
|
2812 |
(let ((@x656 ((_ th-lemma arith farkas -1 1 -2 1 1 1 1 1 1 1) @x655 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x37) $x435)) @x38 $x435) (hypothesis $x604) @x645 @x640 @x633 @x626 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x32) $x433)) @x33 $x433) @x617 (hypothesis $x609) false))) |
|
2813 |
(let ((@x565 (unit-resolution (lemma @x656 (or (not $x604) $x523)) (unit-resolution @x564 @x384 $x609) (not $x604)))) |
|
2814 |
(let (($x295 (>= ?x289 0))) |
|
2815 |
(let ((@x566 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x287) $x295)) (unit-resolution ((_ th-lemma arith) (or false $x287)) @x26 $x287) $x295))) |
|
2816 |
(let (($x434 (>= ?x31 0))) |
|
2817 |
(let (($x271 (>= ?x254 0))) |
|
2818 |
(let ((@x531 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x255) $x271)) (unit-resolution @x269 @x196 $x255) $x271))) |
|
2819 |
(let ((@x537 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x496) (>= ?x498 0))) (unit-resolution ((_ th-lemma arith) (or false $x496)) @x26 $x496) (>= ?x498 0)))) |
|
2820 |
(let ((@x549 (unit-resolution ((_ th-lemma arith) (or false (>= ?x439 0))) @x26 (>= ?x439 0)))) |
|
2821 |
(let (($x404 (>= ?x398 0))) |
|
2822 |
(let ((@x552 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x396) $x404)) (unit-resolution ((_ th-lemma arith) (or false $x396)) @x26 $x396) $x404))) |
|
2823 |
(let (($x380 (>= ?x364 0))) |
|
57170 | 2824 |
(let ((@x273 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x365) $x380)) (unit-resolution @x378 @x196 $x365) $x380))) |
56727 | 2825 |
(let (($x436 (>= ?x35 3))) |
57170 | 2826 |
(let ((@x545 ((_ th-lemma arith farkas -1/2 -1/2 -1/2 -1/2 -1/2 -1/2 -1/2 -1/2 1) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x37) $x436)) @x38 $x436) @x273 @x552 @x549 @x537 @x531 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x32) $x434)) @x33 $x434) @x566 @x565 false))) |
56727 | 2827 |
(let (($x171 (or $x169 (not $x43)))) |
2828 |
(let ((@x177 (monotonicity (rewrite (= (and $x41 $x43) (not $x171))) (= (not (and $x41 $x43)) (not (not $x171)))))) |
|
2829 |
(let ((@x181 (trans @x177 (rewrite (= (not (not $x171)) $x171)) (= (not (and $x41 $x43)) $x171)))) |
|
2830 |
(let ((@x182 (mp (asserted (not (and $x41 $x43))) @x181 $x171))) |
|
2831 |
(let ((@x729 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x41 (not $x514) $x725)) (unit-resolution @x182 (lemma @x545 $x43) $x169) (or (not $x514) $x725)))) |
|
2832 |
(let ((?x420 (* (- 2) ?x410))) |
|
2833 |
(let ((?x421 (+ n$ ?x420 ?x534))) |
|
2834 |
(let (($x426 (<= ?x421 0))) |
|
2835 |
(let (($x419 (= ?x421 0))) |
|
2836 |
(let ((@x737 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x419) $x426)) (unit-resolution ((_ th-lemma arith) (or false $x419)) @x26 $x419) $x426))) |
|
2837 |
(let (($x409 (>= ?x535 0))) |
|
2838 |
(let ((@x741 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x490) $x409)) (unit-resolution @x407 @x196 $x490) $x409))) |
|
2839 |
(let ((@x742 ((_ th-lemma arith farkas -1 1 -2 1 1 1 1) @x741 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x37) $x435)) @x38 $x435) (hypothesis $x706) @x640 @x737 @x645 (unit-resolution @x729 @x722 $x725) false))) |
|
2840 |
(let (($x427 (>= ?x421 0))) |
|
2841 |
(let ((@x584 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x419) $x427)) (unit-resolution ((_ th-lemma arith) (or false $x419)) @x26 $x419) $x427))) |
|
2842 |
(let (($x542 (>= ?x519 0))) |
|
57170 | 2843 |
((_ th-lemma arith farkas -1/2 -1/2 -1/2 -1/2 -1/2 1) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x37) $x436)) @x38 $x436) @x552 (unit-resolution ((_ th-lemma arith) (or false $x542)) @x26 $x542) @x584 @x273 (lemma @x742 (not $x706)) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
56727 | 2844 |
|
57204 | 2845 |
dcc9b986d57d4904aeadc1233210450bb15df4d3 12 0 |
57170 | 2846 |
unsat |
2847 |
((set-logic AUFLIA) |
|
2848 |
(proof |
|
2849 |
(let (($x28 (exists ((?v0 Int) )false) |
|
2850 |
)) |
|
2851 |
(let (($x27 (not $x28))) |
|
2852 |
(let (($x29 (not $x27))) |
|
2853 |
(let ((@x35 (monotonicity (elim-unused (= $x28 false)) (= $x27 (not false))))) |
|
2854 |
(let ((@x42 (monotonicity (trans @x35 (rewrite (= (not false) true)) (= $x27 true)) (= $x29 (not true))))) |
|
2855 |
(let ((@x46 (trans @x42 (rewrite (= (not true) false)) (= $x29 false)))) |
|
2856 |
(mp (asserted $x29) @x46 false))))))))) |
|
2857 |
||
57204 | 2858 |
e33f4ac0207897c2b7abfeafedc87232f999a6d5 12 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2859 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2860 |
((set-logic AUFLIRA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2861 |
(proof |
56727 | 2862 |
(let (($x27 (exists ((?v0 Real) )false) |
2863 |
)) |
|
2864 |
(let (($x28 (not $x27))) |
|
2865 |
(let (($x29 (not $x28))) |
|
2866 |
(let ((@x35 (monotonicity (elim-unused (= $x27 false)) (= $x28 (not false))))) |
|
2867 |
(let ((@x42 (monotonicity (trans @x35 (rewrite (= (not false) true)) (= $x28 true)) (= $x29 (not true))))) |
|
2868 |
(let ((@x46 (trans @x42 (rewrite (= (not true) false)) (= $x29 false)))) |
|
2869 |
(mp (asserted $x29) @x46 false))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2870 |
|
57204 | 2871 |
ef29919c373b650f8005a5573289548ab716b089 22 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2872 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2873 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2874 |
(proof |
56727 | 2875 |
(let (($x52 (forall ((?v0 Int) )(<= ?v0 0)) |
2876 |
)) |
|
2877 |
(let (($x46 (forall ((?v0 Int) )(let (($x34 (<= ?v0 0))) |
|
2878 |
(let (($x35 (not $x34))) |
|
2879 |
(not $x35)))) |
|
2880 |
)) |
|
2881 |
(let ((@x54 (quant-intro (rewrite (= (not (not (<= ?0 0))) (<= ?0 0))) (= $x46 $x52)))) |
|
2882 |
(let (($x38 (exists ((?v0 Int) )(let (($x34 (<= ?v0 0))) |
|
2883 |
(not $x34))) |
|
2884 |
)) |
|
2885 |
(let (($x41 (not $x38))) |
|
2886 |
(let ((@x48 (nnf-neg (refl (~ (not (not (<= ?0 0))) (not (not (<= ?0 0))))) (~ $x41 $x46)))) |
|
2887 |
(let (($x29 (exists ((?v0 Int) )(< 0 ?v0)) |
|
2888 |
)) |
|
2889 |
(let (($x30 (not $x29))) |
|
2890 |
(let ((@x40 (quant-intro (rewrite (= (< 0 ?0) (not (<= ?0 0)))) (= $x29 $x38)))) |
|
2891 |
(let ((@x49 (mp~ (mp (asserted $x30) (monotonicity @x40 (= $x30 $x41)) $x41) @x48 $x46))) |
|
2892 |
(mp (mp @x49 @x54 $x52) (rewrite (= $x52 false)) false))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2893 |
|
57204 | 2894 |
4d3a976164de7ccb5d4650a113f067b8a1c55b22 22 0 |
56109 | 2895 |
unsat |
2896 |
((set-logic AUFLIRA) |
|
2897 |
(proof |
|
56727 | 2898 |
(let (($x51 (forall ((?v0 Real) )(<= ?v0 0.0)) |
2899 |
)) |
|
2900 |
(let (($x45 (forall ((?v0 Real) )(let (($x33 (<= ?v0 0.0))) |
|
2901 |
(let (($x34 (not $x33))) |
|
2902 |
(not $x34)))) |
|
2903 |
)) |
|
2904 |
(let ((@x53 (quant-intro (rewrite (= (not (not (<= ?0 0.0))) (<= ?0 0.0))) (= $x45 $x51)))) |
|
2905 |
(let (($x37 (exists ((?v0 Real) )(let (($x33 (<= ?v0 0.0))) |
|
2906 |
(not $x33))) |
|
2907 |
)) |
|
2908 |
(let (($x40 (not $x37))) |
|
2909 |
(let ((@x47 (nnf-neg (refl (~ (not (not (<= ?0 0.0))) (not (not (<= ?0 0.0))))) (~ $x40 $x45)))) |
|
2910 |
(let (($x28 (exists ((?v0 Real) )(< 0.0 ?v0)) |
|
2911 |
)) |
|
2912 |
(let (($x29 (not $x28))) |
|
2913 |
(let ((@x39 (quant-intro (rewrite (= (< 0.0 ?0) (not (<= ?0 0.0)))) (= $x28 $x37)))) |
|
2914 |
(let ((@x48 (mp~ (mp (asserted $x29) (monotonicity @x39 (= $x29 $x40)) $x40) @x47 $x45))) |
|
2915 |
(mp (mp @x48 @x53 $x51) (rewrite (= $x51 false)) false))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2916 |
|
57204 | 2917 |
f28123a872d014e01ec45f8bb7163bb037909301 31 0 |
56727 | 2918 |
unsat |
2919 |
((set-logic AUFLIA) |
|
2920 |
(declare-fun ?v0!0 () Int) |
|
2921 |
(proof |
|
2922 |
(let (($x71 (forall ((?v1 Int) )(<= (+ ?v1 (* (- 1) ?v0!0)) 0)) |
|
2923 |
)) |
|
2924 |
(let (($x63 (forall ((?v1 Int) )(not (not (<= (+ ?v1 (* (- 1) ?v0!0)) 0)))) |
|
2925 |
)) |
|
2926 |
(let (($x54 (<= (+ ?0 (* (- 1) ?v0!0)) 0))) |
|
2927 |
(let (($x60 (not (not $x54)))) |
|
2928 |
(let (($x46 (forall ((?v0 Int) )(exists ((?v1 Int) )(not (<= (+ ?v1 (* (- 1) ?v0)) 0))) |
|
2929 |
) |
|
2930 |
)) |
|
2931 |
(let (($x49 (not $x46))) |
|
2932 |
(let (($x56 (exists ((?v1 Int) )(let (($x54 (<= (+ ?v1 (* (- 1) ?v0!0)) 0))) |
|
2933 |
(not $x54))) |
|
2934 |
)) |
|
2935 |
(let ((@x67 (trans (sk (~ $x49 (not $x56))) (nnf-neg (refl (~ $x60 $x60)) (~ (not $x56) $x63)) (~ $x49 $x63)))) |
|
2936 |
(let (($x31 (forall ((?v0 Int) )(exists ((?v1 Int) )(< ?v0 ?v1)) |
|
2937 |
) |
|
2938 |
)) |
|
2939 |
(let (($x32 (not $x31))) |
|
2940 |
(let (($x43 (exists ((?v1 Int) )(not (<= (+ ?v1 (* (- 1) ?0)) 0))) |
|
2941 |
)) |
|
2942 |
(let (($x30 (exists ((?v1 Int) )(< ?0 ?v1)) |
|
2943 |
)) |
|
2944 |
(let ((@x42 (rewrite (= (< ?1 ?0) (not (<= (+ ?0 (* (- 1) ?1)) 0)))))) |
|
2945 |
(let ((@x51 (monotonicity (quant-intro (quant-intro @x42 (= $x30 $x43)) (= $x31 $x46)) (= $x32 $x49)))) |
|
2946 |
(let ((@x74 (mp (mp~ (mp (asserted $x32) @x51 $x49) @x67 $x63) (quant-intro (rewrite (= $x60 $x54)) (= $x63 $x71)) $x71))) |
|
2947 |
(mp @x74 (rewrite (= $x71 false)) false)))))))))))))))))) |
|
2948 |
||
57204 | 2949 |
574f579e644304e47945be9d8bd47347079730d4 22 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2950 |
unsat |
56109 | 2951 |
((set-logic AUFLIA) |
2952 |
(declare-fun ?v1!0 () Int) |
|
2953 |
(declare-fun ?v0!1 () Int) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2954 |
(proof |
56727 | 2955 |
(let (($x53 (= ?v1!0 1))) |
2956 |
(let (($x59 (not (or (not (and (= ?v0!1 0) $x53)) (not (= ?v0!1 ?v1!0)))))) |
|
2957 |
(let (($x43 (forall ((?v0 Int) (?v1 Int) )(or (not (and (= ?v0 0) (= ?v1 1))) (not (= ?v0 ?v1)))) |
|
2958 |
)) |
|
2959 |
(let (($x46 (not $x43))) |
|
2960 |
(let (($x36 (forall ((?v0 Int) (?v1 Int) )(=> (and (= ?v0 0) (= ?v1 1)) (not (= ?v0 ?v1)))) |
|
2961 |
)) |
|
2962 |
(let (($x37 (not $x36))) |
|
2963 |
(let (($x41 (= (=> (and (= ?1 0) (= ?0 1)) (not (= ?1 ?0))) (or (not (and (= ?1 0) (= ?0 1))) (not (= ?1 ?0)))))) |
|
2964 |
(let ((@x48 (monotonicity (quant-intro (rewrite $x41) (= $x36 $x43)) (= $x37 $x46)))) |
|
2965 |
(let ((@x65 (not-or-elim (mp~ (mp (asserted $x37) @x48 $x46) (sk (~ $x46 $x59)) $x59) (and (= ?v0!1 0) $x53)))) |
|
2966 |
(let ((@x67 (and-elim @x65 $x53))) |
|
2967 |
(let (($x56 (= ?v0!1 ?v1!0))) |
|
2968 |
(let ((@x68 (not-or-elim (mp~ (mp (asserted $x37) @x48 $x46) (sk (~ $x46 $x59)) $x59) $x56))) |
|
2969 |
(let ((@x70 (trans (symm (and-elim @x65 (= ?v0!1 0)) (= 0 ?v0!1)) @x68 (= 0 ?v1!0)))) |
|
2970 |
(mp (trans @x70 @x67 (= 0 1)) (rewrite (= (= 0 1) false)) false)))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2971 |
|
57204 | 2972 |
a24ff2e4a93d06b88e1d7717852cb82258ed11ed 55 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2973 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2974 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2975 |
(proof |
56727 | 2976 |
(let (($x35 (exists ((?v0 Int) )(forall ((?v1 Int) )(let (($x31 (<= 0 ?v1))) |
2977 |
(let (($x30 (< ?v1 0))) |
|
2978 |
(let (($x32 (or $x30 $x31))) |
|
2979 |
(let (($x29 (< ?v0 ?v1))) |
|
2980 |
(=> $x29 $x32)))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2981 |
) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2982 |
)) |
56727 | 2983 |
(let (($x36 (not $x35))) |
2984 |
(let (($x45 (exists ((?v0 Int) )(forall ((?v1 Int) )(let (($x31 (<= 0 ?v1))) |
|
2985 |
(let (($x30 (< ?v1 0))) |
|
2986 |
(let (($x32 (or $x30 $x31))) |
|
2987 |
(let (($x29 (< ?v0 ?v1))) |
|
2988 |
(let (($x38 (not $x29))) |
|
2989 |
(or $x38 $x32))))))) |
|
56111 | 2990 |
) |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
2991 |
)) |
56727 | 2992 |
(let (($x48 (not $x45))) |
2993 |
(let (($x88 (exists ((?v0 Int) )true) |
|
2994 |
)) |
|
2995 |
(let (($x42 (forall ((?v1 Int) )(let (($x31 (<= 0 ?v1))) |
|
2996 |
(let (($x30 (< ?v1 0))) |
|
2997 |
(let (($x32 (or $x30 $x31))) |
|
2998 |
(let (($x29 (< ?0 ?v1))) |
|
2999 |
(let (($x38 (not $x29))) |
|
3000 |
(or $x38 $x32))))))) |
|
3001 |
)) |
|
3002 |
(let (($x81 (forall ((?v1 Int) )true) |
|
3003 |
)) |
|
3004 |
(let (($x31 (<= 0 ?0))) |
|
3005 |
(let (($x30 (< ?0 0))) |
|
3006 |
(let (($x32 (or $x30 $x31))) |
|
3007 |
(let (($x29 (< ?1 ?0))) |
|
3008 |
(let (($x38 (not $x29))) |
|
3009 |
(let (($x39 (or $x38 $x32))) |
|
3010 |
(let (($x60 (<= (+ ?0 (* (- 1) ?1)) 0))) |
|
3011 |
(let ((@x78 (rewrite (= (or $x60 (or (not (>= ?0 0)) (>= ?0 0))) true)))) |
|
3012 |
(let ((@x73 (monotonicity (rewrite (= $x30 (not (>= ?0 0)))) (rewrite (= $x31 (>= ?0 0))) (= $x32 (or (not (>= ?0 0)) (>= ?0 0)))))) |
|
3013 |
(let ((@x66 (monotonicity (rewrite (= $x29 (not $x60))) (= $x38 (not (not $x60)))))) |
|
3014 |
(let ((@x76 (monotonicity (trans @x66 (rewrite (= (not (not $x60)) $x60)) (= $x38 $x60)) @x73 (= $x39 (or $x60 (or (not (>= ?0 0)) (>= ?0 0))))))) |
|
3015 |
(let ((@x87 (trans (quant-intro (trans @x76 @x78 (= $x39 true)) (= $x42 $x81)) (elim-unused (= $x81 true)) (= $x42 true)))) |
|
3016 |
(let ((@x94 (trans (quant-intro @x87 (= $x45 $x88)) (elim-unused (= $x88 true)) (= $x45 true)))) |
|
3017 |
(let ((@x101 (trans (monotonicity @x94 (= $x48 (not true))) (rewrite (= (not true) false)) (= $x48 false)))) |
|
3018 |
(let (($x34 (forall ((?v1 Int) )(let (($x31 (<= 0 ?v1))) |
|
3019 |
(let (($x30 (< ?v1 0))) |
|
3020 |
(let (($x32 (or $x30 $x31))) |
|
3021 |
(let (($x29 (< ?0 ?v1))) |
|
3022 |
(=> $x29 $x32)))))) |
|
3023 |
)) |
|
3024 |
(let ((@x47 (quant-intro (quant-intro (rewrite (= (=> $x29 $x32) $x39)) (= $x34 $x42)) (= $x35 $x45)))) |
|
3025 |
(let ((@x50 (monotonicity @x47 (= $x36 $x48)))) |
|
3026 |
(mp (asserted $x36) (trans @x50 @x101 (= $x36 false)) false))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3027 |
|
57204 | 3028 |
c446c8659459cda8dda1ecfd9aba54ce2a50f002 42 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3029 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3030 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3031 |
(proof |
56727 | 3032 |
(let (($x37 (forall ((?v0 Int) (?v1 Int) )(let ((?x34 (* 2 ?v1))) |
3033 |
(let ((?x31 (* 2 ?v0))) |
|
3034 |
(let ((?x33 (+ ?x31 1))) |
|
3035 |
(let (($x35 (< ?x33 ?x34))) |
|
3036 |
(let (($x29 (< ?v0 ?v1))) |
|
3037 |
(=> $x29 $x35))))))) |
|
3038 |
)) |
|
3039 |
(let (($x38 (not $x37))) |
|
3040 |
(let (($x55 (forall ((?v0 Int) (?v1 Int) )(let ((?x34 (* 2 ?v1))) |
|
3041 |
(let ((?x31 (* 2 ?v0))) |
|
3042 |
(let ((?x40 (+ 1 ?x31))) |
|
3043 |
(let (($x43 (< ?x40 ?x34))) |
|
3044 |
(let (($x29 (< ?v0 ?v1))) |
|
3045 |
(let (($x49 (not $x29))) |
|
3046 |
(or $x49 $x43)))))))) |
|
3047 |
)) |
|
3048 |
(let (($x58 (not $x55))) |
|
3049 |
(let (($x84 (forall ((?v0 Int) (?v1 Int) )true) |
|
3050 |
)) |
|
3051 |
(let ((?x34 (* 2 ?0))) |
|
3052 |
(let ((?x31 (* 2 ?1))) |
|
3053 |
(let ((?x40 (+ 1 ?x31))) |
|
3054 |
(let (($x43 (< ?x40 ?x34))) |
|
3055 |
(let (($x29 (< ?1 ?0))) |
|
3056 |
(let (($x49 (not $x29))) |
|
3057 |
(let (($x50 (or $x49 $x43))) |
|
3058 |
(let (($x63 (>= (+ ?1 (* (- 1) ?0)) 0))) |
|
3059 |
(let (($x62 (not $x63))) |
|
3060 |
(let ((@x74 (trans (monotonicity (rewrite (= $x29 $x62)) (= $x49 (not $x62))) (rewrite (= (not $x62) $x63)) (= $x49 $x63)))) |
|
3061 |
(let ((@x79 (monotonicity @x74 (rewrite (= $x43 $x62)) (= $x50 (or $x63 $x62))))) |
|
3062 |
(let ((@x86 (quant-intro (trans @x79 (rewrite (= (or $x63 $x62) true)) (= $x50 true)) (= $x55 $x84)))) |
|
3063 |
(let ((@x93 (monotonicity (trans @x86 (elim-unused (= $x84 true)) (= $x55 true)) (= $x58 (not true))))) |
|
3064 |
(let ((@x97 (trans @x93 (rewrite (= (not true) false)) (= $x58 false)))) |
|
3065 |
(let ((@x45 (monotonicity (rewrite (= (+ ?x31 1) ?x40)) (= (< (+ ?x31 1) ?x34) $x43)))) |
|
3066 |
(let ((@x48 (monotonicity @x45 (= (=> $x29 (< (+ ?x31 1) ?x34)) (=> $x29 $x43))))) |
|
3067 |
(let ((@x54 (trans @x48 (rewrite (= (=> $x29 $x43) $x50)) (= (=> $x29 (< (+ ?x31 1) ?x34)) $x50)))) |
|
3068 |
(let ((@x60 (monotonicity (quant-intro @x54 (= $x37 $x55)) (= $x38 $x58)))) |
|
3069 |
(mp (asserted $x38) (trans @x60 @x97 (= $x38 false)) false)))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3070 |
|
57204 | 3071 |
a6ee8724a53192e0bb5b41bbeed60d66d29cdc32 32 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3072 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3073 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3074 |
(proof |
56727 | 3075 |
(let (($x36 (forall ((?v0 Int) (?v1 Int) )(let ((?x33 (* 2 ?v1))) |
3076 |
(let ((?x30 (* 2 ?v0))) |
|
3077 |
(let ((?x32 (+ ?x30 1))) |
|
3078 |
(let (($x34 (= ?x32 ?x33))) |
|
3079 |
(not $x34)))))) |
|
3080 |
)) |
|
3081 |
(let (($x37 (not $x36))) |
|
3082 |
(let (($x48 (forall ((?v0 Int) (?v1 Int) )(let ((?x33 (* 2 ?v1))) |
|
3083 |
(let ((?x30 (* 2 ?v0))) |
|
3084 |
(let ((?x39 (+ 1 ?x30))) |
|
3085 |
(let (($x42 (= ?x39 ?x33))) |
|
3086 |
(not $x42)))))) |
|
3087 |
)) |
|
3088 |
(let (($x51 (not $x48))) |
|
3089 |
(let (($x63 (forall ((?v0 Int) (?v1 Int) )true) |
|
3090 |
)) |
|
3091 |
(let ((?x33 (* 2 ?0))) |
|
3092 |
(let ((?x30 (* 2 ?1))) |
|
3093 |
(let ((?x39 (+ 1 ?x30))) |
|
3094 |
(let (($x42 (= ?x39 ?x33))) |
|
3095 |
(let (($x45 (not $x42))) |
|
3096 |
(let ((@x62 (trans (monotonicity (rewrite (= $x42 false)) (= $x45 (not false))) (rewrite (= (not false) true)) (= $x45 true)))) |
|
3097 |
(let ((@x69 (trans (quant-intro @x62 (= $x48 $x63)) (elim-unused (= $x63 true)) (= $x48 true)))) |
|
3098 |
(let ((@x76 (trans (monotonicity @x69 (= $x51 (not true))) (rewrite (= (not true) false)) (= $x51 false)))) |
|
3099 |
(let ((@x44 (monotonicity (rewrite (= (+ ?x30 1) ?x39)) (= (= (+ ?x30 1) ?x33) $x42)))) |
|
3100 |
(let ((@x50 (quant-intro (monotonicity @x44 (= (not (= (+ ?x30 1) ?x33)) $x45)) (= $x36 $x48)))) |
|
3101 |
(let ((@x53 (monotonicity @x50 (= $x37 $x51)))) |
|
3102 |
(mp (asserted $x37) (trans @x53 @x76 (= $x37 false)) false))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3103 |
|
57204 | 3104 |
07f4cd3fa64b76806d385c4af8945a76e01f07d9 43 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3105 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3106 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3107 |
(declare-fun ?v0!1 () Int) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3108 |
(declare-fun ?v1!0 () Int) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3109 |
(proof |
56111 | 3110 |
(let ((?x78 (+ ?v1!0 ?v0!1))) |
3111 |
(let (($x90 (>= ?x78 2))) |
|
3112 |
(let (($x93 (not $x90))) |
|
3113 |
(let (($x87 (= ?x78 2))) |
|
3114 |
(let (($x81 (<= ?x78 2))) |
|
3115 |
(let (($x84 (not $x81))) |
|
56727 | 3116 |
(let (($x73 (or (not (<= (+ ?v0!1 ?v1!0) 2)) (= (+ ?v0!1 ?v1!0) 2) (not (>= (+ ?v0!1 ?v1!0) 2))))) |
3117 |
(let (($x74 (not $x73))) |
|
56111 | 3118 |
(let ((@x80 (rewrite (= (+ ?v0!1 ?v1!0) ?x78)))) |
3119 |
(let ((@x95 (monotonicity (monotonicity @x80 (= (>= (+ ?v0!1 ?v1!0) 2) $x90)) (= (not (>= (+ ?v0!1 ?v1!0) 2)) $x93)))) |
|
3120 |
(let ((@x86 (monotonicity (monotonicity @x80 (= (<= (+ ?v0!1 ?v1!0) 2) $x81)) (= (not (<= (+ ?v0!1 ?v1!0) 2)) $x84)))) |
|
56727 | 3121 |
(let ((@x98 (monotonicity @x86 (monotonicity @x80 (= (= (+ ?v0!1 ?v1!0) 2) $x87)) @x95 (= $x73 (or $x84 $x87 $x93))))) |
3122 |
(let (($x60 (forall ((?v0 Int) (?v1 Int) )(let (($x41 (not (>= (+ ?v0 ?v1) 2)))) |
|
3123 |
(let ((?x30 (+ ?v0 ?v1))) |
|
3124 |
(let (($x32 (= ?x30 2))) |
|
3125 |
(let (($x46 (not (<= ?x30 2)))) |
|
3126 |
(or $x46 $x32 $x41)))))) |
|
3127 |
)) |
|
3128 |
(let (($x63 (not $x60))) |
|
3129 |
(let (($x36 (forall ((?v0 Int) (?v1 Int) )(or (< 2 (+ ?v0 ?v1)) (or (= (+ ?v0 ?v1) 2) (< (+ ?v0 ?v1) 2)))) |
|
3130 |
)) |
|
3131 |
(let (($x37 (not $x36))) |
|
3132 |
(let (($x41 (not (>= (+ ?1 ?0) 2)))) |
|
3133 |
(let ((?x30 (+ ?1 ?0))) |
|
3134 |
(let (($x32 (= ?x30 2))) |
|
3135 |
(let (($x46 (not (<= ?x30 2)))) |
|
3136 |
(let (($x55 (or $x46 $x32 $x41))) |
|
3137 |
(let (($x35 (or (< 2 ?x30) (or $x32 (< ?x30 2))))) |
|
3138 |
(let ((@x51 (monotonicity (rewrite (= (< ?x30 2) $x41)) (= (or $x32 (< ?x30 2)) (or $x32 $x41))))) |
|
3139 |
(let ((@x54 (monotonicity (rewrite (= (< 2 ?x30) $x46)) @x51 (= $x35 (or $x46 (or $x32 $x41)))))) |
|
3140 |
(let ((@x59 (trans @x54 (rewrite (= (or $x46 (or $x32 $x41)) $x55)) (= $x35 $x55)))) |
|
3141 |
(let ((@x66 (mp (asserted $x37) (monotonicity (quant-intro @x59 (= $x36 $x60)) (= $x37 $x63)) $x63))) |
|
3142 |
(let ((@x102 (mp (mp~ @x66 (sk (~ $x63 $x74)) $x74) (monotonicity @x98 (= $x74 (not (or $x84 $x87 $x93)))) (not (or $x84 $x87 $x93))))) |
|
3143 |
(let ((@x105 (not-or-elim @x102 (not $x87)))) |
|
3144 |
(let ((@x106 (not-or-elim @x102 $x90))) |
|
3145 |
(let ((@x103 (not-or-elim @x102 $x81))) |
|
3146 |
(unit-resolution (unit-resolution ((_ th-lemma arith triangle-eq) (or $x87 $x84 $x93)) @x103 (or $x87 $x93)) @x106 @x105 false))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3147 |
|
57204 | 3148 |
7f22e563ec1d8ce90ee01f0d4b366d5b595fcdef 46 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3149 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3150 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3151 |
(declare-fun ?v0!0 () Int) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3152 |
(proof |
56727 | 3153 |
(let (($x83 (<= ?v0!0 0))) |
3154 |
(let (($x86 (<= ?v0!0 (- 1)))) |
|
56111 | 3155 |
(let (($x87 (not $x86))) |
56727 | 3156 |
(let ((@x105 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x87 $x83)) (hypothesis (not $x83)) $x87))) |
3157 |
(let (($x84 (>= ?v0!0 1))) |
|
3158 |
(let (($x85 (not $x84))) |
|
3159 |
(let (($x88 (ite $x83 $x85 $x87))) |
|
3160 |
(let (($x89 (not $x88))) |
|
3161 |
(let (($x73 (forall ((?v0 Int) )(let (($x58 (not (<= ?v0 (- 1))))) |
|
3162 |
(let (($x61 (not (>= ?v0 1)))) |
|
3163 |
(ite (<= ?v0 0) $x61 $x58)))) |
|
3164 |
)) |
|
3165 |
(let (($x76 (not $x73))) |
|
3166 |
(let (($x34 (forall ((?v0 Int) )(let (($x32 (< ?v0 1))) |
|
3167 |
(let (($x28 (< 0 ?v0))) |
|
3168 |
(ite $x28 (< 0 (+ ?v0 1)) $x32)))) |
|
3169 |
)) |
|
3170 |
(let (($x35 (not $x34))) |
|
3171 |
(let (($x46 (forall ((?v0 Int) )(let (($x32 (< ?v0 1))) |
|
3172 |
(let (($x40 (< 0 (+ 1 ?v0)))) |
|
3173 |
(let (($x28 (< 0 ?v0))) |
|
3174 |
(ite $x28 $x40 $x32))))) |
|
3175 |
)) |
|
3176 |
(let (($x58 (not (<= ?0 (- 1))))) |
|
3177 |
(let (($x61 (not (>= ?0 1)))) |
|
3178 |
(let (($x68 (ite (<= ?0 0) $x61 $x58))) |
|
3179 |
(let (($x32 (< ?0 1))) |
|
3180 |
(let (($x40 (< 0 (+ 1 ?0)))) |
|
3181 |
(let (($x28 (< 0 ?0))) |
|
3182 |
(let (($x43 (ite $x28 $x40 $x32))) |
|
3183 |
(let ((@x67 (monotonicity (rewrite (= $x28 (not (<= ?0 0)))) (rewrite (= $x40 $x58)) (rewrite (= $x32 $x61)) (= $x43 (ite (not (<= ?0 0)) $x58 $x61))))) |
|
3184 |
(let ((@x72 (trans @x67 (rewrite (= (ite (not (<= ?0 0)) $x58 $x61) $x68)) (= $x43 $x68)))) |
|
3185 |
(let ((@x78 (monotonicity (quant-intro @x72 (= $x46 $x73)) (= (not $x46) $x76)))) |
|
3186 |
(let ((@x42 (monotonicity (rewrite (= (+ ?0 1) (+ 1 ?0))) (= (< 0 (+ ?0 1)) $x40)))) |
|
3187 |
(let ((@x45 (monotonicity @x42 (= (ite $x28 (< 0 (+ ?0 1)) $x32) $x43)))) |
|
3188 |
(let ((@x51 (monotonicity (quant-intro @x45 (= $x34 $x46)) (= $x35 (not $x46))))) |
|
3189 |
(let ((@x92 (mp~ (mp (asserted $x35) (trans @x51 @x78 (= $x35 $x76)) $x76) (sk (~ $x76 $x89)) $x89))) |
|
3190 |
(let ((@x108 (unit-resolution (unit-resolution (def-axiom (or $x88 $x83 $x86)) @x92 (or $x83 $x86)) @x105 (hypothesis (not $x83)) false))) |
|
3191 |
(let ((@x109 (lemma @x108 $x83))) |
|
3192 |
(let ((@x114 (unit-resolution (def-axiom (or $x88 (not $x83) $x84)) @x92 (or (not $x83) $x84)))) |
|
3193 |
(unit-resolution @x114 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x85 (not $x83))) @x109 $x85) @x109 false))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3194 |
|
57204 | 3195 |
e566ad249d308c74a627c15c9f02c271a6843a42 31 0 |
56727 | 3196 |
unsat |
3197 |
((set-logic AUFLIA) |
|
3198 |
(proof |
|
3199 |
(let (($x56 (forall ((?v0 Int) )(let (($x50 (not (<= ?v0 0)))) |
|
3200 |
(let (($x45 (not (>= ?v0 0)))) |
|
3201 |
(or $x45 $x50)))) |
|
3202 |
)) |
|
3203 |
(let (($x458 (not $x56))) |
|
3204 |
(let (($x153 (<= 0 0))) |
|
3205 |
(let (($x68 (not $x153))) |
|
3206 |
(let (($x158 (>= 0 0))) |
|
3207 |
(let (($x143 (not $x158))) |
|
3208 |
(let (($x154 (or $x143 $x68))) |
|
3209 |
(let (($x119 (or $x458 $x154))) |
|
3210 |
(let ((@x482 (trans (monotonicity (rewrite (= $x153 true)) (= $x68 (not true))) (rewrite (= (not true) false)) (= $x68 false)))) |
|
3211 |
(let ((@x261 (trans (monotonicity (rewrite (= $x158 true)) (= $x143 (not true))) (rewrite (= (not true) false)) (= $x143 false)))) |
|
3212 |
(let ((@x116 (trans (monotonicity @x261 @x482 (= $x154 (or false false))) (rewrite (= (or false false) false)) (= $x154 false)))) |
|
3213 |
(let ((@x463 (trans (monotonicity @x116 (= $x119 (or $x458 false))) (rewrite (= (or $x458 false) $x458)) (= $x119 $x458)))) |
|
3214 |
(let ((@x464 (mp ((_ quant-inst 0) $x119) @x463 $x458))) |
|
3215 |
(let (($x50 (not (<= ?0 0)))) |
|
3216 |
(let (($x45 (not (>= ?0 0)))) |
|
3217 |
(let (($x53 (or $x45 $x50))) |
|
3218 |
(let (($x31 (forall ((?v0 Int) )(or (< ?v0 0) (< 0 ?v0))) |
|
3219 |
)) |
|
3220 |
(let (($x33 (not (ite $x31 false true)))) |
|
3221 |
(let ((@x55 (monotonicity (rewrite (= (< ?0 0) $x45)) (rewrite (= (< 0 ?0) $x50)) (= (or (< ?0 0) (< 0 ?0)) $x53)))) |
|
3222 |
(let ((@x40 (monotonicity (rewrite (= (ite $x31 false true) (not $x31))) (= $x33 (not (not $x31)))))) |
|
3223 |
(let ((@x60 (trans (trans @x40 (rewrite (= (not (not $x31)) $x31)) (= $x33 $x31)) (quant-intro @x55 (= $x31 $x56)) (= $x33 $x56)))) |
|
3224 |
(let ((@x66 (mp~ (mp (asserted $x33) @x60 $x56) (nnf-pos (refl (~ $x53 $x53)) (~ $x56 $x56)) $x56))) |
|
3225 |
(unit-resolution @x66 @x464 false))))))))))))))))))))))))) |
|
3226 |
||
57204 | 3227 |
a8cb4a130675f119ab8ba11cbe3a15041f18d2c6 62 0 |
56727 | 3228 |
unsat |
3229 |
((set-logic AUFLIA) |
|
3230 |
(declare-fun ?v0!1 () Int) |
|
3231 |
(declare-fun z3name!0 () Bool) |
|
3232 |
(proof |
|
3233 |
(let ((?x96 (ite z3name!0 (- 1) 3))) |
|
3234 |
(let (($x99 (<= ?x96 0))) |
|
3235 |
(let (($x62 (forall ((?v0 Int) )(let (($x56 (not (<= ?v0 0)))) |
|
3236 |
(let (($x51 (not (>= ?v0 0)))) |
|
3237 |
(or $x51 $x56)))) |
|
3238 |
)) |
|
3239 |
(let ((?x65 (ite $x62 (- 1) 3))) |
|
3240 |
(let (($x71 (<= ?x65 0))) |
|
3241 |
(let ((@x93 (intro-def (and (or (not z3name!0) $x62) (or z3name!0 (not $x62)))))) |
|
3242 |
(let ((@x101 (monotonicity (monotonicity (apply-def @x93 (~ $x62 z3name!0)) (= ?x65 ?x96)) (= $x71 $x99)))) |
|
3243 |
(let (($x31 (forall ((?v0 Int) )(or (< ?v0 0) (< 0 ?v0))) |
|
3244 |
)) |
|
3245 |
(let (($x37 (not (< 0 (ite $x31 (- 1) 3))))) |
|
3246 |
(let (($x56 (not (<= ?0 0)))) |
|
3247 |
(let (($x51 (not (>= ?0 0)))) |
|
3248 |
(let (($x59 (or $x51 $x56))) |
|
3249 |
(let ((@x61 (monotonicity (rewrite (= (< ?0 0) $x51)) (rewrite (= (< 0 ?0) $x56)) (= (or (< ?0 0) (< 0 ?0)) $x59)))) |
|
3250 |
(let ((@x67 (monotonicity (quant-intro @x61 (= $x31 $x62)) (= (ite $x31 (- 1) 3) ?x65)))) |
|
3251 |
(let ((@x70 (monotonicity @x67 (= (< 0 (ite $x31 (- 1) 3)) (< 0 ?x65))))) |
|
3252 |
(let ((@x76 (trans @x70 (rewrite (= (< 0 ?x65) (not $x71))) (= (< 0 (ite $x31 (- 1) 3)) (not $x71))))) |
|
3253 |
(let ((@x79 (monotonicity @x76 (= (not (< 0 (ite $x31 (- 1) 3))) (not (not $x71)))))) |
|
3254 |
(let ((@x83 (trans @x79 (rewrite (= (not (not $x71)) $x71)) (= (not (< 0 (ite $x31 (- 1) 3))) $x71)))) |
|
3255 |
(let ((?x42 (ite $x31 (- 1) 3))) |
|
3256 |
(let (($x45 (< 0 ?x42))) |
|
3257 |
(let ((@x44 (monotonicity (rewrite (= (- 1) (- 1))) (= (ite $x31 (- 1) 3) ?x42)))) |
|
3258 |
(let ((@x50 (monotonicity (monotonicity @x44 (= (< 0 (ite $x31 (- 1) 3)) $x45)) (= $x37 (not $x45))))) |
|
3259 |
(let ((@x128 (mp (mp (asserted $x37) (trans @x50 @x83 (= $x37 $x71)) $x71) @x101 $x99))) |
|
3260 |
(let ((@x245 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not (>= ?x96 3)) (not $x99))) @x128 (not (>= ?x96 3))))) |
|
3261 |
(let (($x220 (= ?x96 3))) |
|
3262 |
(let (($x88 (not z3name!0))) |
|
3263 |
(let (($x90 (not $x62))) |
|
3264 |
(let (($x323 (<= 0 0))) |
|
3265 |
(let (($x533 (not $x323))) |
|
3266 |
(let (($x542 (>= 0 0))) |
|
3267 |
(let (($x179 (not $x542))) |
|
3268 |
(let (($x206 (or $x179 $x533))) |
|
3269 |
(let (($x529 (or $x90 $x206))) |
|
3270 |
(let ((@x522 (trans (monotonicity (rewrite (= $x323 true)) (= $x533 (not true))) (rewrite (= (not true) false)) (= $x533 false)))) |
|
3271 |
(let ((@x200 (trans (monotonicity (rewrite (= $x542 true)) (= $x179 (not true))) (rewrite (= (not true) false)) (= $x179 false)))) |
|
3272 |
(let ((@x528 (trans (monotonicity @x200 @x522 (= $x206 (or false false))) (rewrite (= (or false false) false)) (= $x206 false)))) |
|
3273 |
(let ((@x237 (trans (monotonicity @x528 (= $x529 (or $x90 false))) (rewrite (= (or $x90 false) $x90)) (= $x529 $x90)))) |
|
3274 |
(let ((@x238 (mp ((_ quant-inst 0) $x529) @x237 $x90))) |
|
3275 |
(let (($x89 (or $x88 $x62))) |
|
3276 |
(let (($x115 (<= ?v0!1 0))) |
|
3277 |
(let (($x116 (not $x115))) |
|
3278 |
(let (($x113 (>= ?v0!1 0))) |
|
3279 |
(let (($x114 (not $x113))) |
|
3280 |
(let (($x117 (or $x114 $x116))) |
|
3281 |
(let (($x118 (not $x117))) |
|
3282 |
(let (($x121 (or z3name!0 $x118))) |
|
3283 |
(let ((@x123 (monotonicity (refl (~ z3name!0 z3name!0)) (sk (~ $x90 $x118)) (~ (or z3name!0 $x90) $x121)))) |
|
3284 |
(let ((@x109 (monotonicity (refl (~ $x88 $x88)) (nnf-pos (refl (~ $x59 $x59)) (~ $x62 $x62)) (~ $x89 $x89)))) |
|
3285 |
(let ((@x126 (monotonicity @x109 @x123 (~ (and $x89 (or z3name!0 $x90)) (and $x89 $x121))))) |
|
3286 |
(let ((@x131 (and-elim (mp~ @x93 @x126 (and $x89 $x121)) $x89))) |
|
3287 |
(let ((@x515 (unit-resolution (def-axiom (or z3name!0 $x220)) (unit-resolution @x131 @x238 $x88) $x220))) |
|
3288 |
(unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x220) (>= ?x96 3))) @x515 @x245 false)))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
3289 |
||
57204 | 3290 |
9e0e67e5bd5078ab683d440f1a73c518a403be1b 39 0 |
57170 | 3291 |
unsat |
3292 |
((set-logic AUFLIA) |
|
3293 |
(proof |
|
3294 |
(let (($x38 (exists ((?v0 Int) (?v1 Int) (?v2 Int) )(let ((?x33 (- 6))) |
|
3295 |
(let ((?x34 (* ?x33 ?v1))) |
|
3296 |
(let ((?x31 (* 4 ?v0))) |
|
3297 |
(let ((?x35 (+ ?x31 ?x34))) |
|
3298 |
(= ?x35 1)))))) |
|
3299 |
)) |
|
3300 |
(let (($x29 (not $x38))) |
|
3301 |
(let (($x39 (not $x29))) |
|
3302 |
(let (($x61 (exists ((?v0 Int) (?v1 Int) )(let ((?x58 (* (- 6) ?v1))) |
|
3303 |
(let ((?x57 (* 4 ?v0))) |
|
3304 |
(let ((?x59 (+ ?x57 ?x58))) |
|
3305 |
(= ?x59 1))))) |
|
3306 |
)) |
|
3307 |
(let (($x77 (exists ((?v0 Int) (?v1 Int) )false) |
|
3308 |
)) |
|
3309 |
(let ((@x81 (quant-intro (rewrite (= (= (+ (* 4 ?1) (* (- 6) ?0)) 1) false)) (= $x61 $x77)))) |
|
3310 |
(let ((@x85 (trans @x81 (elim-unused (= $x77 false)) (= $x61 false)))) |
|
3311 |
(let (($x53 (exists ((?v0 Int) (?v1 Int) (?v2 Int) )(let ((?x44 (* (- 6) ?v1))) |
|
3312 |
(let ((?x31 (* 4 ?v0))) |
|
3313 |
(let ((?x47 (+ ?x31 ?x44))) |
|
3314 |
(= ?x47 1))))) |
|
3315 |
)) |
|
3316 |
(let ((?x44 (* (- 6) ?1))) |
|
3317 |
(let ((?x31 (* 4 ?2))) |
|
3318 |
(let ((?x47 (+ ?x31 ?x44))) |
|
3319 |
(let (($x50 (= ?x47 1))) |
|
3320 |
(let ((?x33 (- 6))) |
|
3321 |
(let ((?x34 (* ?x33 ?1))) |
|
3322 |
(let ((?x35 (+ ?x31 ?x34))) |
|
3323 |
(let (($x37 (= ?x35 1))) |
|
3324 |
(let ((@x49 (monotonicity (monotonicity (rewrite (= ?x33 (- 6))) (= ?x34 ?x44)) (= ?x35 ?x47)))) |
|
3325 |
(let ((@x65 (trans (quant-intro (monotonicity @x49 (= $x37 $x50)) (= $x38 $x53)) (elim-unused (= $x53 $x61)) (= $x38 $x61)))) |
|
3326 |
(let ((@x71 (monotonicity (monotonicity @x65 (= $x29 (not $x61))) (= $x39 (not (not $x61)))))) |
|
3327 |
(let ((@x75 (trans @x71 (rewrite (= (not (not $x61)) $x61)) (= $x39 $x61)))) |
|
3328 |
(mp (asserted $x39) (trans @x75 @x85 (= $x39 false)) false))))))))))))))))))))))) |
|
3329 |
||
57204 | 3330 |
7f619f54c20728881b08a920d22e08bbe3d76a4d 52 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3331 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3332 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3333 |
(declare-fun ?v1!1 () Int) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3334 |
(declare-fun ?v2!0 () Int) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3335 |
(proof |
56727 | 3336 |
(let ((?x105 (+ ?v2!0 ?v1!1))) |
3337 |
(let (($x106 (<= ?x105 0))) |
|
3338 |
(let (($x108 (or (not (and (not (<= ?v1!1 0)) (not (<= ?v2!0 0)))) (not $x106)))) |
|
3339 |
(let (($x88 (forall ((?v1 Int) (?v2 Int) )(or (not (and (not (<= ?v1 0)) (not (<= ?v2 0)))) (not (<= (+ ?v2 ?v1) 0)))) |
|
3340 |
)) |
|
3341 |
(let (($x91 (not $x88))) |
|
3342 |
(let (($x36 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Int) )(let (($x31 (and (< 0 ?v1) (< 0 ?v2)))) |
|
3343 |
(=> $x31 (< 0 (+ ?v1 ?v2))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3344 |
) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3345 |
)) |
56727 | 3346 |
(let (($x37 (not $x36))) |
3347 |
(let (($x54 (forall ((?v1 Int) (?v2 Int) )(let ((?x39 (+ ?v2 ?v1))) |
|
3348 |
(let (($x42 (< 0 ?x39))) |
|
3349 |
(or (not (and (< 0 ?v1) (< 0 ?v2))) $x42)))) |
|
3350 |
)) |
|
3351 |
(let (($x85 (or (not (and (not (<= ?1 0)) (not (<= ?0 0)))) (not (<= (+ ?0 ?1) 0))))) |
|
3352 |
(let ((?x39 (+ ?0 ?1))) |
|
3353 |
(let (($x42 (< 0 ?x39))) |
|
3354 |
(let (($x49 (or (not (and (< 0 ?1) (< 0 ?0))) $x42))) |
|
3355 |
(let (($x79 (= (not (and (< 0 ?1) (< 0 ?0))) (not (and (not (<= ?1 0)) (not (<= ?0 0))))))) |
|
3356 |
(let (($x31 (and (< 0 ?1) (< 0 ?0)))) |
|
3357 |
(let ((@x77 (monotonicity (rewrite (= (< 0 ?1) (not (<= ?1 0)))) (rewrite (= (< 0 ?0) (not (<= ?0 0)))) (= $x31 (and (not (<= ?1 0)) (not (<= ?0 0))))))) |
|
3358 |
(let ((@x87 (monotonicity (monotonicity @x77 $x79) (rewrite (= $x42 (not (<= ?x39 0)))) (= $x49 $x85)))) |
|
3359 |
(let ((@x93 (monotonicity (quant-intro @x87 (= $x54 $x88)) (= (not $x54) $x91)))) |
|
3360 |
(let (($x57 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Int) )(let ((?x39 (+ ?v2 ?v1))) |
|
3361 |
(let (($x42 (< 0 ?x39))) |
|
3362 |
(or (not (and (< 0 ?v1) (< 0 ?v2))) $x42)))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3363 |
) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3364 |
)) |
56727 | 3365 |
(let (($x35 (forall ((?v1 Int) (?v2 Int) )(let (($x31 (and (< 0 ?v1) (< 0 ?v2)))) |
3366 |
(=> $x31 (< 0 (+ ?v1 ?v2))))) |
|
3367 |
)) |
|
3368 |
(let ((@x44 (monotonicity (rewrite (= (+ ?1 ?0) ?x39)) (= (< 0 (+ ?1 ?0)) $x42)))) |
|
3369 |
(let ((@x47 (monotonicity @x44 (= (=> $x31 (< 0 (+ ?1 ?0))) (=> $x31 $x42))))) |
|
3370 |
(let ((@x53 (trans @x47 (rewrite (= (=> $x31 $x42) $x49)) (= (=> $x31 (< 0 (+ ?1 ?0))) $x49)))) |
|
3371 |
(let ((@x63 (trans (quant-intro (quant-intro @x53 (= $x35 $x54)) (= $x36 $x57)) (elim-unused (= $x57 $x54)) (= $x36 $x54)))) |
|
3372 |
(let ((@x95 (trans (monotonicity @x63 (= $x37 (not $x54))) @x93 (= $x37 $x91)))) |
|
3373 |
(let ((@x112 (mp~ (mp (asserted $x37) @x95 $x91) (sk (~ $x91 (not $x108))) (not $x108)))) |
|
3374 |
(let ((@x118 (not-or-elim @x112 $x106))) |
|
3375 |
(let (($x99 (<= ?v1!1 0))) |
|
56111 | 3376 |
(let (($x100 (not $x99))) |
56727 | 3377 |
(let ((@x116 (and-elim (not-or-elim @x112 (and $x100 (not (<= ?v2!0 0)))) $x100))) |
3378 |
(let (($x101 (<= ?v2!0 0))) |
|
3379 |
(let (($x102 (not $x101))) |
|
3380 |
(let ((@x117 (and-elim (not-or-elim @x112 (and $x100 $x102)) $x102))) |
|
3381 |
((_ th-lemma arith farkas 1 1 1) @x117 @x116 @x118 false))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3382 |
|
57204 | 3383 |
0d380fa4e68ab250e8351813b95695943794f02d 46 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3384 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3385 |
((set-logic AUFLIRA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3386 |
(declare-fun ?v1!1 () Int) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3387 |
(declare-fun ?v2!0 () Real) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3388 |
(proof |
56727 | 3389 |
(let (($x105 (<= ?v1!1 (- 1)))) |
3390 |
(let (($x106 (not $x105))) |
|
3391 |
(let (($x107 (or (not (and (not (<= ?v1!1 0)) (not (<= ?v2!0 0.0)))) $x106))) |
|
3392 |
(let (($x88 (forall ((?v1 Int) (?v2 Real) )(or (not (and (not (<= ?v1 0)) (not (<= ?v2 0.0)))) (not (<= ?v1 (- 1))))) |
|
3393 |
)) |
|
3394 |
(let (($x91 (not $x88))) |
|
3395 |
(let (($x37 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Real) )(let (($x31 (and (< 0 ?v1) (< 0.0 ?v2)))) |
|
3396 |
(=> $x31 (< (- 1) ?v1)))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3397 |
) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3398 |
)) |
56727 | 3399 |
(let (($x27 (not $x37))) |
3400 |
(let (($x54 (forall ((?v1 Int) (?v2 Real) )(let (($x42 (< (- 1) ?v1))) |
|
3401 |
(or (not (and (< 0 ?v1) (< 0.0 ?v2))) $x42))) |
|
3402 |
)) |
|
3403 |
(let (($x85 (or (not (and (not (<= ?1 0)) (not (<= ?0 0.0)))) (not (<= ?1 (- 1)))))) |
|
3404 |
(let (($x42 (< (- 1) ?1))) |
|
3405 |
(let (($x49 (or (not (and (< 0 ?1) (< 0.0 ?0))) $x42))) |
|
3406 |
(let (($x79 (= (not (and (< 0 ?1) (< 0.0 ?0))) (not (and (not (<= ?1 0)) (not (<= ?0 0.0))))))) |
|
3407 |
(let (($x31 (and (< 0 ?1) (< 0.0 ?0)))) |
|
3408 |
(let ((@x77 (monotonicity (rewrite (= (< 0 ?1) (not (<= ?1 0)))) (rewrite (= (< 0.0 ?0) (not (<= ?0 0.0)))) (= $x31 (and (not (<= ?1 0)) (not (<= ?0 0.0))))))) |
|
3409 |
(let ((@x87 (monotonicity (monotonicity @x77 $x79) (rewrite (= $x42 (not (<= ?1 (- 1))))) (= $x49 $x85)))) |
|
3410 |
(let ((@x93 (monotonicity (quant-intro @x87 (= $x54 $x88)) (= (not $x54) $x91)))) |
|
3411 |
(let (($x57 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Real) )(let (($x42 (< (- 1) ?v1))) |
|
3412 |
(or (not (and (< 0 ?v1) (< 0.0 ?v2))) $x42))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3413 |
) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3414 |
)) |
56727 | 3415 |
(let (($x36 (forall ((?v1 Int) (?v2 Real) )(let (($x31 (and (< 0 ?v1) (< 0.0 ?v2)))) |
3416 |
(=> $x31 (< (- 1) ?v1)))) |
|
3417 |
)) |
|
3418 |
(let ((@x44 (monotonicity (rewrite (= (- 1) (- 1))) (= (< (- 1) ?1) $x42)))) |
|
3419 |
(let ((@x47 (monotonicity @x44 (= (=> $x31 (< (- 1) ?1)) (=> $x31 $x42))))) |
|
3420 |
(let ((@x53 (trans @x47 (rewrite (= (=> $x31 $x42) $x49)) (= (=> $x31 (< (- 1) ?1)) $x49)))) |
|
3421 |
(let ((@x63 (trans (quant-intro (quant-intro @x53 (= $x36 $x54)) (= $x37 $x57)) (elim-unused (= $x57 $x54)) (= $x37 $x54)))) |
|
3422 |
(let ((@x95 (trans (monotonicity @x63 (= $x27 (not $x54))) @x93 (= $x27 $x91)))) |
|
3423 |
(let ((@x111 (mp~ (mp (asserted $x27) @x95 $x91) (sk (~ $x91 (not $x107))) (not $x107)))) |
|
3424 |
(let ((@x117 (not-or-elim @x111 $x105))) |
|
3425 |
(let (($x99 (<= ?v1!1 0))) |
|
3426 |
(let (($x100 (not $x99))) |
|
3427 |
(let ((@x115 (and-elim (not-or-elim @x111 (and $x100 (not (<= ?v2!0 0.0)))) $x100))) |
|
3428 |
(unit-resolution (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x106 $x99)) @x115 $x106) @x117 false))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3429 |
|
57204 | 3430 |
d9fbfe5a894f4a224aaf7d1fa1f67325ad2e1497 110 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3431 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3432 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3433 |
(proof |
56727 | 3434 |
(let (($x152 (forall ((?v0 Int) )(let (($x68 (<= ?v0 0))) |
3435 |
(let (($x69 (not $x68))) |
|
3436 |
(let (($x143 (not false))) |
|
3437 |
(let (($x146 (or $x143 $x69))) |
|
3438 |
(not $x146)))))) |
|
3439 |
)) |
|
3440 |
(let (($x174 (forall ((?v0 Int) )false) |
|
3441 |
)) |
|
3442 |
(let (($x68 (<= ?0 0))) |
|
3443 |
(let (($x69 (not $x68))) |
|
3444 |
(let (($x143 (not false))) |
|
3445 |
(let (($x146 (or $x143 $x69))) |
|
3446 |
(let ((@x166 (trans (monotonicity (rewrite (= $x143 true)) (= $x146 (or true $x69))) (rewrite (= (or true $x69) true)) (= $x146 true)))) |
|
3447 |
(let ((@x173 (trans (monotonicity @x166 (= (not $x146) (not true))) (rewrite (= (not true) false)) (= (not $x146) false)))) |
|
3448 |
(let ((@x180 (trans (quant-intro @x173 (= $x152 $x174)) (elim-unused (= $x174 false)) (= $x152 false)))) |
|
3449 |
(let (($x122 (forall ((?v0 Int) )(let (($x68 (<= ?v0 0))) |
|
3450 |
(let (($x69 (not $x68))) |
|
3451 |
(let (($x75 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0))) |
|
3452 |
(let (($x69 (not $x68))) |
|
3453 |
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69)))) |
|
3454 |
)) |
|
3455 |
(let (($x78 (not $x75))) |
|
3456 |
(let (($x81 (or $x78 $x69))) |
|
3457 |
(not $x81))))))) |
|
3458 |
)) |
|
3459 |
(let (($x138 (forall ((?v0 Int) )(let (($x68 (<= ?v0 0))) |
|
3460 |
(let (($x69 (not $x68))) |
|
3461 |
(let (($x126 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0))) |
|
3462 |
(not $x68))) |
|
3463 |
)) |
|
3464 |
(not (or (not $x126) $x69)))))) |
|
3465 |
)) |
|
3466 |
(let ((@x156 (trans (rewrite (= $x122 $x138)) (rewrite (= $x138 $x152)) (= $x122 $x152)))) |
|
3467 |
(let (($x116 (forall ((?v0 Int) )(let (($x68 (<= ?v0 0))) |
|
3468 |
(let (($x75 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0))) |
|
3469 |
(let (($x69 (not $x68))) |
|
3470 |
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69)))) |
|
3471 |
)) |
|
3472 |
(and $x75 $x68)))) |
|
3473 |
)) |
|
3474 |
(let (($x75 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0))) |
|
3475 |
(let (($x69 (not $x68))) |
|
3476 |
(or (not (>= (+ ?v1 (* (- 1) ?0)) 0)) $x69)))) |
|
3477 |
)) |
|
3478 |
(let (($x78 (not $x75))) |
|
3479 |
(let (($x81 (or $x78 $x69))) |
|
3480 |
(let (($x104 (not $x81))) |
|
3481 |
(let (($x113 (and $x75 $x68))) |
|
3482 |
(let (($x107 (forall ((?v0 Int) )(let (($x68 (<= ?v0 0))) |
|
3483 |
(let (($x69 (not $x68))) |
|
3484 |
(let (($x100 (not $x69))) |
|
3485 |
(let (($x75 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0))) |
|
3486 |
(let (($x69 (not $x68))) |
|
3487 |
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69)))) |
|
3488 |
)) |
|
3489 |
(and $x75 $x100)))))) |
|
3490 |
)) |
|
3491 |
(let ((@x115 (monotonicity (rewrite (= (not $x69) $x68)) (= (and $x75 (not $x69)) $x113)))) |
|
3492 |
(let (($x84 (exists ((?v0 Int) )(let (($x68 (<= ?v0 0))) |
|
3493 |
(let (($x69 (not $x68))) |
|
3494 |
(let (($x75 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0))) |
|
3495 |
(let (($x69 (not $x68))) |
|
3496 |
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69)))) |
|
3497 |
)) |
|
3498 |
(let (($x78 (not $x75))) |
|
3499 |
(or $x78 $x69)))))) |
|
3500 |
)) |
|
3501 |
(let (($x87 (not $x84))) |
|
3502 |
(let (($x72 (or (not (>= (+ ?0 (* (- 1) ?1)) 0)) $x69))) |
|
3503 |
(let ((@x99 (nnf-neg (nnf-pos (refl (~ $x72 $x72)) (~ $x75 $x75)) (~ (not $x78) $x75)))) |
|
3504 |
(let ((@x106 (nnf-neg @x99 (refl (~ (not $x69) (not $x69))) (~ $x104 (and $x75 (not $x69)))))) |
|
3505 |
(let (($x34 (exists ((?v0 Int) )(let (($x30 (< 0 ?v0))) |
|
3506 |
(let (($x32 (forall ((?v1 Int) )(let (($x30 (< 0 ?v1))) |
|
3507 |
(let (($x29 (<= ?v0 ?v1))) |
|
3508 |
(=> $x29 $x30)))) |
|
3509 |
)) |
|
3510 |
(=> $x32 $x30)))) |
|
3511 |
)) |
|
3512 |
(let (($x35 (not $x34))) |
|
3513 |
(let (($x53 (exists ((?v0 Int) )(let (($x30 (< 0 ?v0))) |
|
3514 |
(let (($x41 (forall ((?v1 Int) )(let (($x30 (< 0 ?v1))) |
|
3515 |
(or (not (<= ?v0 ?v1)) $x30))) |
|
3516 |
)) |
|
3517 |
(or (not $x41) $x30)))) |
|
3518 |
)) |
|
3519 |
(let (($x30 (< 0 ?0))) |
|
3520 |
(let (($x41 (forall ((?v1 Int) )(let (($x30 (< 0 ?v1))) |
|
3521 |
(or (not (<= ?0 ?v1)) $x30))) |
|
3522 |
)) |
|
3523 |
(let (($x48 (or (not $x41) $x30))) |
|
3524 |
(let ((@x67 (monotonicity (rewrite (= (<= ?1 ?0) (>= (+ ?0 (* (- 1) ?1)) 0))) (= (not (<= ?1 ?0)) (not (>= (+ ?0 (* (- 1) ?1)) 0)))))) |
|
3525 |
(let ((@x74 (monotonicity @x67 (rewrite (= $x30 $x69)) (= (or (not (<= ?1 ?0)) $x30) $x72)))) |
|
3526 |
(let ((@x80 (monotonicity (quant-intro @x74 (= $x41 $x75)) (= (not $x41) $x78)))) |
|
3527 |
(let ((@x86 (quant-intro (monotonicity @x80 (rewrite (= $x30 $x69)) (= $x48 $x81)) (= $x53 $x84)))) |
|
3528 |
(let (($x32 (forall ((?v1 Int) )(let (($x30 (< 0 ?v1))) |
|
3529 |
(let (($x29 (<= ?0 ?v1))) |
|
3530 |
(=> $x29 $x30)))) |
|
3531 |
)) |
|
3532 |
(let (($x33 (=> $x32 $x30))) |
|
3533 |
(let ((@x40 (rewrite (= (=> (<= ?1 ?0) $x30) (or (not (<= ?1 ?0)) $x30))))) |
|
3534 |
(let ((@x46 (monotonicity (quant-intro @x40 (= $x32 $x41)) (= $x33 (=> $x41 $x30))))) |
|
3535 |
(let ((@x55 (quant-intro (trans @x46 (rewrite (= (=> $x41 $x30) $x48)) (= $x33 $x48)) (= $x34 $x53)))) |
|
3536 |
(let ((@x91 (trans (monotonicity @x55 (= $x35 (not $x53))) (monotonicity @x86 (= (not $x53) $x87)) (= $x35 $x87)))) |
|
3537 |
(let ((@x110 (mp~ (mp (asserted $x35) @x91 $x87) (nnf-neg @x106 (~ $x87 $x107)) $x107))) |
|
3538 |
(let ((@x125 (mp (mp @x110 (quant-intro @x115 (= $x107 $x116)) $x116) (quant-intro (rewrite (= $x113 $x104)) (= $x116 $x122)) $x122))) |
|
3539 |
(mp (mp @x125 @x156 $x152) @x180 false)))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3540 |
|
57204 | 3541 |
79a22a7943e8703e97ab2cddee03d311bc7ae2a6 36 0 |
56727 | 3542 |
unsat |
3543 |
((set-logic AUFLIA) |
|
3544 |
(proof |
|
3545 |
(let (($x35 (forall ((?v0 Int) )(let ((?x32 (* 2 a$))) |
|
3546 |
(let ((?x31 (* 2 ?v0))) |
|
3547 |
(let (($x33 (< ?x31 ?x32))) |
|
3548 |
(let (($x29 (< ?v0 a$))) |
|
3549 |
(=> $x29 $x33)))))) |
|
3550 |
)) |
|
3551 |
(let (($x36 (not $x35))) |
|
3552 |
(let (($x42 (forall ((?v0 Int) )(let ((?x32 (* 2 a$))) |
|
3553 |
(let ((?x31 (* 2 ?v0))) |
|
3554 |
(let (($x33 (< ?x31 ?x32))) |
|
3555 |
(let (($x29 (< ?v0 a$))) |
|
3556 |
(let (($x38 (not $x29))) |
|
3557 |
(or $x38 $x33))))))) |
|
3558 |
)) |
|
3559 |
(let (($x45 (not $x42))) |
|
3560 |
(let (($x71 (forall ((?v0 Int) )true) |
|
3561 |
)) |
|
3562 |
(let ((?x32 (* 2 a$))) |
|
3563 |
(let ((?x31 (* 2 ?0))) |
|
3564 |
(let (($x33 (< ?x31 ?x32))) |
|
3565 |
(let (($x29 (< ?0 a$))) |
|
3566 |
(let (($x38 (not $x29))) |
|
3567 |
(let (($x39 (or $x38 $x33))) |
|
3568 |
(let (($x50 (>= (+ ?0 (* (- 1) a$)) 0))) |
|
3569 |
(let (($x49 (not $x50))) |
|
3570 |
(let ((@x61 (trans (monotonicity (rewrite (= $x29 $x49)) (= $x38 (not $x49))) (rewrite (= (not $x49) $x50)) (= $x38 $x50)))) |
|
3571 |
(let ((@x66 (monotonicity @x61 (rewrite (= $x33 $x49)) (= $x39 (or $x50 $x49))))) |
|
3572 |
(let ((@x73 (quant-intro (trans @x66 (rewrite (= (or $x50 $x49) true)) (= $x39 true)) (= $x42 $x71)))) |
|
3573 |
(let ((@x80 (monotonicity (trans @x73 (elim-unused (= $x71 true)) (= $x42 true)) (= $x45 (not true))))) |
|
3574 |
(let ((@x84 (trans @x80 (rewrite (= (not true) false)) (= $x45 false)))) |
|
3575 |
(let ((@x47 (monotonicity (quant-intro (rewrite (= (=> $x29 $x33) $x39)) (= $x35 $x42)) (= $x36 $x45)))) |
|
3576 |
(mp (asserted $x36) (trans @x47 @x84 (= $x36 false)) false)))))))))))))))))))))) |
|
3577 |
||
57204 | 3578 |
ae4f4fb9c10608b8e3b893cc6c99e3ec5d13a86c 24 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3579 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3580 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3581 |
(declare-fun ?v1!0 () Int) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3582 |
(proof |
56727 | 3583 |
(let (($x64 (>= ?v1!0 1))) |
3584 |
(let (($x52 (forall ((?v1 Int) )(or (not (<= ?v1 0)) (not (>= ?v1 1)))) |
|
3585 |
)) |
|
3586 |
(let (($x55 (not $x52))) |
|
3587 |
(let (($x33 (forall ((?v0 Int) (?v1 Int) )(or (< 0 ?v1) (< ?v1 1))) |
|
3588 |
)) |
|
3589 |
(let (($x27 (not $x33))) |
|
3590 |
(let (($x35 (forall ((?v1 Int) )(or (< 0 ?v1) (< ?v1 1))) |
|
3591 |
)) |
|
3592 |
(let (($x32 (or (< 0 ?0) (< ?0 1)))) |
|
3593 |
(let ((@x51 (monotonicity (rewrite (= (< 0 ?0) (not (<= ?0 0)))) (rewrite (= (< ?0 1) (not (>= ?0 1)))) (= $x32 (or (not (<= ?0 0)) (not (>= ?0 1))))))) |
|
3594 |
(let ((@x57 (monotonicity (quant-intro @x51 (= $x35 $x52)) (= (not $x35) $x55)))) |
|
3595 |
(let ((@x59 (trans (monotonicity (elim-unused (= $x33 $x35)) (= $x27 (not $x35))) @x57 (= $x27 $x55)))) |
|
3596 |
(let ((@x70 (mp~ (mp (asserted $x27) @x59 $x55) (sk (~ $x55 (not (or (not (<= ?v1!0 0)) (not $x64))))) (not (or (not (<= ?v1!0 0)) (not $x64)))))) |
|
3597 |
(let ((@x74 (not-or-elim @x70 $x64))) |
|
3598 |
(let (($x65 (not $x64))) |
|
3599 |
(let (($x62 (<= ?v1!0 0))) |
|
3600 |
(let ((@x73 (not-or-elim @x70 $x62))) |
|
3601 |
(unit-resolution (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x65 (not $x62))) @x73 $x65) @x74 false)))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3602 |
|
57204 | 3603 |
d98ad8f668dead6f610669a52351ea0176a811b0 26 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3604 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3605 |
((set-logic <null>) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3606 |
(proof |
56727 | 3607 |
(let (($x58 (<= b$ 0))) |
3608 |
(let (($x62 (or (not (and (not (<= a$ 0)) (not (<= (* a$ b$) 0)))) (not $x58)))) |
|
3609 |
(let (($x65 (not $x62))) |
|
3610 |
(let (($x35 (not (=> (and (< 0 a$) (< 0 (* a$ b$))) (< 0 b$))))) |
|
3611 |
(let (($x33 (< 0 b$))) |
|
3612 |
(let (($x38 (or (not (and (< 0 a$) (< 0 (* a$ b$)))) $x33))) |
|
3613 |
(let (($x56 (= (not (and (< 0 a$) (< 0 (* a$ b$)))) (not (and (not (<= a$ 0)) (not (<= (* a$ b$) 0))))))) |
|
3614 |
(let ((?x30 (* a$ b$))) |
|
3615 |
(let (($x48 (<= ?x30 0))) |
|
3616 |
(let (($x49 (not $x48))) |
|
3617 |
(let (($x44 (<= a$ 0))) |
|
3618 |
(let (($x45 (not $x44))) |
|
3619 |
(let (($x52 (and $x45 $x49))) |
|
3620 |
(let (($x32 (and (< 0 a$) (< 0 ?x30)))) |
|
3621 |
(let ((@x54 (monotonicity (rewrite (= (< 0 a$) $x45)) (rewrite (= (< 0 ?x30) $x49)) (= $x32 $x52)))) |
|
3622 |
(let ((@x64 (monotonicity (monotonicity @x54 $x56) (rewrite (= $x33 (not $x58))) (= $x38 $x62)))) |
|
3623 |
(let ((@x43 (monotonicity (rewrite (= (=> $x32 $x33) $x38)) (= $x35 (not $x38))))) |
|
3624 |
(let ((@x69 (trans @x43 (monotonicity @x64 (= (not $x38) $x65)) (= $x35 $x65)))) |
|
3625 |
(let ((@x74 (not-or-elim (mp (asserted $x35) @x69 $x65) $x58))) |
|
3626 |
(let ((@x72 (and-elim (not-or-elim (mp (asserted $x35) @x69 $x65) $x52) $x45))) |
|
3627 |
(let ((@x73 (and-elim (not-or-elim (mp (asserted $x35) @x69 $x65) $x52) $x49))) |
|
3628 |
((_ th-lemma arith farkas 1 1 1) @x73 @x72 @x74 false)))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3629 |
|
57204 | 3630 |
271390ea915947de195c2202e30f90bb84689d60 26 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3631 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3632 |
((set-logic <null>) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3633 |
(proof |
56727 | 3634 |
(let ((?x35 (+ y$ 1))) |
3635 |
(let ((?x36 (* a$ ?x35))) |
|
3636 |
(let ((?x34 (* a$ x$))) |
|
3637 |
(let ((?x37 (+ ?x34 ?x36))) |
|
3638 |
(let ((?x30 (+ x$ 1))) |
|
3639 |
(let ((?x32 (+ ?x30 y$))) |
|
3640 |
(let ((?x33 (* a$ ?x32))) |
|
3641 |
(let (($x38 (= ?x33 ?x37))) |
|
3642 |
(let (($x39 (not $x38))) |
|
3643 |
(let (($x82 (= (= (+ a$ ?x34 (* a$ y$)) (+ a$ ?x34 (* a$ y$))) true))) |
|
3644 |
(let (($x80 (= $x38 (= (+ a$ ?x34 (* a$ y$)) (+ a$ ?x34 (* a$ y$)))))) |
|
3645 |
(let ((@x76 (rewrite (= (+ ?x34 (+ a$ (* a$ y$))) (+ a$ ?x34 (* a$ y$)))))) |
|
3646 |
(let ((@x66 (monotonicity (rewrite (= ?x35 (+ 1 y$))) (= ?x36 (* a$ (+ 1 y$)))))) |
|
3647 |
(let ((@x71 (trans @x66 (rewrite (= (* a$ (+ 1 y$)) (+ a$ (* a$ y$)))) (= ?x36 (+ a$ (* a$ y$)))))) |
|
3648 |
(let ((@x78 (trans (monotonicity @x71 (= ?x37 (+ ?x34 (+ a$ (* a$ y$))))) @x76 (= ?x37 (+ a$ ?x34 (* a$ y$)))))) |
|
3649 |
(let ((@x58 (rewrite (= (* a$ (+ 1 x$ y$)) (+ a$ ?x34 (* a$ y$)))))) |
|
3650 |
(let ((@x46 (monotonicity (rewrite (= ?x30 (+ 1 x$))) (= ?x32 (+ (+ 1 x$) y$))))) |
|
3651 |
(let ((@x51 (trans @x46 (rewrite (= (+ (+ 1 x$) y$) (+ 1 x$ y$))) (= ?x32 (+ 1 x$ y$))))) |
|
3652 |
(let ((@x60 (trans (monotonicity @x51 (= ?x33 (* a$ (+ 1 x$ y$)))) @x58 (= ?x33 (+ a$ ?x34 (* a$ y$)))))) |
|
3653 |
(let ((@x88 (monotonicity (trans (monotonicity @x60 @x78 $x80) (rewrite $x82) (= $x38 true)) (= $x39 (not true))))) |
|
3654 |
(let ((@x92 (trans @x88 (rewrite (= (not true) false)) (= $x39 false)))) |
|
3655 |
(mp (asserted $x39) @x92 false)))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3656 |
|
57204 | 3657 |
b216c79478e44396acca3654b76845499fc18a04 23 0 |
56109 | 3658 |
unsat |
3659 |
((set-logic <null>) |
|
3660 |
(proof |
|
56727 | 3661 |
(let ((?x36 (* 2.0 x$))) |
3662 |
(let ((?x37 (* ?x36 y$))) |
|
3663 |
(let ((?x32 (- 1.0 y$))) |
|
3664 |
(let ((?x33 (* x$ ?x32))) |
|
3665 |
(let ((?x30 (+ 1.0 y$))) |
|
3666 |
(let ((?x31 (* x$ ?x30))) |
|
3667 |
(let ((?x34 (- ?x31 ?x33))) |
|
3668 |
(let (($x38 (= ?x34 ?x37))) |
|
3669 |
(let (($x39 (not $x38))) |
|
3670 |
(let ((@x73 (rewrite (= (= (* 2.0 (* x$ y$)) (* 2.0 (* x$ y$))) true)))) |
|
3671 |
(let ((?x41 (* x$ y$))) |
|
3672 |
(let ((?x63 (* 2.0 ?x41))) |
|
3673 |
(let ((@x56 (rewrite (= (* x$ (+ 1.0 (* (- 1.0) y$))) (+ x$ (* (- 1.0) ?x41)))))) |
|
3674 |
(let ((@x52 (monotonicity (rewrite (= ?x32 (+ 1.0 (* (- 1.0) y$)))) (= ?x33 (* x$ (+ 1.0 (* (- 1.0) y$))))))) |
|
3675 |
(let ((@x61 (monotonicity (rewrite (= ?x31 (+ x$ ?x41))) (trans @x52 @x56 (= ?x33 (+ x$ (* (- 1.0) ?x41)))) (= ?x34 (- (+ x$ ?x41) (+ x$ (* (- 1.0) ?x41))))))) |
|
3676 |
(let ((@x66 (trans @x61 (rewrite (= (- (+ x$ ?x41) (+ x$ (* (- 1.0) ?x41))) ?x63)) (= ?x34 ?x63)))) |
|
3677 |
(let ((@x75 (trans (monotonicity @x66 (rewrite (= ?x37 ?x63)) (= $x38 (= ?x63 ?x63))) @x73 (= $x38 true)))) |
|
3678 |
(let ((@x82 (trans (monotonicity @x75 (= $x39 (not true))) (rewrite (= (not true) false)) (= $x39 false)))) |
|
3679 |
(mp (asserted $x39) @x82 false))))))))))))))))))))) |
|
56109 | 3680 |
|
57204 | 3681 |
9df6daf3cc37f0807bf370ee01536b85d300ecce 51 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3682 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3683 |
((set-logic <null>) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3684 |
(proof |
56727 | 3685 |
(let ((?x47 (+ b$ d$))) |
3686 |
(let ((?x48 (+ ?x47 e$))) |
|
3687 |
(let ((?x30 (+ 1 p$))) |
|
3688 |
(let ((?x49 (* ?x30 ?x48))) |
|
3689 |
(let ((?x44 (* d$ p$))) |
|
3690 |
(let ((?x42 (* ?x30 d$))) |
|
3691 |
(let ((?x33 (+ b$ e$))) |
|
3692 |
(let ((?x40 (* 2 ?x30))) |
|
3693 |
(let ((?x41 (* ?x40 ?x33))) |
|
3694 |
(let ((?x43 (+ ?x41 ?x42))) |
|
3695 |
(let ((?x45 (+ ?x43 ?x44))) |
|
3696 |
(let ((?x46 (+ u$ ?x45))) |
|
3697 |
(let ((?x50 (- ?x46 ?x49))) |
|
3698 |
(let ((?x37 (* p$ d$))) |
|
3699 |
(let ((?x34 (* ?x30 ?x33))) |
|
3700 |
(let ((?x35 (+ u$ ?x34))) |
|
3701 |
(let ((?x38 (+ ?x35 ?x37))) |
|
3702 |
(let (($x51 (= ?x38 ?x50))) |
|
3703 |
(let (($x52 (not $x51))) |
|
3704 |
(let ((?x55 (* p$ e$))) |
|
3705 |
(let ((?x54 (* p$ b$))) |
|
3706 |
(let ((?x70 (+ u$ b$ e$ ?x37 ?x54 ?x55))) |
|
3707 |
(let ((?x127 (+ b$ e$ d$ ?x37 ?x54 ?x55))) |
|
3708 |
(let ((?x85 (* 2 ?x55))) |
|
3709 |
(let ((?x83 (* 2 ?x54))) |
|
3710 |
(let ((?x84 (* 2 e$))) |
|
3711 |
(let ((?x82 (* 2 b$))) |
|
3712 |
(let ((?x116 (+ u$ ?x82 ?x84 d$ (* 2 ?x37) ?x83 ?x85))) |
|
3713 |
(let ((@x126 (monotonicity (rewrite (= ?x48 (+ b$ e$ d$))) (= ?x49 (* ?x30 (+ b$ e$ d$)))))) |
|
3714 |
(let ((@x131 (trans @x126 (rewrite (= (* ?x30 (+ b$ e$ d$)) ?x127)) (= ?x49 ?x127)))) |
|
3715 |
(let ((@x118 (rewrite (= (+ u$ (+ ?x82 ?x84 d$ (* 2 ?x37) ?x83 ?x85)) ?x116)))) |
|
3716 |
(let ((?x108 (+ ?x82 ?x84 d$ (* 2 ?x37) ?x83 ?x85))) |
|
3717 |
(let ((?x97 (+ ?x82 ?x84 d$ ?x37 ?x83 ?x85))) |
|
3718 |
(let ((@x88 (rewrite (= (* (+ 2 (* 2 p$)) ?x33) (+ ?x82 ?x84 ?x83 ?x85))))) |
|
3719 |
(let ((@x81 (monotonicity (rewrite (= ?x40 (+ 2 (* 2 p$)))) (= ?x41 (* (+ 2 (* 2 p$)) ?x33))))) |
|
3720 |
(let ((@x96 (monotonicity (trans @x81 @x88 (= ?x41 (+ ?x82 ?x84 ?x83 ?x85))) (rewrite (= ?x42 (+ d$ ?x37))) (= ?x43 (+ (+ ?x82 ?x84 ?x83 ?x85) (+ d$ ?x37)))))) |
|
3721 |
(let ((@x101 (trans @x96 (rewrite (= (+ (+ ?x82 ?x84 ?x83 ?x85) (+ d$ ?x37)) ?x97)) (= ?x43 ?x97)))) |
|
3722 |
(let ((@x112 (trans (monotonicity @x101 (rewrite (= ?x44 ?x37)) (= ?x45 (+ ?x97 ?x37))) (rewrite (= (+ ?x97 ?x37) ?x108)) (= ?x45 ?x108)))) |
|
3723 |
(let ((@x120 (trans (monotonicity @x112 (= ?x46 (+ u$ ?x108))) @x118 (= ?x46 ?x116)))) |
|
3724 |
(let ((@x139 (trans (monotonicity @x120 @x131 (= ?x50 (- ?x116 ?x127))) (rewrite (= (- ?x116 ?x127) ?x70)) (= ?x50 ?x70)))) |
|
3725 |
(let ((@x64 (rewrite (= (+ u$ (+ b$ e$ ?x54 ?x55)) (+ u$ b$ e$ ?x54 ?x55))))) |
|
3726 |
(let ((@x61 (monotonicity (rewrite (= ?x34 (+ b$ e$ ?x54 ?x55))) (= ?x35 (+ u$ (+ b$ e$ ?x54 ?x55)))))) |
|
3727 |
(let ((@x69 (monotonicity (trans @x61 @x64 (= ?x35 (+ u$ b$ e$ ?x54 ?x55))) (= ?x38 (+ (+ u$ b$ e$ ?x54 ?x55) ?x37))))) |
|
3728 |
(let ((@x74 (trans @x69 (rewrite (= (+ (+ u$ b$ e$ ?x54 ?x55) ?x37) ?x70)) (= ?x38 ?x70)))) |
|
3729 |
(let ((@x145 (trans (monotonicity @x74 @x139 (= $x51 (= ?x70 ?x70))) (rewrite (= (= ?x70 ?x70) true)) (= $x51 true)))) |
|
3730 |
(let ((@x152 (trans (monotonicity @x145 (= $x52 (not true))) (rewrite (= (not true) false)) (= $x52 false)))) |
|
3731 |
(mp (asserted $x52) @x152 false))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3732 |
|
57204 | 3733 |
49c385b161a0c500f84c45f85272a8ec9574fef4 126 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3734 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3735 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3736 |
(proof |
56727 | 3737 |
(let ((?x29 (of_nat$ x$))) |
3738 |
(let ((?x30 (* 2 ?x29))) |
|
3739 |
(let ((?x31 (nat$ ?x30))) |
|
3740 |
(let ((?x212 (of_nat$ ?x31))) |
|
3741 |
(let ((?x532 (* (- 1) ?x212))) |
|
3742 |
(let ((?x533 (+ ?x30 ?x532))) |
|
3743 |
(let (($x513 (<= ?x533 0))) |
|
3744 |
(let (($x531 (= ?x533 0))) |
|
3745 |
(let (($x193 (>= ?x29 0))) |
|
3746 |
(let (($x487 (>= ?x212 1))) |
|
3747 |
(let (($x485 (= ?x212 1))) |
|
3748 |
(let ((?x33 (nat$ 1))) |
|
3749 |
(let ((?x504 (of_nat$ ?x33))) |
|
3750 |
(let (($x505 (= ?x504 1))) |
|
3751 |
(let (($x546 (forall ((?v0 Int) )(!(let ((?x49 (nat$ ?v0))) |
|
3752 |
(let ((?x50 (of_nat$ ?x49))) |
|
3753 |
(let (($x51 (= ?x50 ?v0))) |
|
3754 |
(let (($x64 (>= ?v0 0))) |
|
3755 |
(let (($x65 (not $x64))) |
|
3756 |
(or $x65 $x51)))))) :pattern ( (nat$ ?v0) ))) |
|
3757 |
)) |
|
3758 |
(let (($x71 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0))) |
|
3759 |
(let ((?x50 (of_nat$ ?x49))) |
|
3760 |
(let (($x51 (= ?x50 ?v0))) |
|
3761 |
(let (($x64 (>= ?v0 0))) |
|
3762 |
(let (($x65 (not $x64))) |
|
3763 |
(or $x65 $x51))))))) |
|
3764 |
)) |
|
3765 |
(let ((?x49 (nat$ ?0))) |
|
3766 |
(let ((?x50 (of_nat$ ?x49))) |
|
3767 |
(let (($x51 (= ?x50 ?0))) |
|
3768 |
(let (($x64 (>= ?0 0))) |
|
3769 |
(let (($x65 (not $x64))) |
|
3770 |
(let (($x68 (or $x65 $x51))) |
|
3771 |
(let (($x53 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0))) |
|
3772 |
(let ((?x50 (of_nat$ ?x49))) |
|
3773 |
(let (($x51 (= ?x50 ?v0))) |
|
3774 |
(let (($x48 (<= 0 ?v0))) |
|
3775 |
(=> $x48 $x51)))))) |
|
3776 |
)) |
|
3777 |
(let (($x59 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0))) |
|
3778 |
(let ((?x50 (of_nat$ ?x49))) |
|
3779 |
(let (($x51 (= ?x50 ?v0))) |
|
3780 |
(or (not (<= 0 ?v0)) $x51))))) |
|
3781 |
)) |
|
3782 |
(let ((@x67 (monotonicity (rewrite (= (<= 0 ?0) $x64)) (= (not (<= 0 ?0)) $x65)))) |
|
3783 |
(let ((@x73 (quant-intro (monotonicity @x67 (= (or (not (<= 0 ?0)) $x51) $x68)) (= $x59 $x71)))) |
|
3784 |
(let ((@x58 (rewrite (= (=> (<= 0 ?0) $x51) (or (not (<= 0 ?0)) $x51))))) |
|
3785 |
(let ((@x76 (mp (asserted $x53) (trans (quant-intro @x58 (= $x53 $x59)) @x73 (= $x53 $x71)) $x71))) |
|
3786 |
(let ((@x551 (mp (mp~ @x76 (nnf-pos (refl (~ $x68 $x68)) (~ $x71 $x71)) $x71) (quant-intro (refl (= $x68 $x68)) (= $x71 $x546)) $x546))) |
|
3787 |
(let (($x526 (not $x546))) |
|
3788 |
(let (($x489 (or $x526 $x505))) |
|
3789 |
(let ((@x506 (rewrite (= (>= 1 0) true)))) |
|
3790 |
(let ((@x219 (trans (monotonicity @x506 (= (not (>= 1 0)) (not true))) (rewrite (= (not true) false)) (= (not (>= 1 0)) false)))) |
|
3791 |
(let ((@x223 (monotonicity @x219 (= (or (not (>= 1 0)) $x505) (or false $x505))))) |
|
3792 |
(let ((@x503 (trans @x223 (rewrite (= (or false $x505) $x505)) (= (or (not (>= 1 0)) $x505) $x505)))) |
|
3793 |
(let ((@x493 (monotonicity @x503 (= (or $x526 (or (not (>= 1 0)) $x505)) $x489)))) |
|
3794 |
(let ((@x496 (trans @x493 (rewrite (= $x489 $x489)) (= (or $x526 (or (not (>= 1 0)) $x505)) $x489)))) |
|
3795 |
(let ((@x497 (mp ((_ quant-inst 1) (or $x526 (or (not (>= 1 0)) $x505))) @x496 $x489))) |
|
3796 |
(let (($x34 (= ?x31 ?x33))) |
|
3797 |
(let ((@x42 (mp (asserted (not (not $x34))) (rewrite (= (not (not $x34)) $x34)) $x34))) |
|
3798 |
(let ((@x356 (trans (monotonicity @x42 (= ?x212 ?x504)) (unit-resolution @x497 @x551 $x505) $x485))) |
|
3799 |
(let ((@x371 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x487) (not (<= ?x212 0)))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x485) $x487)) @x356 $x487) (not (<= ?x212 0))))) |
|
3800 |
(let ((@x374 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x212 0)) (<= ?x212 0))) @x371 (not (= ?x212 0))))) |
|
3801 |
(let (($x515 (= ?x212 0))) |
|
3802 |
(let (($x517 (or $x193 $x515))) |
|
3803 |
(let (($x552 (forall ((?v0 Int) )(!(let ((?x49 (nat$ ?v0))) |
|
3804 |
(let ((?x50 (of_nat$ ?x49))) |
|
3805 |
(let (($x78 (= ?x50 0))) |
|
3806 |
(let (($x64 (>= ?v0 0))) |
|
3807 |
(or $x64 $x78))))) :pattern ( (nat$ ?v0) ))) |
|
3808 |
)) |
|
3809 |
(let (($x101 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0))) |
|
3810 |
(let ((?x50 (of_nat$ ?x49))) |
|
3811 |
(let (($x78 (= ?x50 0))) |
|
3812 |
(let (($x64 (>= ?v0 0))) |
|
3813 |
(or $x64 $x78)))))) |
|
3814 |
)) |
|
3815 |
(let ((@x556 (quant-intro (refl (= (or $x64 (= ?x50 0)) (or $x64 (= ?x50 0)))) (= $x101 $x552)))) |
|
3816 |
(let ((@x120 (nnf-pos (refl (~ (or $x64 (= ?x50 0)) (or $x64 (= ?x50 0)))) (~ $x101 $x101)))) |
|
3817 |
(let (($x80 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0))) |
|
3818 |
(let ((?x50 (of_nat$ ?x49))) |
|
3819 |
(let (($x78 (= ?x50 0))) |
|
3820 |
(let (($x77 (< ?v0 0))) |
|
3821 |
(=> $x77 $x78)))))) |
|
3822 |
)) |
|
3823 |
(let (($x86 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0))) |
|
3824 |
(let ((?x50 (of_nat$ ?x49))) |
|
3825 |
(let (($x78 (= ?x50 0))) |
|
3826 |
(let (($x77 (< ?v0 0))) |
|
3827 |
(let (($x82 (not $x77))) |
|
3828 |
(or $x82 $x78))))))) |
|
3829 |
)) |
|
3830 |
(let (($x78 (= ?x50 0))) |
|
3831 |
(let (($x98 (or $x64 $x78))) |
|
3832 |
(let (($x77 (< ?0 0))) |
|
3833 |
(let (($x82 (not $x77))) |
|
3834 |
(let (($x83 (or $x82 $x78))) |
|
3835 |
(let ((@x97 (trans (monotonicity (rewrite (= $x77 $x65)) (= $x82 (not $x65))) (rewrite (= (not $x65) $x64)) (= $x82 $x64)))) |
|
3836 |
(let ((@x105 (trans (quant-intro (rewrite (= (=> $x77 $x78) $x83)) (= $x80 $x86)) (quant-intro (monotonicity @x97 (= $x83 $x98)) (= $x86 $x101)) (= $x80 $x101)))) |
|
3837 |
(let ((@x557 (mp (mp~ (mp (asserted $x80) @x105 $x101) @x120 $x101) @x556 $x552))) |
|
3838 |
(let (($x156 (not $x552))) |
|
3839 |
(let (($x520 (or $x156 $x193 $x515))) |
|
3840 |
(let ((@x530 (rewrite (= (>= ?x30 0) $x193)))) |
|
3841 |
(let ((@x523 (monotonicity (monotonicity @x530 (= (or (>= ?x30 0) $x515) $x517)) (= (or $x156 (or (>= ?x30 0) $x515)) (or $x156 $x517))))) |
|
3842 |
(let ((@x215 (trans @x523 (rewrite (= (or $x156 $x517) $x520)) (= (or $x156 (or (>= ?x30 0) $x515)) $x520)))) |
|
3843 |
(let ((@x229 (mp ((_ quant-inst (* 2 ?x29)) (or $x156 (or (>= ?x30 0) $x515))) @x215 $x520))) |
|
3844 |
(let (($x185 (not $x193))) |
|
3845 |
(let (($x534 (or $x185 $x531))) |
|
3846 |
(let (($x188 (or $x526 $x185 $x531))) |
|
3847 |
(let (($x213 (= ?x212 ?x30))) |
|
3848 |
(let (($x208 (>= ?x30 0))) |
|
3849 |
(let (($x209 (not $x208))) |
|
3850 |
(let (($x214 (or $x209 $x213))) |
|
3851 |
(let (($x189 (or $x526 $x214))) |
|
3852 |
(let ((@x536 (monotonicity (monotonicity @x530 (= $x209 $x185)) (rewrite (= $x213 $x531)) (= $x214 $x534)))) |
|
3853 |
(let ((@x175 (trans (monotonicity @x536 (= $x189 (or $x526 $x534))) (rewrite (= (or $x526 $x534) $x188)) (= $x189 $x188)))) |
|
3854 |
(let ((@x176 (mp ((_ quant-inst (* 2 ?x29)) $x189) @x175 $x188))) |
|
3855 |
(let ((@x470 (unit-resolution (unit-resolution @x176 @x551 $x534) (unit-resolution (unit-resolution @x229 @x557 $x517) @x374 $x193) $x531))) |
|
3856 |
(let (($x514 (>= ?x533 0))) |
|
3857 |
(let (($x486 (<= ?x212 1))) |
|
3858 |
((_ th-lemma arith gcd-test -1/2 -1/2 -1/2 -1/2) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x485) $x487)) @x356 $x487) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x485) $x486)) @x356 $x486) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x531) $x514)) @x470 $x514) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x531) $x513)) @x470 $x513) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3859 |
|
57204 | 3860 |
1c2b6530334930f2f4f6e0d6b73f1d249b6c5fd8 22 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3861 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3862 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3863 |
(proof |
56727 | 3864 |
(let ((?x28 (of_nat$ a$))) |
3865 |
(let (($x57 (>= ?x28 4))) |
|
3866 |
(let (($x64 (not (or (>= ?x28 3) (not $x57))))) |
|
3867 |
(let (($x34 (< (* 2 ?x28) 7))) |
|
3868 |
(let (($x30 (< ?x28 3))) |
|
3869 |
(let (($x38 (not $x30))) |
|
3870 |
(let (($x39 (or $x38 $x34))) |
|
3871 |
(let ((@x51 (monotonicity (rewrite (= $x30 (not (>= ?x28 3)))) (= $x38 (not (not (>= ?x28 3))))))) |
|
3872 |
(let ((@x55 (trans @x51 (rewrite (= (not (not (>= ?x28 3))) (>= ?x28 3))) (= $x38 (>= ?x28 3))))) |
|
3873 |
(let ((@x63 (monotonicity @x55 (rewrite (= $x34 (not $x57))) (= $x39 (or (>= ?x28 3) (not $x57)))))) |
|
3874 |
(let ((@x44 (monotonicity (rewrite (= (=> $x30 $x34) $x39)) (= (not (=> $x30 $x34)) (not $x39))))) |
|
3875 |
(let ((@x68 (trans @x44 (monotonicity @x63 (= (not $x39) $x64)) (= (not (=> $x30 $x34)) $x64)))) |
|
3876 |
(let ((@x71 (not-or-elim (mp (asserted (not (=> $x30 $x34))) @x68 $x64) $x57))) |
|
3877 |
(let (($x58 (not $x57))) |
|
3878 |
(let (($x47 (>= ?x28 3))) |
|
3879 |
(let (($x45 (not $x47))) |
|
3880 |
(let ((@x70 (not-or-elim (mp (asserted (not (=> $x30 $x34))) @x68 $x64) $x45))) |
|
3881 |
(unit-resolution (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x58 $x47)) @x70 $x58) @x71 false)))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3882 |
|
57204 | 3883 |
995f80f06d5874ea2208846fb3b3217c3a3b9bfd 147 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3884 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3885 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
3886 |
(proof |
56727 | 3887 |
(let ((?x29 (of_nat$ y$))) |
3888 |
(let ((?x30 (+ 1 ?x29))) |
|
3889 |
(let ((?x31 (nat$ ?x30))) |
|
3890 |
(let ((?x32 (of_nat$ ?x31))) |
|
3891 |
(let ((?x43 (* (- 1) ?x29))) |
|
3892 |
(let ((?x44 (+ ?x43 ?x32))) |
|
3893 |
(let ((?x47 (nat$ ?x44))) |
|
3894 |
(let ((?x50 (of_nat$ ?x47))) |
|
3895 |
(let ((?x567 (* (- 1) ?x32))) |
|
3896 |
(let ((?x255 (+ ?x29 ?x567 ?x50))) |
|
3897 |
(let (($x513 (>= ?x255 0))) |
|
3898 |
(let (($x532 (= ?x255 0))) |
|
3899 |
(let ((?x568 (+ ?x29 ?x567))) |
|
3900 |
(let (($x248 (<= ?x568 0))) |
|
3901 |
(let (($x551 (<= ?x568 (- 1)))) |
|
3902 |
(let (($x558 (= ?x568 (- 1)))) |
|
3903 |
(let (($x229 (>= ?x29 (- 1)))) |
|
3904 |
(let (($x387 (>= ?x29 0))) |
|
3905 |
(let ((?x154 (nat$ ?x29))) |
|
3906 |
(let ((?x388 (of_nat$ ?x154))) |
|
3907 |
(let (($x352 (= ?x388 0))) |
|
3908 |
(let (($x498 (or $x387 $x352))) |
|
3909 |
(let (($x584 (forall ((?v0 Int) )(!(let ((?x81 (nat$ ?v0))) |
|
3910 |
(let ((?x82 (of_nat$ ?x81))) |
|
3911 |
(let (($x110 (= ?x82 0))) |
|
3912 |
(let (($x95 (>= ?v0 0))) |
|
3913 |
(or $x95 $x110))))) :pattern ( (nat$ ?v0) ))) |
|
3914 |
)) |
|
3915 |
(let (($x133 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0))) |
|
3916 |
(let ((?x82 (of_nat$ ?x81))) |
|
3917 |
(let (($x110 (= ?x82 0))) |
|
3918 |
(let (($x95 (>= ?v0 0))) |
|
3919 |
(or $x95 $x110)))))) |
|
3920 |
)) |
|
3921 |
(let ((?x81 (nat$ ?0))) |
|
3922 |
(let ((?x82 (of_nat$ ?x81))) |
|
3923 |
(let (($x110 (= ?x82 0))) |
|
3924 |
(let (($x95 (>= ?0 0))) |
|
3925 |
(let (($x130 (or $x95 $x110))) |
|
3926 |
(let (($x112 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0))) |
|
3927 |
(let ((?x82 (of_nat$ ?x81))) |
|
3928 |
(let (($x110 (= ?x82 0))) |
|
3929 |
(let (($x109 (< ?v0 0))) |
|
3930 |
(=> $x109 $x110)))))) |
|
3931 |
)) |
|
3932 |
(let (($x118 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0))) |
|
3933 |
(let ((?x82 (of_nat$ ?x81))) |
|
3934 |
(let (($x110 (= ?x82 0))) |
|
3935 |
(let (($x109 (< ?v0 0))) |
|
3936 |
(let (($x114 (not $x109))) |
|
3937 |
(or $x114 $x110))))))) |
|
3938 |
)) |
|
3939 |
(let ((@x125 (monotonicity (rewrite (= (< ?0 0) (not $x95))) (= (not (< ?0 0)) (not (not $x95)))))) |
|
3940 |
(let ((@x129 (trans @x125 (rewrite (= (not (not $x95)) $x95)) (= (not (< ?0 0)) $x95)))) |
|
3941 |
(let ((@x135 (quant-intro (monotonicity @x129 (= (or (not (< ?0 0)) $x110) $x130)) (= $x118 $x133)))) |
|
3942 |
(let ((@x117 (rewrite (= (=> (< ?0 0) $x110) (or (not (< ?0 0)) $x110))))) |
|
3943 |
(let ((@x138 (mp (asserted $x112) (trans (quant-intro @x117 (= $x112 $x118)) @x135 (= $x112 $x133)) $x133))) |
|
3944 |
(let ((@x589 (mp (mp~ @x138 (nnf-pos (refl (~ $x130 $x130)) (~ $x133 $x133)) $x133) (quant-intro (refl (= $x130 $x130)) (= $x133 $x584)) $x584))) |
|
3945 |
(let (($x555 (not $x584))) |
|
3946 |
(let (($x500 (or $x555 $x387 $x352))) |
|
3947 |
(let ((@x404 (mp ((_ quant-inst (of_nat$ y$)) (or $x555 $x498)) (rewrite (= (or $x555 $x498) $x500)) $x500))) |
|
3948 |
(let ((@x487 (unit-resolution (unit-resolution @x404 @x589 $x498) (hypothesis (not $x387)) $x352))) |
|
3949 |
(let (($x239 (= ?x154 y$))) |
|
3950 |
(let (($x570 (forall ((?v0 Nat$) )(!(= (nat$ (of_nat$ ?v0)) ?v0) :pattern ( (of_nat$ ?v0) ))) |
|
3951 |
)) |
|
3952 |
(let (($x77 (forall ((?v0 Nat$) )(= (nat$ (of_nat$ ?v0)) ?v0)) |
|
3953 |
)) |
|
3954 |
(let ((@x575 (trans (rewrite (= $x77 $x570)) (rewrite (= $x570 $x570)) (= $x77 $x570)))) |
|
3955 |
(let ((@x144 (refl (~ (= (nat$ (of_nat$ ?0)) ?0) (= (nat$ (of_nat$ ?0)) ?0))))) |
|
3956 |
(let ((@x576 (mp (mp~ (asserted $x77) (nnf-pos @x144 (~ $x77 $x77)) $x77) @x575 $x570))) |
|
3957 |
(let (($x241 (not $x570))) |
|
3958 |
(let (($x231 (or $x241 $x239))) |
|
3959 |
(let ((@x242 ((_ quant-inst y$) $x231))) |
|
3960 |
(let ((@x475 (monotonicity (symm (unit-resolution @x242 @x576 $x239) (= y$ ?x154)) (= ?x29 ?x388)))) |
|
3961 |
(let ((@x480 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x29 0)) $x387)) (hypothesis (not $x387)) (trans @x475 @x487 (= ?x29 0)) false))) |
|
3962 |
(let ((@x468 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x387) $x229)) (lemma @x480 $x387) $x229))) |
|
3963 |
(let (($x564 (not $x229))) |
|
3964 |
(let (($x559 (or $x564 $x558))) |
|
3965 |
(let (($x578 (forall ((?v0 Int) )(!(let ((?x81 (nat$ ?v0))) |
|
3966 |
(let ((?x82 (of_nat$ ?x81))) |
|
3967 |
(let (($x83 (= ?x82 ?v0))) |
|
3968 |
(let (($x95 (>= ?v0 0))) |
|
3969 |
(let (($x97 (not $x95))) |
|
3970 |
(or $x97 $x83)))))) :pattern ( (nat$ ?v0) ))) |
|
3971 |
)) |
|
3972 |
(let (($x103 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0))) |
|
3973 |
(let ((?x82 (of_nat$ ?x81))) |
|
3974 |
(let (($x83 (= ?x82 ?v0))) |
|
3975 |
(let (($x95 (>= ?v0 0))) |
|
3976 |
(let (($x97 (not $x95))) |
|
3977 |
(or $x97 $x83))))))) |
|
3978 |
)) |
|
3979 |
(let ((@x580 (refl (= (or (not $x95) (= ?x82 ?0)) (or (not $x95) (= ?x82 ?0)))))) |
|
3980 |
(let ((@x139 (refl (~ (or (not $x95) (= ?x82 ?0)) (or (not $x95) (= ?x82 ?0)))))) |
|
3981 |
(let (($x85 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0))) |
|
3982 |
(let ((?x82 (of_nat$ ?x81))) |
|
3983 |
(let (($x83 (= ?x82 ?v0))) |
|
3984 |
(let (($x80 (<= 0 ?v0))) |
|
3985 |
(=> $x80 $x83)))))) |
|
3986 |
)) |
|
3987 |
(let (($x91 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0))) |
|
3988 |
(let ((?x82 (of_nat$ ?x81))) |
|
3989 |
(let (($x83 (= ?x82 ?v0))) |
|
3990 |
(or (not (<= 0 ?v0)) $x83))))) |
|
3991 |
)) |
|
3992 |
(let (($x83 (= ?x82 ?0))) |
|
3993 |
(let (($x97 (not $x95))) |
|
3994 |
(let (($x100 (or $x97 $x83))) |
|
3995 |
(let (($x88 (or (not (<= 0 ?0)) $x83))) |
|
3996 |
(let ((@x99 (monotonicity (rewrite (= (<= 0 ?0) $x95)) (= (not (<= 0 ?0)) $x97)))) |
|
3997 |
(let ((@x93 (quant-intro (rewrite (= (=> (<= 0 ?0) $x83) $x88)) (= $x85 $x91)))) |
|
3998 |
(let ((@x107 (trans @x93 (quant-intro (monotonicity @x99 (= $x88 $x100)) (= $x91 $x103)) (= $x85 $x103)))) |
|
3999 |
(let ((@x148 (mp~ (mp (asserted $x85) @x107 $x103) (nnf-pos @x139 (~ $x103 $x103)) $x103))) |
|
4000 |
(let ((@x583 (mp @x148 (quant-intro @x580 (= $x103 $x578)) $x578))) |
|
4001 |
(let (($x202 (not $x578))) |
|
4002 |
(let (($x544 (or $x202 $x564 $x558))) |
|
4003 |
(let (($x557 (or (not (>= ?x30 0)) (= ?x32 ?x30)))) |
|
4004 |
(let (($x205 (or $x202 $x557))) |
|
4005 |
(let ((@x566 (monotonicity (rewrite (= (>= ?x30 0) $x229)) (= (not (>= ?x30 0)) $x564)))) |
|
4006 |
(let ((@x560 (monotonicity @x566 (rewrite (= (= ?x32 ?x30) $x558)) (= $x557 $x559)))) |
|
4007 |
(let ((@x549 (trans (monotonicity @x560 (= $x205 (or $x202 $x559))) (rewrite (= (or $x202 $x559) $x544)) (= $x205 $x544)))) |
|
4008 |
(let ((@x550 (mp ((_ quant-inst (+ 1 ?x29)) $x205) @x549 $x544))) |
|
4009 |
(let ((@x453 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x558) $x551)) (unit-resolution (unit-resolution @x550 @x583 $x559) @x468 $x558) $x551))) |
|
4010 |
(let (($x251 (not $x248))) |
|
4011 |
(let (($x535 (or $x251 $x532))) |
|
4012 |
(let (($x523 (or $x202 $x251 $x532))) |
|
4013 |
(let (($x541 (or (not (>= ?x44 0)) (= ?x50 ?x44)))) |
|
4014 |
(let (($x524 (or $x202 $x541))) |
|
4015 |
(let ((@x531 (monotonicity (rewrite (= (>= ?x44 0) $x248)) (= (not (>= ?x44 0)) $x251)))) |
|
4016 |
(let ((@x522 (monotonicity @x531 (rewrite (= (= ?x50 ?x44) $x532)) (= $x541 $x535)))) |
|
4017 |
(let ((@x369 (trans (monotonicity @x522 (= $x524 (or $x202 $x535))) (rewrite (= (or $x202 $x535) $x523)) (= $x524 $x523)))) |
|
4018 |
(let ((@x511 (mp ((_ quant-inst (+ ?x43 ?x32)) $x524) @x369 $x523))) |
|
4019 |
(let ((@x459 (unit-resolution (unit-resolution @x511 @x583 $x535) (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x551) $x248)) @x453 $x248) $x532))) |
|
4020 |
(let (($x59 (<= ?x50 0))) |
|
4021 |
(let ((@x65 (monotonicity (rewrite (= (< 0 ?x50) (not $x59))) (= (not (< 0 ?x50)) (not (not $x59)))))) |
|
4022 |
(let ((@x69 (trans @x65 (rewrite (= (not (not $x59)) $x59)) (= (not (< 0 ?x50)) $x59)))) |
|
4023 |
(let (($x53 (< 0 ?x50))) |
|
4024 |
(let (($x56 (not $x53))) |
|
4025 |
(let (($x38 (not (< (* 0 ?x32) (of_nat$ (nat$ (- ?x32 ?x29))))))) |
|
4026 |
(let ((@x49 (monotonicity (rewrite (= (- ?x32 ?x29) ?x44)) (= (nat$ (- ?x32 ?x29)) ?x47)))) |
|
4027 |
(let ((@x55 (monotonicity (rewrite (= (* 0 ?x32) 0)) (monotonicity @x49 (= (of_nat$ (nat$ (- ?x32 ?x29))) ?x50)) (= (< (* 0 ?x32) (of_nat$ (nat$ (- ?x32 ?x29)))) $x53)))) |
|
4028 |
(let ((@x72 (mp (asserted $x38) (trans (monotonicity @x55 (= $x38 $x56)) @x69 (= $x38 $x59)) $x59))) |
|
4029 |
((_ th-lemma arith farkas -1 -1 1) @x72 @x453 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x532) $x513)) @x459 $x513) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4030 |
|
57204 | 4031 |
5d99a07ea08069a53b86d7f3330815887331e82a 145 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4032 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4033 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4034 |
(proof |
56727 | 4035 |
(let ((?x29 (of_nat$ y$))) |
4036 |
(let ((?x30 (+ 1 ?x29))) |
|
4037 |
(let ((?x31 (nat$ ?x30))) |
|
4038 |
(let ((?x32 (of_nat$ ?x31))) |
|
4039 |
(let ((?x48 (+ (- 1) ?x32))) |
|
4040 |
(let ((?x51 (nat$ ?x48))) |
|
4041 |
(let ((?x585 (of_nat$ ?x51))) |
|
4042 |
(let ((?x299 (* (- 1) ?x585))) |
|
4043 |
(let ((?x434 (+ ?x29 ?x299))) |
|
4044 |
(let (($x436 (>= ?x434 0))) |
|
4045 |
(let (($x558 (= ?x29 ?x585))) |
|
4046 |
(let (($x54 (= ?x51 y$))) |
|
4047 |
(let (($x88 (<= ?x32 0))) |
|
4048 |
(let (($x98 (not (or (= (not $x88) $x54) (not $x88))))) |
|
4049 |
(let (($x40 (=> (not (ite (< 0 ?x32) true false)) false))) |
|
4050 |
(let (($x33 (< 0 ?x32))) |
|
4051 |
(let (($x34 (ite $x33 true false))) |
|
4052 |
(let (($x38 (= $x34 (= (nat$ (- ?x32 1)) y$)))) |
|
4053 |
(let (($x42 (or false (or $x38 $x40)))) |
|
4054 |
(let (($x43 (not $x42))) |
|
4055 |
(let (($x60 (= $x33 $x54))) |
|
4056 |
(let (($x75 (or $x60 $x33))) |
|
4057 |
(let ((@x94 (monotonicity (rewrite (= $x33 (not $x88))) (= $x60 (= (not $x88) $x54))))) |
|
4058 |
(let ((@x97 (monotonicity @x94 (rewrite (= $x33 (not $x88))) (= $x75 (or (= (not $x88) $x54) (not $x88)))))) |
|
4059 |
(let ((@x70 (monotonicity (monotonicity (rewrite (= $x34 $x33)) (= (not $x34) (not $x33))) (= $x40 (=> (not $x33) false))))) |
|
4060 |
(let ((@x74 (trans @x70 (rewrite (= (=> (not $x33) false) $x33)) (= $x40 $x33)))) |
|
4061 |
(let ((@x53 (monotonicity (rewrite (= (- ?x32 1) ?x48)) (= (nat$ (- ?x32 1)) ?x51)))) |
|
4062 |
(let ((@x59 (monotonicity (rewrite (= $x34 $x33)) (monotonicity @x53 (= (= (nat$ (- ?x32 1)) y$) $x54)) (= $x38 (= $x33 $x54))))) |
|
4063 |
(let ((@x77 (monotonicity (trans @x59 (rewrite (= (= $x33 $x54) $x60)) (= $x38 $x60)) @x74 (= (or $x38 $x40) $x75)))) |
|
4064 |
(let ((@x84 (trans (monotonicity @x77 (= $x42 (or false $x75))) (rewrite (= (or false $x75) $x75)) (= $x42 $x75)))) |
|
4065 |
(let ((@x102 (trans (monotonicity @x84 (= $x43 (not $x75))) (monotonicity @x97 (= (not $x75) $x98)) (= $x43 $x98)))) |
|
4066 |
(let ((@x106 (not-or-elim (mp (asserted $x43) @x102 $x98) $x88))) |
|
4067 |
(let ((@x187 (monotonicity (iff-true @x106 (= $x88 true)) (= (= $x88 $x54) (= true $x54))))) |
|
4068 |
(let ((@x191 (trans @x187 (rewrite (= (= true $x54) $x54)) (= (= $x88 $x54) $x54)))) |
|
4069 |
(let (($x173 (= $x88 $x54))) |
|
4070 |
(let ((@x105 (not-or-elim (mp (asserted $x43) @x102 $x98) (not (= (not $x88) $x54))))) |
|
4071 |
(let ((@x192 (mp (mp @x105 (rewrite (= (not (= (not $x88) $x54)) $x173)) $x173) @x191 $x54))) |
|
4072 |
(let ((@x457 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x558) $x436)) (monotonicity (symm @x192 (= y$ ?x51)) $x558) $x436))) |
|
4073 |
(let ((?x613 (* (- 1) ?x32))) |
|
4074 |
(let ((?x614 (+ ?x29 ?x613))) |
|
4075 |
(let (($x595 (<= ?x614 (- 1)))) |
|
4076 |
(let (($x612 (= ?x614 (- 1)))) |
|
4077 |
(let (($x610 (>= ?x29 (- 1)))) |
|
4078 |
(let (($x557 (>= ?x585 0))) |
|
4079 |
(let (($x559 (= ?x585 0))) |
|
4080 |
(let (($x586 (>= ?x32 1))) |
|
4081 |
(let (($x589 (not $x586))) |
|
4082 |
(let (($x632 (forall ((?v0 Int) )(!(let ((?x115 (nat$ ?v0))) |
|
4083 |
(let ((?x116 (of_nat$ ?x115))) |
|
4084 |
(let (($x144 (= ?x116 0))) |
|
4085 |
(let (($x129 (>= ?v0 0))) |
|
4086 |
(or $x129 $x144))))) :pattern ( (nat$ ?v0) ))) |
|
4087 |
)) |
|
4088 |
(let (($x167 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0))) |
|
4089 |
(let ((?x116 (of_nat$ ?x115))) |
|
4090 |
(let (($x144 (= ?x116 0))) |
|
4091 |
(let (($x129 (>= ?v0 0))) |
|
4092 |
(or $x129 $x144)))))) |
|
4093 |
)) |
|
4094 |
(let ((?x115 (nat$ ?0))) |
|
4095 |
(let ((?x116 (of_nat$ ?x115))) |
|
4096 |
(let (($x144 (= ?x116 0))) |
|
4097 |
(let (($x129 (>= ?0 0))) |
|
4098 |
(let (($x164 (or $x129 $x144))) |
|
4099 |
(let (($x146 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0))) |
|
4100 |
(let ((?x116 (of_nat$ ?x115))) |
|
4101 |
(let (($x144 (= ?x116 0))) |
|
4102 |
(let (($x143 (< ?v0 0))) |
|
4103 |
(=> $x143 $x144)))))) |
|
4104 |
)) |
|
4105 |
(let (($x152 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0))) |
|
4106 |
(let ((?x116 (of_nat$ ?x115))) |
|
4107 |
(let (($x144 (= ?x116 0))) |
|
4108 |
(let (($x143 (< ?v0 0))) |
|
4109 |
(let (($x148 (not $x143))) |
|
4110 |
(or $x148 $x144))))))) |
|
4111 |
)) |
|
4112 |
(let ((@x159 (monotonicity (rewrite (= (< ?0 0) (not $x129))) (= (not (< ?0 0)) (not (not $x129)))))) |
|
4113 |
(let ((@x163 (trans @x159 (rewrite (= (not (not $x129)) $x129)) (= (not (< ?0 0)) $x129)))) |
|
4114 |
(let ((@x169 (quant-intro (monotonicity @x163 (= (or (not (< ?0 0)) $x144) $x164)) (= $x152 $x167)))) |
|
4115 |
(let ((@x151 (rewrite (= (=> (< ?0 0) $x144) (or (not (< ?0 0)) $x144))))) |
|
4116 |
(let ((@x172 (mp (asserted $x146) (trans (quant-intro @x151 (= $x146 $x152)) @x169 (= $x146 $x167)) $x167))) |
|
4117 |
(let ((@x637 (mp (mp~ @x172 (nnf-pos (refl (~ $x164 $x164)) (~ $x167 $x167)) $x167) (quant-intro (refl (= $x164 $x164)) (= $x167 $x632)) $x632))) |
|
4118 |
(let (($x601 (not $x632))) |
|
4119 |
(let (($x564 (or $x601 $x586 $x559))) |
|
4120 |
(let ((@x588 (rewrite (= (>= ?x48 0) $x586)))) |
|
4121 |
(let ((@x394 (monotonicity (monotonicity @x588 (= (or (>= ?x48 0) $x559) (or $x586 $x559))) (= (or $x601 (or (>= ?x48 0) $x559)) (or $x601 (or $x586 $x559)))))) |
|
4122 |
(let ((@x554 (trans @x394 (rewrite (= (or $x601 (or $x586 $x559)) $x564)) (= (or $x601 (or (>= ?x48 0) $x559)) $x564)))) |
|
4123 |
(let ((@x555 (mp ((_ quant-inst (+ (- 1) ?x32)) (or $x601 (or (>= ?x48 0) $x559))) @x554 $x564))) |
|
4124 |
(let ((@x539 (unit-resolution @x555 @x637 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x589 (not $x88))) @x106 $x589) $x559))) |
|
4125 |
(let ((@x545 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x610 (not $x557) (not $x436))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x559) $x557)) @x539 $x557) @x457 $x610))) |
|
4126 |
(let (($x605 (not $x610))) |
|
4127 |
(let (($x616 (or $x605 $x612))) |
|
4128 |
(let (($x626 (forall ((?v0 Int) )(!(let ((?x115 (nat$ ?v0))) |
|
4129 |
(let ((?x116 (of_nat$ ?x115))) |
|
4130 |
(let (($x117 (= ?x116 ?v0))) |
|
4131 |
(let (($x129 (>= ?v0 0))) |
|
4132 |
(let (($x131 (not $x129))) |
|
4133 |
(or $x131 $x117)))))) :pattern ( (nat$ ?v0) ))) |
|
4134 |
)) |
|
4135 |
(let (($x137 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0))) |
|
4136 |
(let ((?x116 (of_nat$ ?x115))) |
|
4137 |
(let (($x117 (= ?x116 ?v0))) |
|
4138 |
(let (($x129 (>= ?v0 0))) |
|
4139 |
(let (($x131 (not $x129))) |
|
4140 |
(or $x131 $x117))))))) |
|
4141 |
)) |
|
4142 |
(let ((@x628 (refl (= (or (not $x129) (= ?x116 ?0)) (or (not $x129) (= ?x116 ?0)))))) |
|
4143 |
(let ((@x185 (refl (~ (or (not $x129) (= ?x116 ?0)) (or (not $x129) (= ?x116 ?0)))))) |
|
4144 |
(let (($x119 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0))) |
|
4145 |
(let ((?x116 (of_nat$ ?x115))) |
|
4146 |
(let (($x117 (= ?x116 ?v0))) |
|
4147 |
(let (($x114 (<= 0 ?v0))) |
|
4148 |
(=> $x114 $x117)))))) |
|
4149 |
)) |
|
4150 |
(let (($x125 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0))) |
|
4151 |
(let ((?x116 (of_nat$ ?x115))) |
|
4152 |
(let (($x117 (= ?x116 ?v0))) |
|
4153 |
(or (not (<= 0 ?v0)) $x117))))) |
|
4154 |
)) |
|
4155 |
(let (($x117 (= ?x116 ?0))) |
|
4156 |
(let (($x131 (not $x129))) |
|
4157 |
(let (($x134 (or $x131 $x117))) |
|
4158 |
(let (($x122 (or (not (<= 0 ?0)) $x117))) |
|
4159 |
(let ((@x133 (monotonicity (rewrite (= (<= 0 ?0) $x129)) (= (not (<= 0 ?0)) $x131)))) |
|
4160 |
(let ((@x127 (quant-intro (rewrite (= (=> (<= 0 ?0) $x117) $x122)) (= $x119 $x125)))) |
|
4161 |
(let ((@x141 (trans @x127 (quant-intro (monotonicity @x133 (= $x122 $x134)) (= $x125 $x137)) (= $x119 $x137)))) |
|
4162 |
(let ((@x196 (mp~ (mp (asserted $x119) @x141 $x137) (nnf-pos @x185 (~ $x137 $x137)) $x137))) |
|
4163 |
(let ((@x631 (mp @x196 (quant-intro @x628 (= $x137 $x626)) $x626))) |
|
4164 |
(let (($x269 (not $x626))) |
|
4165 |
(let (($x607 (or $x269 $x605 $x612))) |
|
4166 |
(let (($x273 (= ?x32 ?x30))) |
|
4167 |
(let (($x291 (>= ?x30 0))) |
|
4168 |
(let (($x292 (not $x291))) |
|
4169 |
(let (($x609 (or $x292 $x273))) |
|
4170 |
(let (($x271 (or $x269 $x609))) |
|
4171 |
(let ((@x268 (monotonicity (monotonicity (rewrite (= $x291 $x610)) (= $x292 $x605)) (rewrite (= $x273 $x612)) (= $x609 $x616)))) |
|
4172 |
(let ((@x593 (trans (monotonicity @x268 (= $x271 (or $x269 $x616))) (rewrite (= (or $x269 $x616) $x607)) (= $x271 $x607)))) |
|
4173 |
(let ((@x594 (mp ((_ quant-inst (+ 1 ?x29)) $x271) @x593 $x607))) |
|
4174 |
(let ((@x538 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x612) $x595)) (unit-resolution (unit-resolution @x594 @x631 $x616) @x545 $x612) $x595))) |
|
4175 |
((_ th-lemma arith farkas 1 -1 -1 1) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x559) $x557)) @x539 $x557) @x106 @x538 @x457 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4176 |
|
57204 | 4177 |
8704d70b06a6aa746ec0e023752eaa0b7eb0df18 78 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4178 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4179 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4180 |
(proof |
56727 | 4181 |
(let ((?x37 (* (- 1) x$))) |
4182 |
(let (($x55 (>= x$ 0))) |
|
4183 |
(let ((?x62 (ite $x55 x$ ?x37))) |
|
4184 |
(let ((?x554 (* (- 1) ?x62))) |
|
4185 |
(let ((?x217 (+ ?x37 ?x554))) |
|
4186 |
(let (($x562 (<= ?x217 0))) |
|
4187 |
(let (($x249 (= ?x37 ?x62))) |
|
4188 |
(let (($x56 (not $x55))) |
|
4189 |
(let (($x163 (= x$ ?x62))) |
|
4190 |
(let ((@x559 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x163) (<= (+ x$ ?x554) 0))) (unit-resolution (def-axiom (or $x56 $x163)) (hypothesis $x55) $x163) (<= (+ x$ ?x554) 0)))) |
|
4191 |
(let (($x254 (>= ?x62 0))) |
|
4192 |
(let (($x255 (not $x254))) |
|
4193 |
(let (($x588 (forall ((?v0 Int) )(!(let ((?x90 (nat$ ?v0))) |
|
4194 |
(let ((?x91 (of_nat$ ?x90))) |
|
4195 |
(let (($x92 (= ?x91 ?v0))) |
|
4196 |
(let (($x104 (>= ?v0 0))) |
|
4197 |
(let (($x106 (not $x104))) |
|
4198 |
(or $x106 $x92)))))) :pattern ( (nat$ ?v0) ))) |
|
4199 |
)) |
|
4200 |
(let (($x112 (forall ((?v0 Int) )(let ((?x90 (nat$ ?v0))) |
|
4201 |
(let ((?x91 (of_nat$ ?x90))) |
|
4202 |
(let (($x92 (= ?x91 ?v0))) |
|
4203 |
(let (($x104 (>= ?v0 0))) |
|
4204 |
(let (($x106 (not $x104))) |
|
4205 |
(or $x106 $x92))))))) |
|
4206 |
)) |
|
4207 |
(let ((?x90 (nat$ ?0))) |
|
4208 |
(let ((?x91 (of_nat$ ?x90))) |
|
4209 |
(let (($x92 (= ?x91 ?0))) |
|
4210 |
(let (($x104 (>= ?0 0))) |
|
4211 |
(let (($x106 (not $x104))) |
|
4212 |
(let (($x109 (or $x106 $x92))) |
|
4213 |
(let (($x94 (forall ((?v0 Int) )(let ((?x90 (nat$ ?v0))) |
|
4214 |
(let ((?x91 (of_nat$ ?x90))) |
|
4215 |
(let (($x92 (= ?x91 ?v0))) |
|
4216 |
(let (($x89 (<= 0 ?v0))) |
|
4217 |
(=> $x89 $x92)))))) |
|
4218 |
)) |
|
4219 |
(let (($x100 (forall ((?v0 Int) )(let ((?x90 (nat$ ?v0))) |
|
4220 |
(let ((?x91 (of_nat$ ?x90))) |
|
4221 |
(let (($x92 (= ?x91 ?v0))) |
|
4222 |
(or (not (<= 0 ?v0)) $x92))))) |
|
4223 |
)) |
|
4224 |
(let ((@x108 (monotonicity (rewrite (= (<= 0 ?0) $x104)) (= (not (<= 0 ?0)) $x106)))) |
|
4225 |
(let ((@x114 (quant-intro (monotonicity @x108 (= (or (not (<= 0 ?0)) $x92) $x109)) (= $x100 $x112)))) |
|
4226 |
(let ((@x99 (rewrite (= (=> (<= 0 ?0) $x92) (or (not (<= 0 ?0)) $x92))))) |
|
4227 |
(let ((@x117 (mp (asserted $x94) (trans (quant-intro @x99 (= $x94 $x100)) @x114 (= $x94 $x112)) $x112))) |
|
4228 |
(let ((@x593 (mp (mp~ @x117 (nnf-pos (refl (~ $x109 $x109)) (~ $x112 $x112)) $x112) (quant-intro (refl (= $x109 $x109)) (= $x112 $x588)) $x588))) |
|
4229 |
(let ((?x67 (nat$ ?x62))) |
|
4230 |
(let ((?x70 (of_nat$ ?x67))) |
|
4231 |
(let (($x73 (= ?x70 ?x62))) |
|
4232 |
(let (($x76 (not $x73))) |
|
4233 |
(let (($x28 (< x$ 0))) |
|
4234 |
(let ((?x30 (ite $x28 (- x$) x$))) |
|
4235 |
(let (($x34 (not (= (of_nat$ (nat$ ?x30)) ?x30)))) |
|
4236 |
(let (($x77 (= (not (= (of_nat$ (nat$ (ite $x28 ?x37 x$))) (ite $x28 ?x37 x$))) $x76))) |
|
4237 |
(let ((?x40 (ite $x28 ?x37 x$))) |
|
4238 |
(let ((?x43 (nat$ ?x40))) |
|
4239 |
(let ((?x46 (of_nat$ ?x43))) |
|
4240 |
(let (($x49 (= ?x46 ?x40))) |
|
4241 |
(let ((@x66 (trans (monotonicity (rewrite (= $x28 $x56)) (= ?x40 (ite $x56 ?x37 x$))) (rewrite (= (ite $x56 ?x37 x$) ?x62)) (= ?x40 ?x62)))) |
|
4242 |
(let ((@x75 (monotonicity (monotonicity (monotonicity @x66 (= ?x43 ?x67)) (= ?x46 ?x70)) @x66 (= $x49 $x73)))) |
|
4243 |
(let ((@x45 (monotonicity (monotonicity (rewrite (= (- x$) ?x37)) (= ?x30 ?x40)) (= (nat$ ?x30) ?x43)))) |
|
4244 |
(let ((@x51 (monotonicity (monotonicity @x45 (= (of_nat$ (nat$ ?x30)) ?x46)) (monotonicity (rewrite (= (- x$) ?x37)) (= ?x30 ?x40)) (= (= (of_nat$ (nat$ ?x30)) ?x30) $x49)))) |
|
4245 |
(let ((@x80 (trans (monotonicity @x51 (= $x34 (not $x49))) (monotonicity @x75 $x77) (= $x34 $x76)))) |
|
4246 |
(let ((@x81 (mp (asserted $x34) @x80 $x76))) |
|
4247 |
(let (($x239 (or (not $x588) $x255 $x73))) |
|
4248 |
(let ((@x576 (mp ((_ quant-inst (ite $x55 x$ ?x37)) (or (not $x588) (or $x255 $x73))) (rewrite (= (or (not $x588) (or $x255 $x73)) $x239)) $x239))) |
|
4249 |
(let ((@x561 ((_ th-lemma arith farkas -1 1 1) (hypothesis $x55) (unit-resolution @x576 @x81 @x593 $x255) @x559 false))) |
|
4250 |
(let ((@x198 (lemma @x561 $x56))) |
|
4251 |
(let ((@x566 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x249) $x562)) (unit-resolution (def-axiom (or $x55 $x249)) @x198 $x249) $x562))) |
|
4252 |
(let (($x578 (<= ?x62 0))) |
|
4253 |
(let ((@x257 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x578 $x254)) (unit-resolution @x576 @x81 @x593 $x255) $x578))) |
|
4254 |
((_ th-lemma arith farkas 1 1 1) @x257 @x198 @x566 false))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4255 |
|
57204 | 4256 |
ce85402875b83dc2f06a381810d29a2061933b9f 312 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4257 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4258 |
((set-logic AUFLIA) |
56727 | 4259 |
(declare-fun ?v1!0 (Nat$) Nat$) |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4260 |
(proof |
56727 | 4261 |
(let ((?x89 (of_nat$ m$))) |
4262 |
(let ((?x90 (* 4 ?x89))) |
|
4263 |
(let ((?x98 (+ 1 ?x90))) |
|
4264 |
(let ((?x101 (nat$ ?x98))) |
|
4265 |
(let ((?x295 (of_nat$ ?x101))) |
|
4266 |
(let ((?x598 (* (- 1) ?x295))) |
|
4267 |
(let ((?x599 (+ ?x90 ?x598))) |
|
4268 |
(let (($x574 (>= ?x599 (- 1)))) |
|
4269 |
(let (($x597 (= ?x599 (- 1)))) |
|
4270 |
(let (($x610 (>= ?x89 0))) |
|
4271 |
(let (($x380 (<= ?x295 1))) |
|
4272 |
(let (($x687 (not $x380))) |
|
4273 |
(let (($x701 (forall ((?v1 Nat$) )(!(let ((?x89 (of_nat$ m$))) |
|
4274 |
(let ((?x90 (* 4 ?x89))) |
|
4275 |
(let ((?x98 (+ 1 ?x90))) |
|
4276 |
(let ((?x101 (nat$ ?x98))) |
|
4277 |
(let (($x382 (= ?v1 ?x101))) |
|
4278 |
(let ((?x34 (nat$ 1))) |
|
4279 |
(let (($x35 (= ?v1 ?x34))) |
|
4280 |
(let (($x381 (dvd$ ?v1 ?x101))) |
|
4281 |
(let (($x371 (not $x381))) |
|
4282 |
(or $x371 $x35 $x382)))))))))) :pattern ( (dvd$ ?v1 (nat$ (+ 1 (* 4 (of_nat$ m$))))) ))) |
|
4283 |
)) |
|
4284 |
(let (($x702 (not $x701))) |
|
4285 |
(let (($x357 (or $x380 $x702))) |
|
4286 |
(let (($x487 (not $x357))) |
|
4287 |
(let (($x104 (prime_nat$ ?x101))) |
|
4288 |
(let (($x110 (not $x104))) |
|
4289 |
(let (($x697 (or $x110 $x487))) |
|
4290 |
(let ((?x703 (?v1!0 ?x101))) |
|
4291 |
(let (($x707 (= ?x703 ?x101))) |
|
4292 |
(let ((?x34 (nat$ 1))) |
|
4293 |
(let (($x706 (= ?x703 ?x34))) |
|
4294 |
(let (($x704 (dvd$ ?x703 ?x101))) |
|
4295 |
(let (($x705 (not $x704))) |
|
4296 |
(let (($x708 (or $x705 $x706 $x707))) |
|
4297 |
(let (($x698 (not $x708))) |
|
4298 |
(let (($x360 (or $x104 $x380 $x698))) |
|
4299 |
(let (($x700 (not $x360))) |
|
4300 |
(let (($x369 (not $x697))) |
|
4301 |
(let (($x342 (or $x369 $x700))) |
|
4302 |
(let (($x684 (not $x342))) |
|
4303 |
(let (($x738 (forall ((?v0 Nat$) )(!(let (($x219 (or (not (dvd$ (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (nat$ 1)) (= (?v1!0 ?v0) ?v0)))) |
|
57170 | 4304 |
(let (($x220 (not $x219))) |
56727 | 4305 |
(let ((?x30 (of_nat$ ?v0))) |
4306 |
(let (($x65 (<= ?x30 1))) |
|
4307 |
(let (($x28 (prime_nat$ ?v0))) |
|
57170 | 4308 |
(let (($x245 (or $x28 $x65 $x220))) |
56727 | 4309 |
(let (($x710 (forall ((?v1 Nat$) )(!(let ((?x34 (nat$ 1))) |
4310 |
(let (($x35 (= ?v1 ?x34))) |
|
4311 |
(or (not (dvd$ ?v1 ?v0)) $x35 (= ?v1 ?v0)))) :pattern ( (dvd$ ?v1 ?v0) ))) |
|
4312 |
)) |
|
4313 |
(let (($x200 (not $x28))) |
|
4314 |
(not (or (not (or $x200 (not (or $x65 (not $x710))))) (not $x245))))))))))) :pattern ( (prime_nat$ ?v0) ) :pattern ( (of_nat$ ?v0) ))) |
|
4315 |
)) |
|
4316 |
(let (($x290 (forall ((?v0 Nat$) )(let (($x219 (or (not (dvd$ (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (nat$ 1)) (= (?v1!0 ?v0) ?v0)))) |
|
57170 | 4317 |
(let (($x220 (not $x219))) |
56727 | 4318 |
(let ((?x30 (of_nat$ ?v0))) |
4319 |
(let (($x65 (<= ?x30 1))) |
|
4320 |
(let (($x28 (prime_nat$ ?v0))) |
|
57170 | 4321 |
(let (($x245 (or $x28 $x65 $x220))) |
56727 | 4322 |
(let (($x72 (forall ((?v1 Nat$) )(let ((?x34 (nat$ 1))) |
4323 |
(let (($x35 (= ?v1 ?x34))) |
|
4324 |
(or (not (dvd$ ?v1 ?v0)) $x35 (= ?v1 ?v0))))) |
|
4325 |
)) |
|
57170 | 4326 |
(let (($x221 (not $x72))) |
4327 |
(let (($x273 (not (or $x65 $x221)))) |
|
56727 | 4328 |
(let (($x200 (not $x28))) |
4329 |
(let (($x276 (or $x200 $x273))) |
|
4330 |
(not (or (not $x276) (not $x245))))))))))))))) |
|
4331 |
)) |
|
4332 |
(let (($x219 (or (not (dvd$ (?v1!0 ?0) ?0)) (= (?v1!0 ?0) ?x34) (= (?v1!0 ?0) ?0)))) |
|
57170 | 4333 |
(let (($x220 (not $x219))) |
56727 | 4334 |
(let ((?x30 (of_nat$ ?0))) |
4335 |
(let (($x65 (<= ?x30 1))) |
|
4336 |
(let (($x28 (prime_nat$ ?0))) |
|
57170 | 4337 |
(let (($x245 (or $x28 $x65 $x220))) |
56727 | 4338 |
(let (($x710 (forall ((?v1 Nat$) )(!(let ((?x34 (nat$ 1))) |
4339 |
(let (($x35 (= ?v1 ?x34))) |
|
4340 |
(or (not (dvd$ ?v1 ?0)) $x35 (= ?v1 ?0)))) :pattern ( (dvd$ ?v1 ?0) ))) |
|
4341 |
)) |
|
4342 |
(let (($x200 (not $x28))) |
|
4343 |
(let (($x72 (forall ((?v1 Nat$) )(let ((?x34 (nat$ 1))) |
|
4344 |
(let (($x35 (= ?v1 ?x34))) |
|
4345 |
(or (not (dvd$ ?v1 ?0)) $x35 (= ?v1 ?0))))) |
|
4346 |
)) |
|
57170 | 4347 |
(let (($x221 (not $x72))) |
4348 |
(let (($x273 (not (or $x65 $x221)))) |
|
56727 | 4349 |
(let (($x276 (or $x200 $x273))) |
4350 |
(let (($x285 (not (or (not $x276) (not $x245))))) |
|
4351 |
(let (($x734 (= $x285 (not (or (not (or $x200 (not (or $x65 (not $x710))))) (not $x245)))))) |
|
4352 |
(let (($x731 (= (or (not $x276) (not $x245)) (or (not (or $x200 (not (or $x65 (not $x710))))) (not $x245))))) |
|
4353 |
(let (($x35 (= ?0 ?x34))) |
|
4354 |
(let (($x69 (or (not (dvd$ ?0 ?1)) $x35 (= ?0 ?1)))) |
|
57170 | 4355 |
(let ((@x717 (monotonicity (quant-intro (refl (= $x69 $x69)) (= $x72 $x710)) (= $x221 (not $x710))))) |
4356 |
(let ((@x723 (monotonicity (monotonicity @x717 (= (or $x65 $x221) (or $x65 (not $x710)))) (= $x273 (not (or $x65 (not $x710))))))) |
|
56727 | 4357 |
(let ((@x729 (monotonicity (monotonicity @x723 (= $x276 (or $x200 (not (or $x65 (not $x710)))))) (= (not $x276) (not (or $x200 (not (or $x65 (not $x710))))))))) |
4358 |
(let ((@x740 (quant-intro (monotonicity (monotonicity @x729 $x731) $x734) (= $x290 $x738)))) |
|
4359 |
(let (($x253 (forall ((?v0 Nat$) )(let (($x219 (or (not (dvd$ (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (nat$ 1)) (= (?v1!0 ?v0) ?v0)))) |
|
57170 | 4360 |
(let (($x220 (not $x219))) |
56727 | 4361 |
(let ((?x30 (of_nat$ ?v0))) |
4362 |
(let (($x65 (<= ?x30 1))) |
|
4363 |
(let (($x28 (prime_nat$ ?v0))) |
|
57170 | 4364 |
(let (($x245 (or $x28 $x65 $x220))) |
56727 | 4365 |
(let (($x72 (forall ((?v1 Nat$) )(let ((?x34 (nat$ 1))) |
4366 |
(let (($x35 (= ?v1 ?x34))) |
|
4367 |
(or (not (dvd$ ?v1 ?v0)) $x35 (= ?v1 ?v0))))) |
|
4368 |
)) |
|
4369 |
(let (($x66 (not $x65))) |
|
4370 |
(let (($x75 (and $x66 $x72))) |
|
4371 |
(let (($x200 (not $x28))) |
|
57170 | 4372 |
(let (($x229 (or $x200 $x75))) |
4373 |
(and $x229 $x245))))))))))))) |
|
56727 | 4374 |
)) |
4375 |
(let ((@x278 (monotonicity (rewrite (= (and (not $x65) $x72) $x273)) (= (or $x200 (and (not $x65) $x72)) $x276)))) |
|
4376 |
(let ((@x281 (monotonicity @x278 (= (and (or $x200 (and (not $x65) $x72)) $x245) (and $x276 $x245))))) |
|
4377 |
(let ((@x289 (trans @x281 (rewrite (= (and $x276 $x245) $x285)) (= (and (or $x200 (and (not $x65) $x72)) $x245) $x285)))) |
|
4378 |
(let (($x233 (forall ((?v0 Nat$) )(let (($x219 (or (not (dvd$ (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (nat$ 1)) (= (?v1!0 ?v0) ?v0)))) |
|
57170 | 4379 |
(let (($x220 (not $x219))) |
56727 | 4380 |
(let ((?x30 (of_nat$ ?v0))) |
4381 |
(let (($x65 (<= ?x30 1))) |
|
4382 |
(let (($x66 (not $x65))) |
|
4383 |
(let (($x211 (not $x66))) |
|
57170 | 4384 |
(let (($x224 (or $x211 $x220))) |
56727 | 4385 |
(let (($x28 (prime_nat$ ?v0))) |
57170 | 4386 |
(let (($x228 (or $x28 $x224))) |
56727 | 4387 |
(let (($x72 (forall ((?v1 Nat$) )(let ((?x34 (nat$ 1))) |
4388 |
(let (($x35 (= ?v1 ?x34))) |
|
4389 |
(or (not (dvd$ ?v1 ?v0)) $x35 (= ?v1 ?v0))))) |
|
4390 |
)) |
|
4391 |
(let (($x75 (and $x66 $x72))) |
|
4392 |
(let (($x200 (not $x28))) |
|
57170 | 4393 |
(let (($x229 (or $x200 $x75))) |
4394 |
(and $x229 $x228))))))))))))))) |
|
56727 | 4395 |
)) |
4396 |
(let (($x66 (not $x65))) |
|
4397 |
(let (($x75 (and $x66 $x72))) |
|
57170 | 4398 |
(let (($x229 (or $x200 $x75))) |
4399 |
(let (($x250 (and $x229 $x245))) |
|
56727 | 4400 |
(let (($x211 (not $x66))) |
57170 | 4401 |
(let (($x224 (or $x211 $x220))) |
4402 |
(let (($x228 (or $x28 $x224))) |
|
4403 |
(let (($x230 (and $x229 $x228))) |
|
4404 |
(let ((@x244 (monotonicity (monotonicity (rewrite (= $x211 $x65)) (= $x224 (or $x65 $x220))) (= $x228 (or $x28 (or $x65 $x220)))))) |
|
4405 |
(let ((@x249 (trans @x244 (rewrite (= (or $x28 (or $x65 $x220)) $x245)) (= $x228 $x245)))) |
|
56727 | 4406 |
(let (($x81 (forall ((?v0 Nat$) )(let (($x72 (forall ((?v1 Nat$) )(let ((?x34 (nat$ 1))) |
4407 |
(let (($x35 (= ?v1 ?x34))) |
|
4408 |
(or (not (dvd$ ?v1 ?v0)) $x35 (= ?v1 ?v0))))) |
|
4409 |
)) |
|
4410 |
(let ((?x30 (of_nat$ ?v0))) |
|
4411 |
(let (($x65 (<= ?x30 1))) |
|
4412 |
(let (($x66 (not $x65))) |
|
4413 |
(let (($x75 (and $x66 $x72))) |
|
4414 |
(let (($x28 (prime_nat$ ?v0))) |
|
4415 |
(= $x28 $x75)))))))) |
|
4416 |
)) |
|
57170 | 4417 |
(let ((@x227 (nnf-neg (refl (~ $x211 $x211)) (sk (~ $x221 $x220)) (~ (not $x75) $x224)))) |
56727 | 4418 |
(let ((@x210 (monotonicity (refl (~ $x66 $x66)) (nnf-pos (refl (~ $x69 $x69)) (~ $x72 $x72)) (~ $x75 $x75)))) |
4419 |
(let ((@x232 (nnf-pos (refl (~ $x28 $x28)) (refl (~ $x200 $x200)) @x210 @x227 (~ (= $x28 $x75) $x230)))) |
|
4420 |
(let (($x42 (forall ((?v0 Nat$) )(let (($x39 (forall ((?v1 Nat$) )(let (($x33 (dvd$ ?v1 ?v0))) |
|
4421 |
(=> $x33 (or (= ?v1 (nat$ 1)) (= ?v1 ?v0))))) |
|
4422 |
)) |
|
4423 |
(let ((?x30 (of_nat$ ?v0))) |
|
4424 |
(let (($x31 (< 1 ?x30))) |
|
4425 |
(let (($x28 (prime_nat$ ?v0))) |
|
4426 |
(= $x28 (and $x31 $x39))))))) |
|
4427 |
)) |
|
4428 |
(let (($x62 (forall ((?v0 Nat$) )(let (($x48 (forall ((?v1 Nat$) )(or (not (dvd$ ?v1 ?v0)) (or (= ?v1 (nat$ 1)) (= ?v1 ?v0)))) |
|
4429 |
)) |
|
4430 |
(let ((?x30 (of_nat$ ?v0))) |
|
4431 |
(let (($x31 (< 1 ?x30))) |
|
4432 |
(let (($x51 (and $x31 $x48))) |
|
4433 |
(let (($x28 (prime_nat$ ?v0))) |
|
4434 |
(= $x28 $x51))))))) |
|
4435 |
)) |
|
4436 |
(let (($x78 (= $x28 $x75))) |
|
4437 |
(let (($x48 (forall ((?v1 Nat$) )(or (not (dvd$ ?v1 ?0)) (or (= ?v1 (nat$ 1)) (= ?v1 ?0)))) |
|
4438 |
)) |
|
4439 |
(let (($x31 (< 1 ?x30))) |
|
4440 |
(let (($x51 (and $x31 $x48))) |
|
4441 |
(let (($x57 (= $x28 $x51))) |
|
4442 |
(let ((@x71 (rewrite (= (or (not (dvd$ ?0 ?1)) (or $x35 (= ?0 ?1))) $x69)))) |
|
4443 |
(let ((@x77 (monotonicity (rewrite (= $x31 $x66)) (quant-intro @x71 (= $x48 $x72)) (= $x51 $x75)))) |
|
4444 |
(let (($x39 (forall ((?v1 Nat$) )(let (($x33 (dvd$ ?v1 ?0))) |
|
4445 |
(=> $x33 (or (= ?v1 (nat$ 1)) (= ?v1 ?0))))) |
|
4446 |
)) |
|
4447 |
(let (($x41 (= $x28 (and $x31 $x39)))) |
|
4448 |
(let (($x45 (or (not (dvd$ ?0 ?1)) (or $x35 (= ?0 ?1))))) |
|
4449 |
(let ((@x50 (quant-intro (rewrite (= (=> (dvd$ ?0 ?1) (or $x35 (= ?0 ?1))) $x45)) (= $x39 $x48)))) |
|
4450 |
(let ((@x56 (monotonicity (monotonicity @x50 (= (and $x31 $x39) $x51)) (= $x41 (= $x28 $x51))))) |
|
4451 |
(let ((@x64 (quant-intro (trans @x56 (rewrite (= (= $x28 $x51) $x57)) (= $x41 $x57)) (= $x42 $x62)))) |
|
4452 |
(let ((@x85 (trans @x64 (quant-intro (monotonicity @x77 (= $x57 $x78)) (= $x62 $x81)) (= $x42 $x81)))) |
|
4453 |
(let ((@x236 (mp~ (mp (asserted $x42) @x85 $x81) (nnf-pos @x232 (~ $x81 $x233)) $x233))) |
|
4454 |
(let ((@x256 (mp @x236 (quant-intro (monotonicity @x249 (= $x230 $x250)) (= $x233 $x253)) $x253))) |
|
4455 |
(let ((@x741 (mp (mp @x256 (quant-intro @x289 (= $x253 $x290)) $x290) @x740 $x738))) |
|
4456 |
(let (($x348 (or (not $x738) $x684))) |
|
4457 |
(let ((@x685 ((_ quant-inst (nat$ ?x98)) $x348))) |
|
4458 |
(let ((@x569 (unit-resolution (def-axiom (or $x342 $x697)) (unit-resolution @x685 @x741 $x684) $x697))) |
|
4459 |
(let (($x125 (not (or $x110 (>= ?x89 1))))) |
|
4460 |
(let (($x94 (<= 1 ?x89))) |
|
4461 |
(let (($x95 (=> (prime_nat$ (nat$ (+ ?x90 1))) $x94))) |
|
4462 |
(let (($x96 (not $x95))) |
|
4463 |
(let ((@x124 (monotonicity (rewrite (= $x94 (>= ?x89 1))) (= (or $x110 $x94) (or $x110 (>= ?x89 1)))))) |
|
4464 |
(let ((@x103 (monotonicity (rewrite (= (+ ?x90 1) ?x98)) (= (nat$ (+ ?x90 1)) ?x101)))) |
|
4465 |
(let ((@x109 (monotonicity (monotonicity @x103 (= (prime_nat$ (nat$ (+ ?x90 1))) $x104)) (= $x95 (=> $x104 $x94))))) |
|
4466 |
(let ((@x115 (trans @x109 (rewrite (= (=> $x104 $x94) (or $x110 $x94))) (= $x95 (or $x110 $x94))))) |
|
4467 |
(let ((@x129 (trans (monotonicity @x115 (= $x96 (not (or $x110 $x94)))) (monotonicity @x124 (= (not (or $x110 $x94)) $x125)) (= $x96 $x125)))) |
|
4468 |
(let ((@x131 (not-or-elim (mp (asserted $x96) @x129 $x125) $x104))) |
|
4469 |
(let ((@x572 (unit-resolution (unit-resolution (def-axiom (or $x369 $x110 $x487)) @x131 (or $x369 $x487)) @x569 $x487))) |
|
4470 |
(let ((@x530 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not (<= ?x295 0)) $x380)) (unit-resolution (def-axiom (or $x357 $x687)) @x572 $x687) (not (<= ?x295 0))))) |
|
4471 |
(let ((@x561 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x295 0)) (<= ?x295 0))) @x530 (not (= ?x295 0))))) |
|
4472 |
(let (($x575 (= ?x295 0))) |
|
4473 |
(let (($x577 (or $x610 $x575))) |
|
4474 |
(let (($x756 (forall ((?v0 Int) )(!(let ((?x140 (nat$ ?v0))) |
|
4475 |
(let ((?x141 (of_nat$ ?x140))) |
|
4476 |
(let (($x169 (= ?x141 0))) |
|
4477 |
(let (($x155 (>= ?v0 0))) |
|
4478 |
(or $x155 $x169))))) :pattern ( (nat$ ?v0) ))) |
|
4479 |
)) |
|
4480 |
(let (($x192 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0))) |
|
4481 |
(let ((?x141 (of_nat$ ?x140))) |
|
4482 |
(let (($x169 (= ?x141 0))) |
|
4483 |
(let (($x155 (>= ?v0 0))) |
|
4484 |
(or $x155 $x169)))))) |
|
4485 |
)) |
|
4486 |
(let ((?x140 (nat$ ?0))) |
|
4487 |
(let ((?x141 (of_nat$ ?x140))) |
|
4488 |
(let (($x169 (= ?x141 0))) |
|
4489 |
(let (($x155 (>= ?0 0))) |
|
4490 |
(let (($x189 (or $x155 $x169))) |
|
4491 |
(let (($x171 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0))) |
|
4492 |
(let ((?x141 (of_nat$ ?x140))) |
|
4493 |
(let (($x169 (= ?x141 0))) |
|
4494 |
(let (($x168 (< ?v0 0))) |
|
4495 |
(=> $x168 $x169)))))) |
|
4496 |
)) |
|
4497 |
(let (($x177 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0))) |
|
4498 |
(let ((?x141 (of_nat$ ?x140))) |
|
4499 |
(let (($x169 (= ?x141 0))) |
|
4500 |
(let (($x168 (< ?v0 0))) |
|
4501 |
(let (($x173 (not $x168))) |
|
4502 |
(or $x173 $x169))))))) |
|
4503 |
)) |
|
4504 |
(let ((@x184 (monotonicity (rewrite (= (< ?0 0) (not $x155))) (= (not (< ?0 0)) (not (not $x155)))))) |
|
4505 |
(let ((@x188 (trans @x184 (rewrite (= (not (not $x155)) $x155)) (= (not (< ?0 0)) $x155)))) |
|
4506 |
(let ((@x194 (quant-intro (monotonicity @x188 (= (or (not (< ?0 0)) $x169) $x189)) (= $x177 $x192)))) |
|
4507 |
(let ((@x176 (rewrite (= (=> (< ?0 0) $x169) (or (not (< ?0 0)) $x169))))) |
|
4508 |
(let ((@x197 (mp (asserted $x171) (trans (quant-intro @x176 (= $x171 $x177)) @x194 (= $x171 $x192)) $x192))) |
|
4509 |
(let ((@x761 (mp (mp~ @x197 (nnf-pos (refl (~ $x189 $x189)) (~ $x192 $x192)) $x192) (quant-intro (refl (= $x189 $x189)) (= $x192 $x756)) $x756))) |
|
4510 |
(let (($x580 (not $x756))) |
|
4511 |
(let (($x581 (or $x580 $x610 $x575))) |
|
4512 |
(let ((@x612 (rewrite (= (>= ?x98 0) $x610)))) |
|
4513 |
(let ((@x579 (monotonicity @x612 (= (or (>= ?x98 0) $x575) $x577)))) |
|
4514 |
(let ((@x555 (monotonicity @x579 (= (or $x580 (or (>= ?x98 0) $x575)) (or $x580 $x577))))) |
|
4515 |
(let ((@x564 (trans @x555 (rewrite (= (or $x580 $x577) $x581)) (= (or $x580 (or (>= ?x98 0) $x575)) $x581)))) |
|
4516 |
(let ((@x565 (mp ((_ quant-inst (+ 1 ?x90)) (or $x580 (or (>= ?x98 0) $x575))) @x564 $x581))) |
|
4517 |
(let (($x613 (not $x610))) |
|
4518 |
(let (($x600 (or $x613 $x597))) |
|
4519 |
(let (($x750 (forall ((?v0 Int) )(!(let ((?x140 (nat$ ?v0))) |
|
4520 |
(let ((?x141 (of_nat$ ?x140))) |
|
4521 |
(let (($x142 (= ?x141 ?v0))) |
|
4522 |
(let (($x155 (>= ?v0 0))) |
|
4523 |
(let (($x156 (not $x155))) |
|
4524 |
(or $x156 $x142)))))) :pattern ( (nat$ ?v0) ))) |
|
4525 |
)) |
|
4526 |
(let (($x162 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0))) |
|
4527 |
(let ((?x141 (of_nat$ ?x140))) |
|
4528 |
(let (($x142 (= ?x141 ?v0))) |
|
4529 |
(let (($x155 (>= ?v0 0))) |
|
4530 |
(let (($x156 (not $x155))) |
|
4531 |
(or $x156 $x142))))))) |
|
4532 |
)) |
|
4533 |
(let ((@x752 (refl (= (or (not $x155) (= ?x141 ?0)) (or (not $x155) (= ?x141 ?0)))))) |
|
4534 |
(let ((@x263 (refl (~ (or (not $x155) (= ?x141 ?0)) (or (not $x155) (= ?x141 ?0)))))) |
|
4535 |
(let (($x144 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0))) |
|
4536 |
(let ((?x141 (of_nat$ ?x140))) |
|
4537 |
(let (($x142 (= ?x141 ?v0))) |
|
4538 |
(let (($x139 (<= 0 ?v0))) |
|
4539 |
(=> $x139 $x142)))))) |
|
4540 |
)) |
|
4541 |
(let (($x150 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0))) |
|
4542 |
(let ((?x141 (of_nat$ ?x140))) |
|
4543 |
(let (($x142 (= ?x141 ?v0))) |
|
4544 |
(or (not (<= 0 ?v0)) $x142))))) |
|
4545 |
)) |
|
4546 |
(let (($x142 (= ?x141 ?0))) |
|
4547 |
(let (($x156 (not $x155))) |
|
4548 |
(let (($x159 (or $x156 $x142))) |
|
4549 |
(let (($x147 (or (not (<= 0 ?0)) $x142))) |
|
4550 |
(let ((@x158 (monotonicity (rewrite (= (<= 0 ?0) $x155)) (= (not (<= 0 ?0)) $x156)))) |
|
4551 |
(let ((@x152 (quant-intro (rewrite (= (=> (<= 0 ?0) $x142) $x147)) (= $x144 $x150)))) |
|
4552 |
(let ((@x166 (trans @x152 (quant-intro (monotonicity @x158 (= $x147 $x159)) (= $x150 $x162)) (= $x144 $x162)))) |
|
4553 |
(let ((@x266 (mp~ (mp (asserted $x144) @x166 $x162) (nnf-pos @x263 (~ $x162 $x162)) $x162))) |
|
4554 |
(let ((@x755 (mp @x266 (quant-intro @x752 (= $x162 $x750)) $x750))) |
|
4555 |
(let (($x603 (not $x750))) |
|
4556 |
(let (($x604 (or $x603 $x613 $x597))) |
|
4557 |
(let (($x608 (= ?x295 ?x98))) |
|
4558 |
(let (($x618 (>= ?x98 0))) |
|
4559 |
(let (($x619 (not $x618))) |
|
4560 |
(let (($x609 (or $x619 $x608))) |
|
4561 |
(let (($x605 (or $x603 $x609))) |
|
4562 |
(let ((@x602 (monotonicity (monotonicity @x612 (= $x619 $x613)) (rewrite (= $x608 $x597)) (= $x609 $x600)))) |
|
4563 |
(let ((@x590 (trans (monotonicity @x602 (= $x605 (or $x603 $x600))) (rewrite (= (or $x603 $x600) $x604)) (= $x605 $x604)))) |
|
4564 |
(let ((@x591 (mp ((_ quant-inst (+ 1 ?x90)) $x605) @x590 $x604))) |
|
4565 |
(let ((@x532 (unit-resolution (unit-resolution @x591 @x755 $x600) (unit-resolution (unit-resolution @x565 @x761 $x577) @x561 $x610) $x597))) |
|
4566 |
(let ((@x133 (not-or-elim (mp (asserted $x96) @x129 $x125) (not (>= ?x89 1))))) |
|
4567 |
((_ th-lemma arith farkas -4 1 1) @x133 (unit-resolution (def-axiom (or $x357 $x687)) @x572 $x687) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x597) $x574)) @x532 $x574) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4568 |
|
57204 | 4569 |
5e90e9139eb4e9a7c2678bca8dda6cda05861f4c 23 0 |
56727 | 4570 |
unsat |
4571 |
((set-logic AUFLIA) |
|
4572 |
(proof |
|
4573 |
(let (($x40 (= x$ a$))) |
|
4574 |
(let ((?x36 (pair$ x$ y$))) |
|
4575 |
(let ((?x37 (fst$ ?x36))) |
|
4576 |
(let (($x39 (= ?x37 a$))) |
|
4577 |
(let ((@x50 (monotonicity (rewrite (= (=> $x39 $x40) (or (not $x39) $x40))) (= (not (=> $x39 $x40)) (not (or (not $x39) $x40)))))) |
|
4578 |
(let ((@x51 (not-or-elim (mp (asserted (not (=> $x39 $x40))) @x50 (not (or (not $x39) $x40))) $x39))) |
|
4579 |
(let (($x56 (= ?x37 x$))) |
|
4580 |
(let (($x478 (forall ((?v0 A$) (?v1 B$) )(!(= (fst$ (pair$ ?v0 ?v1)) ?v0) :pattern ( (pair$ ?v0 ?v1) ))) |
|
4581 |
)) |
|
4582 |
(let (($x32 (forall ((?v0 A$) (?v1 B$) )(= (fst$ (pair$ ?v0 ?v1)) ?v0)) |
|
4583 |
)) |
|
4584 |
(let (($x31 (= (fst$ (pair$ ?1 ?0)) ?1))) |
|
4585 |
(let ((@x55 (mp~ (asserted $x32) (nnf-pos (refl (~ $x31 $x31)) (~ $x32 $x32)) $x32))) |
|
4586 |
(let ((@x483 (mp @x55 (quant-intro (refl (= $x31 $x31)) (= $x32 $x478)) $x478))) |
|
4587 |
(let (($x62 (or (not $x478) $x56))) |
|
4588 |
(let ((@x149 ((_ quant-inst x$ y$) $x62))) |
|
4589 |
(let ((@x150 (trans (symm (unit-resolution @x149 @x483 $x56) (= x$ ?x37)) @x51 $x40))) |
|
4590 |
(let ((@x54 (not-or-elim (mp (asserted (not (=> $x39 $x40))) @x50 (not (or (not $x39) $x40))) (not $x40)))) |
|
4591 |
(unit-resolution @x54 @x150 false))))))))))))))))))) |
|
4592 |
||
57204 | 4593 |
53d3d89ffb6e574b15fcea58a111b4eecba9beb5 42 0 |
56727 | 4594 |
unsat |
4595 |
((set-logic AUFLIA) |
|
4596 |
(proof |
|
4597 |
(let ((?x59 (snd$a p2$))) |
|
4598 |
(let ((?x58 (fst$a p1$))) |
|
4599 |
(let (($x60 (= ?x58 ?x59))) |
|
4600 |
(let ((?x55 (pair$ y$ x$))) |
|
4601 |
(let (($x56 (= p2$ ?x55))) |
|
4602 |
(let ((?x52 (pair$a x$ y$))) |
|
4603 |
(let (($x53 (= p1$ ?x52))) |
|
4604 |
(let (($x57 (and $x53 $x56))) |
|
4605 |
(let ((@x70 (monotonicity (rewrite (= (=> $x57 $x60) (or (not $x57) $x60))) (= (not (=> $x57 $x60)) (not (or (not $x57) $x60)))))) |
|
4606 |
(let ((@x71 (not-or-elim (mp (asserted (not (=> $x57 $x60))) @x70 (not (or (not $x57) $x60))) $x57))) |
|
4607 |
(let ((@x74 (and-elim @x71 $x56))) |
|
4608 |
(let ((@x504 (symm (monotonicity @x74 (= ?x59 (snd$a ?x55))) (= (snd$a ?x55) ?x59)))) |
|
4609 |
(let ((?x100 (snd$a ?x55))) |
|
4610 |
(let (($x185 (= ?x100 x$))) |
|
4611 |
(let (($x534 (forall ((?v0 B$) (?v1 A$) )(!(= (snd$a (pair$ ?v0 ?v1)) ?v1) :pattern ( (pair$ ?v0 ?v1) ))) |
|
4612 |
)) |
|
4613 |
(let (($x47 (forall ((?v0 B$) (?v1 A$) )(= (snd$a (pair$ ?v0 ?v1)) ?v1)) |
|
4614 |
)) |
|
4615 |
(let (($x46 (= (snd$a (pair$ ?1 ?0)) ?0))) |
|
4616 |
(let ((@x96 (mp~ (asserted $x47) (nnf-pos (refl (~ $x46 $x46)) (~ $x47 $x47)) $x47))) |
|
4617 |
(let ((@x539 (mp @x96 (quant-intro (refl (= $x46 $x46)) (= $x47 $x534)) $x534))) |
|
4618 |
(let (($x190 (or (not $x534) $x185))) |
|
4619 |
(let ((@x191 ((_ quant-inst y$ x$) $x190))) |
|
4620 |
(let ((?x187 (fst$a ?x52))) |
|
4621 |
(let (($x188 (= ?x187 x$))) |
|
4622 |
(let (($x522 (forall ((?v0 A$) (?v1 B$) )(!(= (fst$a (pair$a ?v0 ?v1)) ?v0) :pattern ( (pair$a ?v0 ?v1) ))) |
|
4623 |
)) |
|
4624 |
(let (($x39 (forall ((?v0 A$) (?v1 B$) )(= (fst$a (pair$a ?v0 ?v1)) ?v0)) |
|
4625 |
)) |
|
4626 |
(let (($x38 (= (fst$a (pair$a ?1 ?0)) ?1))) |
|
4627 |
(let ((@x90 (mp~ (asserted $x39) (nnf-pos (refl (~ $x38 $x38)) (~ $x39 $x39)) $x39))) |
|
4628 |
(let ((@x527 (mp @x90 (quant-intro (refl (= $x38 $x38)) (= $x39 $x522)) $x522))) |
|
4629 |
(let (($x162 (or (not $x522) $x188))) |
|
4630 |
(let ((@x292 ((_ quant-inst x$ y$) $x162))) |
|
4631 |
(let ((@x505 (trans (monotonicity (and-elim @x71 $x53) (= ?x58 ?x187)) (unit-resolution @x292 @x527 $x188) (= ?x58 x$)))) |
|
4632 |
(let ((@x489 (trans @x505 (symm (unit-resolution @x191 @x539 $x185) (= x$ ?x100)) (= ?x58 ?x100)))) |
|
4633 |
(let ((@x76 (not-or-elim (mp (asserted (not (=> $x57 $x60))) @x70 (not (or (not $x57) $x60))) (not $x60)))) |
|
4634 |
(unit-resolution @x76 (trans @x489 @x504 $x60) false)))))))))))))))))))))))))))))))))))) |
|
4635 |
||
57204 | 4636 |
f501ac3814a9ff559897f8057e18657ad1030d2a 60 0 |
56727 | 4637 |
unsat |
4638 |
((set-logic AUFLIA) |
|
4639 |
(proof |
|
4640 |
(let ((?x69 (fun_app$ f$ i$))) |
|
4641 |
(let ((?x60 (fun_upd$ f$))) |
|
4642 |
(let ((?x61 (fun_app$b ?x60 i1$))) |
|
4643 |
(let ((?x63 (fun_app$a ?x61 v1$))) |
|
4644 |
(let ((?x64 (fun_upd$ ?x63))) |
|
4645 |
(let ((?x65 (fun_app$b ?x64 i2$))) |
|
4646 |
(let ((?x67 (fun_app$a ?x65 v2$))) |
|
4647 |
(let ((?x68 (fun_app$ ?x67 i$))) |
|
4648 |
(let (($x70 (= ?x68 ?x69))) |
|
4649 |
(let ((?x197 (fun_app$ ?x63 i$))) |
|
4650 |
(let (($x205 (= ?x197 ?x69))) |
|
4651 |
(let (($x204 (= ?x197 v1$))) |
|
4652 |
(let (($x53 (= i$ i1$))) |
|
4653 |
(let (($x484 (ite $x53 $x204 $x205))) |
|
4654 |
(let (($x531 (forall ((?v0 A_b_fun$) (?v1 A$) (?v2 B$) (?v3 A$) )(!(let ((?x46 (fun_app$ ?v0 ?v3))) |
|
4655 |
(let ((?x44 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3))) |
|
4656 |
(let (($x45 (= ?v3 ?v1))) |
|
4657 |
(ite $x45 (= ?x44 ?v2) (= ?x44 ?x46))))) :pattern ( (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3) ))) |
|
4658 |
)) |
|
4659 |
(let (($x102 (forall ((?v0 A_b_fun$) (?v1 A$) (?v2 B$) (?v3 A$) )(let ((?x46 (fun_app$ ?v0 ?v3))) |
|
4660 |
(let ((?x44 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3))) |
|
4661 |
(let (($x45 (= ?v3 ?v1))) |
|
4662 |
(ite $x45 (= ?x44 ?v2) (= ?x44 ?x46)))))) |
|
4663 |
)) |
|
4664 |
(let ((?x46 (fun_app$ ?3 ?0))) |
|
4665 |
(let ((?x44 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?3) ?2) ?1) ?0))) |
|
4666 |
(let (($x45 (= ?0 ?2))) |
|
4667 |
(let (($x97 (ite $x45 (= ?x44 ?1) (= ?x44 ?x46)))) |
|
4668 |
(let (($x49 (forall ((?v0 A_b_fun$) (?v1 A$) (?v2 B$) (?v3 A$) )(let ((?x44 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3))) |
|
4669 |
(= ?x44 (ite (= ?v3 ?v1) ?v2 (fun_app$ ?v0 ?v3))))) |
|
4670 |
)) |
|
4671 |
(let ((@x104 (quant-intro (rewrite (= (= ?x44 (ite $x45 ?1 ?x46)) $x97)) (= $x49 $x102)))) |
|
4672 |
(let ((@x91 (refl (~ (= ?x44 (ite $x45 ?1 ?x46)) (= ?x44 (ite $x45 ?1 ?x46)))))) |
|
4673 |
(let ((@x105 (mp (mp~ (asserted $x49) (nnf-pos @x91 (~ $x49 $x49)) $x49) @x104 $x102))) |
|
4674 |
(let ((@x536 (mp @x105 (quant-intro (refl (= $x97 $x97)) (= $x102 $x531)) $x531))) |
|
4675 |
(let (($x171 (not $x531))) |
|
4676 |
(let (($x486 (or $x171 $x484))) |
|
4677 |
(let ((@x487 ((_ quant-inst f$ i1$ v1$ i$) $x486))) |
|
4678 |
(let (($x54 (not $x53))) |
|
4679 |
(let (($x56 (= i$ i2$))) |
|
4680 |
(let (($x57 (not $x56))) |
|
4681 |
(let (($x58 (and $x54 $x57))) |
|
4682 |
(let ((@x80 (monotonicity (rewrite (= (=> $x58 $x70) (or (not $x58) $x70))) (= (not (=> $x58 $x70)) (not (or (not $x58) $x70)))))) |
|
4683 |
(let ((@x81 (not-or-elim (mp (asserted (not (=> $x58 $x70))) @x80 (not (or (not $x58) $x70))) $x58))) |
|
4684 |
(let ((@x82 (and-elim @x81 $x54))) |
|
4685 |
(let ((@x321 (unit-resolution (def-axiom (or (not $x484) $x53 $x205)) @x82 (or (not $x484) $x205)))) |
|
4686 |
(let (($x200 (= ?x68 ?x197))) |
|
4687 |
(let (($x196 (= ?x68 v2$))) |
|
4688 |
(let (($x179 (ite $x56 $x196 $x200))) |
|
4689 |
(let (($x301 (or $x171 $x179))) |
|
4690 |
(let ((@x511 ((_ quant-inst (fun_app$a ?x61 v1$) i2$ v2$ i$) $x301))) |
|
4691 |
(let ((@x84 (and-elim @x81 $x57))) |
|
4692 |
(let ((@x466 (unit-resolution (def-axiom (or (not $x179) $x56 $x200)) @x84 (or (not $x179) $x200)))) |
|
4693 |
(let ((@x470 (trans (unit-resolution @x466 (unit-resolution @x511 @x536 $x179) $x200) (unit-resolution @x321 (unit-resolution @x487 @x536 $x484) $x205) $x70))) |
|
4694 |
(let ((@x86 (not-or-elim (mp (asserted (not (=> $x58 $x70))) @x80 (not (or (not $x58) $x70))) (not $x70)))) |
|
4695 |
(unit-resolution @x86 @x470 false)))))))))))))))))))))))))))))))))))))))))))))))) |
|
4696 |
||
57204 | 4697 |
541ab286f481dab3994e7cef5aa3ab01f0d6487a 24 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4698 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4699 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4700 |
(proof |
56727 | 4701 |
(let (($x29 (f$ g$ x$))) |
4702 |
(let (($x73 (not $x29))) |
|
4703 |
(let (($x65 (not (or (= $x29 (fun_app$ g$ x$)) $x29 (fun_app$ g$ x$))))) |
|
4704 |
(let (($x32 (= $x29 (and (fun_app$ g$ x$) true)))) |
|
4705 |
(let (($x37 (not (or $x32 (or (= $x29 true) (= (fun_app$ g$ x$) true)))))) |
|
4706 |
(let (($x30 (fun_app$ g$ x$))) |
|
4707 |
(let (($x44 (= $x29 $x30))) |
|
4708 |
(let (($x56 (or $x44 (or $x29 $x30)))) |
|
4709 |
(let ((@x67 (monotonicity (rewrite (= $x56 (or $x44 $x29 $x30))) (= (not $x56) $x65)))) |
|
4710 |
(let ((@x55 (monotonicity (rewrite (= (= $x29 true) $x29)) (rewrite (= (= $x30 true) $x30)) (= (or (= $x29 true) (= $x30 true)) (or $x29 $x30))))) |
|
4711 |
(let ((@x43 (monotonicity (rewrite (= (and $x30 true) $x30)) (= $x32 (= $x29 $x30))))) |
|
4712 |
(let ((@x58 (monotonicity (trans @x43 (rewrite (= (= $x29 $x30) $x44)) (= $x32 $x44)) @x55 (= (or $x32 (or (= $x29 true) (= $x30 true))) $x56)))) |
|
4713 |
(let ((@x69 (trans (monotonicity @x58 (= $x37 (not $x56))) @x67 (= $x37 $x65)))) |
|
4714 |
(let ((@x70 (mp (asserted $x37) @x69 $x65))) |
|
4715 |
(let ((@x87 (monotonicity (iff-false (not-or-elim @x70 (not $x30)) (= $x30 false)) (= (= $x73 $x30) (= $x73 false))))) |
|
4716 |
(let ((@x91 (trans @x87 (rewrite (= (= $x73 false) $x29)) (= (= $x73 $x30) $x29)))) |
|
4717 |
(let ((@x93 (trans @x91 (iff-false (not-or-elim @x70 $x73) (= $x29 false)) (= (= $x73 $x30) false)))) |
|
4718 |
(let (($x77 (= $x73 $x30))) |
|
4719 |
(let ((@x80 (mp (not-or-elim @x70 (not $x44)) (rewrite (= (not $x44) $x77)) $x77))) |
|
4720 |
(mp @x80 @x93 false)))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4721 |
|
57204 | 4722 |
c6761b6a026c6bf2d28c35e9faf633fc441c84c5 45 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4723 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4724 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4725 |
(proof |
56727 | 4726 |
(let ((?x44 (id$ x$))) |
4727 |
(let (($x46 (= ?x44 x$))) |
|
4728 |
(let (($x73 (not $x46))) |
|
4729 |
(let (($x47 (id$a true))) |
|
4730 |
(let (($x510 (forall ((?v0 Bool) )(!(let (($x33 (id$a ?v0))) |
|
4731 |
(= $x33 ?v0)) :pattern ( (id$a ?v0) ))) |
|
4732 |
)) |
|
4733 |
(let (($x40 (forall ((?v0 Bool) )(let (($x33 (id$a ?v0))) |
|
4734 |
(= $x33 ?v0))) |
|
4735 |
)) |
|
4736 |
(let ((@x514 (quant-intro (refl (= (= (id$a ?0) ?0) (= (id$a ?0) ?0))) (= $x40 $x510)))) |
|
4737 |
(let ((@x69 (nnf-pos (refl (~ (= (id$a ?0) ?0) (= (id$a ?0) ?0))) (~ $x40 $x40)))) |
|
4738 |
(let (($x35 (forall ((?v0 Bool) )(let (($x33 (id$a ?v0))) |
|
4739 |
(= $x33 ?v0))) |
|
4740 |
)) |
|
4741 |
(let ((@x42 (quant-intro (rewrite (= (= (id$a ?0) ?0) (= (id$a ?0) ?0))) (= $x35 $x40)))) |
|
4742 |
(let ((@x515 (mp (mp~ (mp (asserted $x35) @x42 $x40) @x69 $x40) @x514 $x510))) |
|
4743 |
(let (($x87 (or (not $x510) $x47))) |
|
4744 |
(let ((@x176 (monotonicity (rewrite (= (= $x47 true) $x47)) (= (or (not $x510) (= $x47 true)) $x87)))) |
|
4745 |
(let ((@x179 (trans @x176 (rewrite (= $x87 $x87)) (= (or (not $x510) (= $x47 true)) $x87)))) |
|
4746 |
(let ((@x495 (unit-resolution (mp ((_ quant-inst true) (or (not $x510) (= $x47 true))) @x179 $x87) @x515 (hypothesis (not $x47)) false))) |
|
4747 |
(let (($x71 (or $x73 (not $x47)))) |
|
4748 |
(let ((@x79 (monotonicity (rewrite (= (and $x46 $x47) (not $x71))) (= (not (and $x46 $x47)) (not (not $x71)))))) |
|
4749 |
(let ((@x83 (trans @x79 (rewrite (= (not (not $x71)) $x71)) (= (not (and $x46 $x47)) $x71)))) |
|
4750 |
(let (($x54 (and $x46 $x47))) |
|
4751 |
(let (($x57 (not $x54))) |
|
4752 |
(let ((@x56 (monotonicity (rewrite (= (= $x47 true) $x47)) (= (and $x46 (= $x47 true)) $x54)))) |
|
4753 |
(let ((@x62 (mp (asserted (not (and $x46 (= $x47 true)))) (monotonicity @x56 (= (not (and $x46 (= $x47 true))) $x57)) $x57))) |
|
4754 |
(let ((@x84 (mp @x62 @x83 $x71))) |
|
4755 |
(let (($x503 (forall ((?v0 A$) )(!(let ((?x28 (id$ ?v0))) |
|
4756 |
(= ?x28 ?v0)) :pattern ( (id$ ?v0) ))) |
|
4757 |
)) |
|
4758 |
(let (($x30 (forall ((?v0 A$) )(let ((?x28 (id$ ?v0))) |
|
4759 |
(= ?x28 ?v0))) |
|
4760 |
)) |
|
4761 |
(let ((@x507 (quant-intro (refl (= (= (id$ ?0) ?0) (= (id$ ?0) ?0))) (= $x30 $x503)))) |
|
4762 |
(let ((@x64 (nnf-pos (refl (~ (= (id$ ?0) ?0) (= (id$ ?0) ?0))) (~ $x30 $x30)))) |
|
4763 |
(let ((@x508 (mp (mp~ (asserted $x30) @x64 $x30) @x507 $x503))) |
|
4764 |
(let (($x163 (or (not $x503) $x46))) |
|
4765 |
(let ((@x496 ((_ quant-inst x$) $x163))) |
|
4766 |
(unit-resolution @x496 @x508 (unit-resolution @x84 (lemma @x495 $x47) $x73) false))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4767 |
|
57204 | 4768 |
50e0d27d5994794dc9d5826e8afa4b3217acf731 14 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4769 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4770 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4771 |
(proof |
56727 | 4772 |
(let (($x29 (exists ((?v0 A$) )(g$ ?v0)) |
4773 |
)) |
|
4774 |
(let (($x30 (ite $x29 true false))) |
|
4775 |
(let (($x31 (f$ $x30))) |
|
4776 |
(let (($x32 (=> $x31 true))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4777 |
(let (($x33 (not $x32))) |
56727 | 4778 |
(let ((@x42 (monotonicity (monotonicity (rewrite (= $x30 $x29)) (= $x31 (f$ $x29))) (= $x32 (=> (f$ $x29) true))))) |
4779 |
(let ((@x46 (trans @x42 (rewrite (= (=> (f$ $x29) true) true)) (= $x32 true)))) |
|
4780 |
(let ((@x53 (trans (monotonicity @x46 (= $x33 (not true))) (rewrite (= (not true) false)) (= $x33 false)))) |
|
4781 |
(mp (asserted $x33) @x53 false))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4782 |
|
57204 | 4783 |
8b09776b03122aeacc9dd9526e1f0e5d41a07f14 14 0 |
56727 | 4784 |
unsat |
4785 |
((set-logic AUFLIA) |
|
4786 |
(proof |
|
4787 |
(let (($x29 (forall ((?v0 A$) )(g$ ?v0)) |
|
4788 |
)) |
|
4789 |
(let (($x30 (ite $x29 true false))) |
|
4790 |
(let (($x31 (f$ $x30))) |
|
4791 |
(let (($x32 (=> $x31 true))) |
|
4792 |
(let (($x33 (not $x32))) |
|
4793 |
(let ((@x42 (monotonicity (monotonicity (rewrite (= $x30 $x29)) (= $x31 (f$ $x29))) (= $x32 (=> (f$ $x29) true))))) |
|
4794 |
(let ((@x46 (trans @x42 (rewrite (= (=> (f$ $x29) true) true)) (= $x32 true)))) |
|
4795 |
(let ((@x53 (trans (monotonicity @x46 (= $x33 (not true))) (rewrite (= (not true) false)) (= $x33 false)))) |
|
4796 |
(mp (asserted $x33) @x53 false))))))))))) |
|
4797 |
||
57204 | 4798 |
b221de9d8dbe279344ac85e2ada07f5722636ce5 46 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4799 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4800 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4801 |
(proof |
56727 | 4802 |
(let ((?x61 (fun_app$a le$ 3))) |
4803 |
(let (($x63 (fun_app$ ?x61 42))) |
|
4804 |
(let (($x75 (not $x63))) |
|
4805 |
(let (($x59 (= le$ uu$))) |
|
4806 |
(let ((@x73 (monotonicity (rewrite (= (=> $x59 $x63) (or (not $x59) $x63))) (= (not (=> $x59 $x63)) (not (or (not $x59) $x63)))))) |
|
4807 |
(let ((@x74 (not-or-elim (mp (asserted (not (=> $x59 $x63))) @x73 (not (or (not $x59) $x63))) $x59))) |
|
4808 |
(let ((@x482 (monotonicity (symm @x74 (= uu$ le$)) (= (fun_app$a uu$ 3) ?x61)))) |
|
4809 |
(let ((@x484 (symm (monotonicity @x482 (= (fun_app$ (fun_app$a uu$ 3) 42) $x63)) (= $x63 (fun_app$ (fun_app$a uu$ 3) 42))))) |
|
4810 |
(let ((@x472 (monotonicity @x484 (= $x75 (not (fun_app$ (fun_app$a uu$ 3) 42)))))) |
|
4811 |
(let ((@x77 (not-or-elim (mp (asserted (not (=> $x59 $x63))) @x73 (not (or (not $x59) $x63))) $x75))) |
|
4812 |
(let ((?x79 (fun_app$a uu$ 3))) |
|
4813 |
(let (($x168 (fun_app$ ?x79 42))) |
|
4814 |
(let (($x52 (forall ((?v0 Int) (?v1 Int) )(!(let (($x46 (<= (+ ?v0 (* (- 1) ?v1)) 0))) |
|
4815 |
(let (($x31 (fun_app$ (fun_app$a uu$ ?v0) ?v1))) |
|
4816 |
(= $x31 $x46))) :pattern ( (fun_app$ (fun_app$a uu$ ?v0) ?v1) ))) |
|
4817 |
)) |
|
4818 |
(let (($x46 (<= (+ ?1 (* (- 1) ?0)) 0))) |
|
4819 |
(let (($x31 (fun_app$ (fun_app$a uu$ ?1) ?0))) |
|
4820 |
(let (($x49 (= $x31 $x46))) |
|
4821 |
(let (($x35 (forall ((?v0 Int) (?v1 Int) )(!(let (($x32 (<= ?v0 ?v1))) |
|
4822 |
(let (($x31 (fun_app$ (fun_app$a uu$ ?v0) ?v1))) |
|
4823 |
(= $x31 $x32))) :pattern ( (fun_app$ (fun_app$a uu$ ?v0) ?v1) ))) |
|
4824 |
)) |
|
4825 |
(let (($x40 (forall ((?v0 Int) (?v1 Int) )(!(let (($x32 (<= ?v0 ?v1))) |
|
4826 |
(let (($x31 (fun_app$ (fun_app$a uu$ ?v0) ?v1))) |
|
4827 |
(= $x31 $x32))) :pattern ( (fun_app$ (fun_app$a uu$ ?v0) ?v1) ))) |
|
4828 |
)) |
|
4829 |
(let ((@x51 (monotonicity (rewrite (= (<= ?1 ?0) $x46)) (= (= $x31 (<= ?1 ?0)) $x49)))) |
|
4830 |
(let ((@x42 (quant-intro (rewrite (= (= $x31 (<= ?1 ?0)) (= $x31 (<= ?1 ?0)))) (= $x35 $x40)))) |
|
4831 |
(let ((@x57 (mp (asserted $x35) (trans @x42 (quant-intro @x51 (= $x40 $x52)) (= $x35 $x52)) $x52))) |
|
4832 |
(let ((@x78 (mp~ @x57 (nnf-pos (refl (~ $x49 $x49)) (~ $x52 $x52)) $x52))) |
|
4833 |
(let (($x134 (or (not $x52) $x168))) |
|
4834 |
(let (($x137 (= (or (not $x52) (= $x168 (<= (+ 3 (* (- 1) 42)) 0))) $x134))) |
|
4835 |
(let ((?x169 (* (- 1) 42))) |
|
4836 |
(let ((?x170 (+ 3 ?x169))) |
|
4837 |
(let (($x160 (<= ?x170 0))) |
|
4838 |
(let (($x171 (= $x168 $x160))) |
|
4839 |
(let ((@x158 (trans (monotonicity (rewrite (= ?x169 (- 42))) (= ?x170 (+ 3 (- 42)))) (rewrite (= (+ 3 (- 42)) (- 39))) (= ?x170 (- 39))))) |
|
4840 |
(let ((@x497 (trans (monotonicity @x158 (= $x160 (<= (- 39) 0))) (rewrite (= (<= (- 39) 0) true)) (= $x160 true)))) |
|
4841 |
(let ((@x131 (trans (monotonicity @x497 (= $x171 (= $x168 true))) (rewrite (= (= $x168 true) $x168)) (= $x171 $x168)))) |
|
4842 |
(let ((@x478 (mp ((_ quant-inst 3 42) (or (not $x52) $x171)) (trans (monotonicity @x131 $x137) (rewrite (= $x134 $x134)) $x137) $x134))) |
|
4843 |
(unit-resolution (unit-resolution @x478 @x78 $x168) (mp @x77 @x472 (not $x168)) false))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4844 |
|
57204 | 4845 |
c94d83d8571ae767bf6025c563cdac64250f7638 189 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4846 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4847 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
4848 |
(proof |
56727 | 4849 |
(let ((?x74 (nat$ 2))) |
4850 |
(let ((?x75 (cons$ ?x74 nil$))) |
|
4851 |
(let ((?x69 (nat$ 1))) |
|
4852 |
(let ((?x76 (cons$ ?x69 ?x75))) |
|
4853 |
(let ((?x70 (cons$ ?x69 nil$))) |
|
4854 |
(let ((?x68 (nat$ 0))) |
|
4855 |
(let ((?x71 (cons$ ?x68 ?x70))) |
|
4856 |
(let ((?x72 (map$ uu$ ?x71))) |
|
4857 |
(let (($x77 (= ?x72 ?x76))) |
|
4858 |
(let ((?x264 (map$ uu$ ?x70))) |
|
4859 |
(let ((?x427 (map$ uu$ nil$))) |
|
4860 |
(let ((?x426 (fun_app$ uu$ ?x69))) |
|
4861 |
(let ((?x428 (cons$ ?x426 ?x427))) |
|
4862 |
(let (($x429 (= ?x264 ?x428))) |
|
4863 |
(let (($x598 (forall ((?v0 Nat_nat_fun$) (?v1 Nat$) (?v2 Nat_list$) )(!(let ((?x64 (cons$ (fun_app$ ?v0 ?v1) (map$ ?v0 ?v2)))) |
|
4864 |
(let ((?x61 (map$ ?v0 (cons$ ?v1 ?v2)))) |
|
4865 |
(= ?x61 ?x64))) :pattern ( (map$ ?v0 (cons$ ?v1 ?v2)) ) :pattern ( (cons$ (fun_app$ ?v0 ?v1) (map$ ?v0 ?v2)) ))) |
|
4866 |
)) |
|
4867 |
(let (($x66 (forall ((?v0 Nat_nat_fun$) (?v1 Nat$) (?v2 Nat_list$) )(let ((?x64 (cons$ (fun_app$ ?v0 ?v1) (map$ ?v0 ?v2)))) |
|
4868 |
(let ((?x61 (map$ ?v0 (cons$ ?v1 ?v2)))) |
|
4869 |
(= ?x61 ?x64)))) |
|
4870 |
)) |
|
4871 |
(let ((?x64 (cons$ (fun_app$ ?2 ?1) (map$ ?2 ?0)))) |
|
4872 |
(let ((?x61 (map$ ?2 (cons$ ?1 ?0)))) |
|
4873 |
(let (($x65 (= ?x61 ?x64))) |
|
4874 |
(let ((@x158 (mp~ (asserted $x66) (nnf-pos (refl (~ $x65 $x65)) (~ $x66 $x66)) $x66))) |
|
4875 |
(let ((@x603 (mp @x158 (quant-intro (refl (= $x65 $x65)) (= $x66 $x598)) $x598))) |
|
4876 |
(let (($x582 (not $x598))) |
|
4877 |
(let (($x524 (or $x582 $x429))) |
|
4878 |
(let ((@x511 ((_ quant-inst uu$ (nat$ 1) nil$) $x524))) |
|
4879 |
(let (($x515 (= ?x427 nil$))) |
|
4880 |
(let (($x590 (forall ((?v0 Nat_nat_fun$) )(!(= (map$ ?v0 nil$) nil$) :pattern ( (map$ ?v0 nil$) ))) |
|
4881 |
)) |
|
4882 |
(let (($x55 (forall ((?v0 Nat_nat_fun$) )(= (map$ ?v0 nil$) nil$)) |
|
4883 |
)) |
|
4884 |
(let ((@x592 (refl (= (= (map$ ?0 nil$) nil$) (= (map$ ?0 nil$) nil$))))) |
|
4885 |
(let ((@x152 (refl (~ (= (map$ ?0 nil$) nil$) (= (map$ ?0 nil$) nil$))))) |
|
4886 |
(let ((@x595 (mp (mp~ (asserted $x55) (nnf-pos @x152 (~ $x55 $x55)) $x55) (quant-intro @x592 (= $x55 $x590)) $x590))) |
|
4887 |
(let (($x506 (or (not $x590) $x515))) |
|
4888 |
(let ((@x507 ((_ quant-inst uu$) $x506))) |
|
4889 |
(let ((?x281 (of_nat$ ?x69))) |
|
4890 |
(let ((?x516 (+ 1 ?x281))) |
|
4891 |
(let ((?x517 (nat$ ?x516))) |
|
4892 |
(let (($x508 (= ?x426 ?x517))) |
|
4893 |
(let (($x47 (forall ((?v0 Nat$) )(!(let ((?x29 (fun_app$ uu$ ?v0))) |
|
4894 |
(= ?x29 (nat$ (+ 1 (of_nat$ ?v0))))) :pattern ( (fun_app$ uu$ ?v0) ))) |
|
4895 |
)) |
|
4896 |
(let ((?x29 (fun_app$ uu$ ?0))) |
|
4897 |
(let (($x44 (= ?x29 (nat$ (+ 1 (of_nat$ ?0)))))) |
|
4898 |
(let (($x36 (forall ((?v0 Nat$) )(!(let ((?x29 (fun_app$ uu$ ?v0))) |
|
4899 |
(= ?x29 (nat$ (+ (of_nat$ ?v0) 1)))) :pattern ( (fun_app$ uu$ ?v0) ))) |
|
4900 |
)) |
|
4901 |
(let ((@x43 (monotonicity (rewrite (= (+ (of_nat$ ?0) 1) (+ 1 (of_nat$ ?0)))) (= (nat$ (+ (of_nat$ ?0) 1)) (nat$ (+ 1 (of_nat$ ?0))))))) |
|
4902 |
(let ((@x46 (monotonicity @x43 (= (= ?x29 (nat$ (+ (of_nat$ ?0) 1))) $x44)))) |
|
4903 |
(let ((@x156 (mp~ (mp (asserted $x36) (quant-intro @x46 (= $x36 $x47)) $x47) (nnf-pos (refl (~ $x44 $x44)) (~ $x47 $x47)) $x47))) |
|
4904 |
(let (($x494 (or (not $x47) $x508))) |
|
4905 |
(let ((@x495 ((_ quant-inst (nat$ 1)) $x494))) |
|
4906 |
(let ((?x445 (of_nat$ ?x517))) |
|
4907 |
(let ((?x376 (nat$ ?x445))) |
|
4908 |
(let (($x377 (= ?x376 ?x517))) |
|
4909 |
(let (($x605 (forall ((?v0 Nat$) )(!(= (nat$ (of_nat$ ?v0)) ?v0) :pattern ( (of_nat$ ?v0) ))) |
|
4910 |
)) |
|
4911 |
(let (($x82 (forall ((?v0 Nat$) )(= (nat$ (of_nat$ ?v0)) ?v0)) |
|
4912 |
)) |
|
4913 |
(let ((@x610 (trans (rewrite (= $x82 $x605)) (rewrite (= $x605 $x605)) (= $x82 $x605)))) |
|
4914 |
(let ((@x162 (refl (~ (= (nat$ (of_nat$ ?0)) ?0) (= (nat$ (of_nat$ ?0)) ?0))))) |
|
4915 |
(let ((@x611 (mp (mp~ (asserted $x82) (nnf-pos @x162 (~ $x82 $x82)) $x82) @x610 $x605))) |
|
4916 |
(let (($x384 (or (not $x605) $x377))) |
|
4917 |
(let ((@x385 ((_ quant-inst (nat$ ?x516)) $x384))) |
|
4918 |
(let ((?x437 (* (- 1) ?x445))) |
|
4919 |
(let ((?x410 (+ ?x281 ?x437))) |
|
4920 |
(let (($x431 (<= ?x410 (- 1)))) |
|
4921 |
(let (($x378 (= ?x410 (- 1)))) |
|
4922 |
(let (($x448 (>= ?x281 (- 1)))) |
|
4923 |
(let (($x442 (>= ?x281 1))) |
|
4924 |
(let (($x282 (= ?x281 1))) |
|
4925 |
(let (($x613 (forall ((?v0 Int) )(!(let (($x88 (= (of_nat$ (nat$ ?v0)) ?v0))) |
|
4926 |
(let (($x101 (>= ?v0 0))) |
|
4927 |
(let (($x102 (not $x101))) |
|
4928 |
(or $x102 $x88)))) :pattern ( (nat$ ?v0) ))) |
|
4929 |
)) |
|
4930 |
(let (($x108 (forall ((?v0 Int) )(let (($x88 (= (of_nat$ (nat$ ?v0)) ?v0))) |
|
4931 |
(let (($x101 (>= ?v0 0))) |
|
4932 |
(let (($x102 (not $x101))) |
|
4933 |
(or $x102 $x88))))) |
|
4934 |
)) |
|
4935 |
(let (($x88 (= (of_nat$ (nat$ ?0)) ?0))) |
|
4936 |
(let (($x101 (>= ?0 0))) |
|
4937 |
(let (($x102 (not $x101))) |
|
4938 |
(let (($x105 (or $x102 $x88))) |
|
4939 |
(let (($x90 (forall ((?v0 Int) )(let (($x88 (= (of_nat$ (nat$ ?v0)) ?v0))) |
|
4940 |
(let (($x85 (<= 0 ?v0))) |
|
4941 |
(=> $x85 $x88)))) |
|
4942 |
)) |
|
4943 |
(let (($x96 (forall ((?v0 Int) )(let (($x88 (= (of_nat$ (nat$ ?v0)) ?v0))) |
|
4944 |
(or (not (<= 0 ?v0)) $x88))) |
|
4945 |
)) |
|
4946 |
(let ((@x104 (monotonicity (rewrite (= (<= 0 ?0) $x101)) (= (not (<= 0 ?0)) $x102)))) |
|
4947 |
(let ((@x110 (quant-intro (monotonicity @x104 (= (or (not (<= 0 ?0)) $x88) $x105)) (= $x96 $x108)))) |
|
4948 |
(let ((@x95 (rewrite (= (=> (<= 0 ?0) $x88) (or (not (<= 0 ?0)) $x88))))) |
|
4949 |
(let ((@x113 (mp (asserted $x90) (trans (quant-intro @x95 (= $x90 $x96)) @x110 (= $x90 $x108)) $x108))) |
|
4950 |
(let ((@x618 (mp (mp~ @x113 (nnf-pos (refl (~ $x105 $x105)) (~ $x108 $x108)) $x108) (quant-intro (refl (= $x105 $x105)) (= $x108 $x613)) $x613))) |
|
4951 |
(let (($x227 (not $x613))) |
|
4952 |
(let (($x271 (or $x227 $x282))) |
|
4953 |
(let ((@x578 (rewrite (= (not true) false)))) |
|
4954 |
(let ((@x181 (rewrite (= (>= 1 0) true)))) |
|
4955 |
(let ((@x289 (trans (monotonicity @x181 (= (not (>= 1 0)) (not true))) @x578 (= (not (>= 1 0)) false)))) |
|
4956 |
(let ((@x560 (monotonicity @x289 (= (or (not (>= 1 0)) $x282) (or false $x282))))) |
|
4957 |
(let ((@x270 (trans @x560 (rewrite (= (or false $x282) $x282)) (= (or (not (>= 1 0)) $x282) $x282)))) |
|
4958 |
(let ((@x552 (monotonicity @x270 (= (or $x227 (or (not (>= 1 0)) $x282)) $x271)))) |
|
4959 |
(let ((@x555 (trans @x552 (rewrite (= $x271 $x271)) (= (or $x227 (or (not (>= 1 0)) $x282)) $x271)))) |
|
4960 |
(let ((@x541 (mp ((_ quant-inst 1) (or $x227 (or (not (>= 1 0)) $x282))) @x555 $x271))) |
|
4961 |
(let ((@x351 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x282) $x442)) (unit-resolution @x541 @x618 $x282) $x442))) |
|
4962 |
(let (($x451 (not $x448))) |
|
4963 |
(let (($x409 (or $x227 $x451 $x378))) |
|
4964 |
(let (($x446 (= ?x445 ?x516))) |
|
4965 |
(let (($x443 (>= ?x516 0))) |
|
4966 |
(let (($x444 (not $x443))) |
|
4967 |
(let (($x447 (or $x444 $x446))) |
|
4968 |
(let (($x411 (or $x227 $x447))) |
|
4969 |
(let ((@x441 (monotonicity (monotonicity (rewrite (= $x443 $x448)) (= $x444 $x451)) (rewrite (= $x446 $x378)) (= $x447 (or $x451 $x378))))) |
|
4970 |
(let ((@x420 (trans (monotonicity @x441 (= $x411 (or $x227 (or $x451 $x378)))) (rewrite (= (or $x227 (or $x451 $x378)) $x409)) (= $x411 $x409)))) |
|
4971 |
(let ((@x430 (mp ((_ quant-inst (+ 1 ?x281)) $x411) @x420 $x409))) |
|
4972 |
(let ((@x343 (unit-resolution @x430 @x618 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x442) $x448)) @x351 $x448) $x378))) |
|
4973 |
(let (($x432 (>= ?x410 (- 1)))) |
|
4974 |
(let (($x331 (<= ?x281 1))) |
|
4975 |
(let ((@x335 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x282) $x331)) (unit-resolution @x541 @x618 $x282) $x331))) |
|
4976 |
(let ((@x341 ((_ th-lemma arith eq-propagate -1 -1 1 1) @x351 @x335 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x378) $x432)) @x343 $x432) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x378) $x431)) @x343 $x431) (= ?x445 2)))) |
|
4977 |
(let ((@x327 (trans (monotonicity (symm @x341 (= 2 ?x445)) (= ?x74 ?x376)) (unit-resolution @x385 @x611 $x377) (= ?x74 ?x517)))) |
|
4978 |
(let ((@x329 (trans @x327 (symm (unit-resolution @x495 @x156 $x508) (= ?x517 ?x426)) (= ?x74 ?x426)))) |
|
4979 |
(let ((@x312 (monotonicity @x329 (symm (unit-resolution @x507 @x595 $x515) (= nil$ ?x427)) (= ?x75 ?x428)))) |
|
4980 |
(let ((@x316 (trans @x312 (symm (unit-resolution @x511 @x603 $x429) (= ?x428 ?x264)) (= ?x75 ?x264)))) |
|
4981 |
(let ((?x577 (of_nat$ ?x68))) |
|
4982 |
(let ((?x522 (+ 1 ?x577))) |
|
4983 |
(let ((?x523 (nat$ ?x522))) |
|
4984 |
(let ((?x263 (fun_app$ uu$ ?x68))) |
|
4985 |
(let (($x512 (= ?x263 ?x523))) |
|
4986 |
(let (($x513 (or (not $x47) $x512))) |
|
4987 |
(let ((@x514 ((_ quant-inst (nat$ 0)) $x513))) |
|
4988 |
(let ((?x496 (of_nat$ ?x523))) |
|
4989 |
(let ((?x373 (nat$ ?x496))) |
|
4990 |
(let (($x375 (= ?x373 ?x523))) |
|
4991 |
(let (($x380 (or (not $x605) $x375))) |
|
4992 |
(let ((@x381 ((_ quant-inst (nat$ ?x522)) $x380))) |
|
4993 |
(let ((?x490 (* (- 1) ?x577))) |
|
4994 |
(let ((?x491 (+ ?x496 ?x490))) |
|
4995 |
(let (($x465 (<= ?x491 1))) |
|
4996 |
(let (($x492 (= ?x491 1))) |
|
4997 |
(let (($x499 (>= ?x577 (- 1)))) |
|
4998 |
(let (($x502 (>= ?x577 0))) |
|
4999 |
(let (($x249 (= ?x577 0))) |
|
5000 |
(let (($x228 (or $x227 $x249))) |
|
5001 |
(let ((@x584 (rewrite (= (>= 0 0) true)))) |
|
5002 |
(let ((@x241 (trans (monotonicity @x584 (= (not (>= 0 0)) (not true))) @x578 (= (not (>= 0 0)) false)))) |
|
5003 |
(let ((@x580 (monotonicity @x241 (= (or (not (>= 0 0)) $x249) (or false $x249))))) |
|
5004 |
(let ((@x226 (trans @x580 (rewrite (= (or false $x249) $x249)) (= (or (not (>= 0 0)) $x249) $x249)))) |
|
5005 |
(let ((@x568 (monotonicity @x226 (= (or $x227 (or (not (>= 0 0)) $x249)) $x228)))) |
|
5006 |
(let ((@x571 (trans @x568 (rewrite (= $x228 $x228)) (= (or $x227 (or (not (>= 0 0)) $x249)) $x228)))) |
|
5007 |
(let ((@x208 (mp ((_ quant-inst 0) (or $x227 (or (not (>= 0 0)) $x249))) @x571 $x228))) |
|
5008 |
(let ((@x323 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x249) $x502)) (unit-resolution @x208 @x618 $x249) $x502))) |
|
5009 |
(let (($x487 (not $x499))) |
|
5010 |
(let (($x477 (or $x227 $x487 $x492))) |
|
5011 |
(let (($x497 (= ?x496 ?x522))) |
|
5012 |
(let (($x509 (>= ?x522 0))) |
|
5013 |
(let (($x510 (not $x509))) |
|
5014 |
(let (($x498 (or $x510 $x497))) |
|
5015 |
(let (($x478 (or $x227 $x498))) |
|
5016 |
(let ((@x476 (monotonicity (monotonicity (rewrite (= $x509 $x499)) (= $x510 $x487)) (rewrite (= $x497 $x492)) (= $x498 (or $x487 $x492))))) |
|
5017 |
(let ((@x486 (trans (monotonicity @x476 (= $x478 (or $x227 (or $x487 $x492)))) (rewrite (= (or $x227 (or $x487 $x492)) $x477)) (= $x478 $x477)))) |
|
5018 |
(let ((@x464 (mp ((_ quant-inst (+ 1 ?x577)) $x478) @x486 $x477))) |
|
5019 |
(let ((@x304 (unit-resolution @x464 @x618 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x502) $x499)) @x323 $x499) $x492))) |
|
5020 |
(let (($x466 (>= ?x491 1))) |
|
5021 |
(let (($x504 (<= ?x577 0))) |
|
5022 |
(let ((@x298 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x249) $x504)) (unit-resolution @x208 @x618 $x249) $x504))) |
|
5023 |
(let ((@x300 ((_ th-lemma arith eq-propagate -1 -1 -1 -1) @x323 @x298 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x492) $x466)) @x304 $x466) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x492) $x465)) @x304 $x465) (= ?x496 1)))) |
|
5024 |
(let ((@x294 (trans (monotonicity (symm @x300 (= 1 ?x496)) (= ?x69 ?x373)) (unit-resolution @x381 @x611 $x375) (= ?x69 ?x523)))) |
|
5025 |
(let ((@x273 (trans @x294 (symm (unit-resolution @x514 @x156 $x512) (= ?x523 ?x263)) (= ?x69 ?x263)))) |
|
5026 |
(let ((@x279 (symm (monotonicity @x273 @x316 (= ?x76 (cons$ ?x263 ?x264))) (= (cons$ ?x263 ?x264) ?x76)))) |
|
5027 |
(let ((?x265 (cons$ ?x263 ?x264))) |
|
5028 |
(let (($x266 (= ?x72 ?x265))) |
|
5029 |
(let (($x237 (or $x582 $x266))) |
|
5030 |
(let ((@x367 ((_ quant-inst uu$ (nat$ 0) (cons$ ?x69 nil$)) $x237))) |
|
5031 |
(let (($x78 (not $x77))) |
|
5032 |
(let ((@x79 (asserted $x78))) |
|
5033 |
(unit-resolution @x79 (trans (unit-resolution @x367 @x603 $x266) @x279 $x77) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5034 |
|
57204 | 5035 |
40c61a0200976d6203302a7343af5b7ad1e6ce36 11 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5036 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5037 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5038 |
(proof |
56727 | 5039 |
(let (($x29 (forall ((?v0 A$) )(p$ ?v0)) |
5040 |
)) |
|
5041 |
(let (($x30 (not $x29))) |
|
5042 |
(let (($x31 (or $x29 $x30))) |
|
5043 |
(let (($x32 (not $x31))) |
|
5044 |
(let ((@x42 (trans (monotonicity (rewrite (= $x31 true)) (= $x32 (not true))) (rewrite (= (not true) false)) (= $x32 false)))) |
|
5045 |
(mp (asserted $x32) @x42 false)))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5046 |
|
57204 | 5047 |
825fdd8f086b9606c3db6feacf7565b92faf5ae2 190 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5048 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5049 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5050 |
(proof |
56727 | 5051 |
(let ((?x87 (nat$ 6))) |
5052 |
(let ((?x80 (nat$ 4))) |
|
5053 |
(let ((?x81 (dec_10$ ?x80))) |
|
5054 |
(let ((?x82 (of_nat$ ?x81))) |
|
5055 |
(let ((?x83 (* 4 ?x82))) |
|
5056 |
(let ((?x84 (nat$ ?x83))) |
|
5057 |
(let ((?x85 (dec_10$ ?x84))) |
|
5058 |
(let (($x88 (= ?x85 ?x87))) |
|
5059 |
(let ((?x461 (dec_10$ ?x87))) |
|
5060 |
(let (($x421 (= ?x461 ?x87))) |
|
5061 |
(let ((?x487 (of_nat$ ?x87))) |
|
5062 |
(let ((?x464 (+ (- 10) ?x487))) |
|
5063 |
(let ((?x447 (nat$ ?x464))) |
|
5064 |
(let ((?x389 (dec_10$ ?x447))) |
|
5065 |
(let (($x448 (= ?x461 ?x389))) |
|
5066 |
(let (($x460 (>= ?x487 10))) |
|
5067 |
(let (($x449 (ite $x460 $x448 $x421))) |
|
5068 |
(let (($x602 (forall ((?v0 Nat$) )(!(let ((?x29 (of_nat$ ?v0))) |
|
5069 |
(let (($x60 (>= ?x29 10))) |
|
5070 |
(ite $x60 (= (dec_10$ ?v0) (dec_10$ (nat$ (+ (- 10) ?x29)))) (= (dec_10$ ?v0) ?v0)))) :pattern ( (of_nat$ ?v0) ) :pattern ( (dec_10$ ?v0) ))) |
|
5071 |
)) |
|
5072 |
(let (($x180 (forall ((?v0 Nat$) )(let ((?x29 (of_nat$ ?v0))) |
|
5073 |
(let (($x60 (>= ?x29 10))) |
|
5074 |
(ite $x60 (= (dec_10$ ?v0) (dec_10$ (nat$ (+ (- 10) ?x29)))) (= (dec_10$ ?v0) ?v0))))) |
|
5075 |
)) |
|
5076 |
(let ((?x29 (of_nat$ ?0))) |
|
5077 |
(let (($x60 (>= ?x29 10))) |
|
5078 |
(let (($x177 (ite $x60 (= (dec_10$ ?0) (dec_10$ (nat$ (+ (- 10) ?x29)))) (= (dec_10$ ?0) ?0)))) |
|
5079 |
(let (($x73 (forall ((?v0 Nat$) )(let ((?x46 (dec_10$ (nat$ (+ (- 10) (of_nat$ ?v0)))))) |
|
5080 |
(let ((?x29 (of_nat$ ?v0))) |
|
5081 |
(let (($x60 (>= ?x29 10))) |
|
5082 |
(let ((?x65 (ite $x60 ?x46 ?v0))) |
|
5083 |
(let ((?x28 (dec_10$ ?v0))) |
|
5084 |
(= ?x28 ?x65))))))) |
|
5085 |
)) |
|
5086 |
(let ((?x46 (dec_10$ (nat$ (+ (- 10) ?x29))))) |
|
5087 |
(let ((?x65 (ite $x60 ?x46 ?0))) |
|
5088 |
(let ((?x28 (dec_10$ ?0))) |
|
5089 |
(let (($x70 (= ?x28 ?x65))) |
|
5090 |
(let (($x37 (forall ((?v0 Nat$) )(let ((?x29 (of_nat$ ?v0))) |
|
5091 |
(let (($x31 (< ?x29 10))) |
|
5092 |
(let ((?x28 (dec_10$ ?v0))) |
|
5093 |
(= ?x28 (ite $x31 ?v0 (dec_10$ (nat$ (- ?x29 10))))))))) |
|
5094 |
)) |
|
5095 |
(let (($x55 (forall ((?v0 Nat$) )(let ((?x46 (dec_10$ (nat$ (+ (- 10) (of_nat$ ?v0)))))) |
|
5096 |
(let ((?x29 (of_nat$ ?v0))) |
|
5097 |
(let (($x31 (< ?x29 10))) |
|
5098 |
(let ((?x49 (ite $x31 ?v0 ?x46))) |
|
5099 |
(let ((?x28 (dec_10$ ?v0))) |
|
5100 |
(= ?x28 ?x49))))))) |
|
5101 |
)) |
|
5102 |
(let ((@x64 (monotonicity (rewrite (= (< ?x29 10) (not $x60))) (= (ite (< ?x29 10) ?0 ?x46) (ite (not $x60) ?0 ?x46))))) |
|
5103 |
(let ((@x69 (trans @x64 (rewrite (= (ite (not $x60) ?0 ?x46) ?x65)) (= (ite (< ?x29 10) ?0 ?x46) ?x65)))) |
|
5104 |
(let ((@x72 (monotonicity @x69 (= (= ?x28 (ite (< ?x29 10) ?0 ?x46)) $x70)))) |
|
5105 |
(let (($x31 (< ?x29 10))) |
|
5106 |
(let ((?x49 (ite $x31 ?0 ?x46))) |
|
5107 |
(let (($x52 (= ?x28 ?x49))) |
|
5108 |
(let ((@x45 (monotonicity (rewrite (= (- ?x29 10) (+ (- 10) ?x29))) (= (nat$ (- ?x29 10)) (nat$ (+ (- 10) ?x29)))))) |
|
5109 |
(let ((@x51 (monotonicity (monotonicity @x45 (= (dec_10$ (nat$ (- ?x29 10))) ?x46)) (= (ite $x31 ?0 (dec_10$ (nat$ (- ?x29 10)))) ?x49)))) |
|
5110 |
(let ((@x54 (monotonicity @x51 (= (= ?x28 (ite $x31 ?0 (dec_10$ (nat$ (- ?x29 10))))) $x52)))) |
|
5111 |
(let ((@x77 (trans (quant-intro @x54 (= $x37 $x55)) (quant-intro @x72 (= $x55 $x73)) (= $x37 $x73)))) |
|
5112 |
(let ((@x161 (mp~ (mp (asserted $x37) @x77 $x73) (nnf-pos (refl (~ $x70 $x70)) (~ $x73 $x73)) $x73))) |
|
5113 |
(let ((@x183 (mp @x161 (quant-intro (rewrite (= $x70 $x177)) (= $x73 $x180)) $x180))) |
|
5114 |
(let ((@x607 (mp @x183 (quant-intro (refl (= $x177 $x177)) (= $x180 $x602)) $x602))) |
|
5115 |
(let (($x256 (not $x602))) |
|
5116 |
(let (($x452 (or $x256 $x449))) |
|
5117 |
(let ((@x420 ((_ quant-inst (nat$ 6)) $x452))) |
|
5118 |
(let (($x385 (not $x460))) |
|
5119 |
(let (($x450 (<= ?x487 6))) |
|
5120 |
(let (($x488 (= ?x487 6))) |
|
5121 |
(let (($x616 (forall ((?v0 Int) )(!(let ((?x97 (nat$ ?v0))) |
|
5122 |
(let ((?x98 (of_nat$ ?x97))) |
|
5123 |
(let (($x99 (= ?x98 ?v0))) |
|
5124 |
(let (($x112 (>= ?v0 0))) |
|
5125 |
(let (($x113 (not $x112))) |
|
5126 |
(or $x113 $x99)))))) :pattern ( (nat$ ?v0) ))) |
|
5127 |
)) |
|
5128 |
(let (($x119 (forall ((?v0 Int) )(let ((?x97 (nat$ ?v0))) |
|
5129 |
(let ((?x98 (of_nat$ ?x97))) |
|
5130 |
(let (($x99 (= ?x98 ?v0))) |
|
5131 |
(let (($x112 (>= ?v0 0))) |
|
5132 |
(let (($x113 (not $x112))) |
|
5133 |
(or $x113 $x99))))))) |
|
5134 |
)) |
|
5135 |
(let ((?x97 (nat$ ?0))) |
|
5136 |
(let ((?x98 (of_nat$ ?x97))) |
|
5137 |
(let (($x99 (= ?x98 ?0))) |
|
5138 |
(let (($x112 (>= ?0 0))) |
|
5139 |
(let (($x113 (not $x112))) |
|
5140 |
(let (($x116 (or $x113 $x99))) |
|
5141 |
(let (($x101 (forall ((?v0 Int) )(let ((?x97 (nat$ ?v0))) |
|
5142 |
(let ((?x98 (of_nat$ ?x97))) |
|
5143 |
(let (($x99 (= ?x98 ?v0))) |
|
5144 |
(let (($x96 (<= 0 ?v0))) |
|
5145 |
(=> $x96 $x99)))))) |
|
5146 |
)) |
|
5147 |
(let (($x107 (forall ((?v0 Int) )(let ((?x97 (nat$ ?v0))) |
|
5148 |
(let ((?x98 (of_nat$ ?x97))) |
|
5149 |
(let (($x99 (= ?x98 ?v0))) |
|
5150 |
(or (not (<= 0 ?v0)) $x99))))) |
|
5151 |
)) |
|
5152 |
(let ((@x115 (monotonicity (rewrite (= (<= 0 ?0) $x112)) (= (not (<= 0 ?0)) $x113)))) |
|
5153 |
(let ((@x121 (quant-intro (monotonicity @x115 (= (or (not (<= 0 ?0)) $x99) $x116)) (= $x107 $x119)))) |
|
5154 |
(let ((@x106 (rewrite (= (=> (<= 0 ?0) $x99) (or (not (<= 0 ?0)) $x99))))) |
|
5155 |
(let ((@x124 (mp (asserted $x101) (trans (quant-intro @x106 (= $x101 $x107)) @x121 (= $x101 $x119)) $x119))) |
|
5156 |
(let ((@x621 (mp (mp~ @x124 (nnf-pos (refl (~ $x116 $x116)) (~ $x119 $x119)) $x119) (quant-intro (refl (= $x116 $x116)) (= $x119 $x616)) $x616))) |
|
5157 |
(let (($x544 (not $x616))) |
|
5158 |
(let (($x480 (or $x544 $x488))) |
|
5159 |
(let ((@x491 (rewrite (= (>= 6 0) true)))) |
|
5160 |
(let ((@x495 (trans (monotonicity @x491 (= (not (>= 6 0)) (not true))) (rewrite (= (not true) false)) (= (not (>= 6 0)) false)))) |
|
5161 |
(let ((@x475 (monotonicity @x495 (= (or (not (>= 6 0)) $x488) (or false $x488))))) |
|
5162 |
(let ((@x479 (trans @x475 (rewrite (= (or false $x488) $x488)) (= (or (not (>= 6 0)) $x488) $x488)))) |
|
5163 |
(let ((@x465 (monotonicity @x479 (= (or $x544 (or (not (>= 6 0)) $x488)) $x480)))) |
|
5164 |
(let ((@x468 (trans @x465 (rewrite (= $x480 $x480)) (= (or $x544 (or (not (>= 6 0)) $x488)) $x480)))) |
|
5165 |
(let ((@x469 (mp ((_ quant-inst 6) (or $x544 (or (not (>= 6 0)) $x488))) @x468 $x480))) |
|
5166 |
(let ((@x415 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x488) $x450)) (unit-resolution @x469 @x621 $x488) $x450))) |
|
5167 |
(let ((@x386 (unit-resolution (def-axiom (or (not $x449) $x460 $x421)) (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x450) $x385)) @x415 $x385) (unit-resolution @x420 @x607 $x449) $x421))) |
|
5168 |
(let ((?x251 (of_nat$ ?x80))) |
|
5169 |
(let ((?x454 (* (- 1) ?x251))) |
|
5170 |
(let ((?x455 (+ ?x82 ?x454))) |
|
5171 |
(let (($x456 (<= ?x455 0))) |
|
5172 |
(let (($x453 (= ?x82 ?x251))) |
|
5173 |
(let (($x238 (= ?x81 ?x80))) |
|
5174 |
(let ((?x233 (+ (- 10) ?x251))) |
|
5175 |
(let ((?x575 (nat$ ?x233))) |
|
5176 |
(let ((?x236 (dec_10$ ?x575))) |
|
5177 |
(let (($x237 (= ?x81 ?x236))) |
|
5178 |
(let (($x252 (>= ?x251 10))) |
|
5179 |
(let (($x239 (ite $x252 $x237 $x238))) |
|
5180 |
(let (($x578 (or $x256 $x239))) |
|
5181 |
(let ((@x579 ((_ quant-inst (nat$ 4)) $x578))) |
|
5182 |
(let (($x581 (not $x252))) |
|
5183 |
(let (($x380 (<= ?x251 4))) |
|
5184 |
(let (($x563 (= ?x251 4))) |
|
5185 |
(let (($x545 (or $x544 $x563))) |
|
5186 |
(let ((@x566 (rewrite (= (>= 4 0) true)))) |
|
5187 |
(let ((@x558 (trans (monotonicity @x566 (= (not (>= 4 0)) (not true))) (rewrite (= (not true) false)) (= (not (>= 4 0)) false)))) |
|
5188 |
(let ((@x398 (monotonicity @x558 (= (or (not (>= 4 0)) $x563) (or false $x563))))) |
|
5189 |
(let ((@x543 (trans @x398 (rewrite (= (or false $x563) $x563)) (= (or (not (>= 4 0)) $x563) $x563)))) |
|
5190 |
(let ((@x549 (monotonicity @x543 (= (or $x544 (or (not (>= 4 0)) $x563)) $x545)))) |
|
5191 |
(let ((@x377 (trans @x549 (rewrite (= $x545 $x545)) (= (or $x544 (or (not (>= 4 0)) $x563)) $x545)))) |
|
5192 |
(let ((@x379 (mp ((_ quant-inst 4) (or $x544 (or (not (>= 4 0)) $x563))) @x377 $x545))) |
|
5193 |
(let ((@x393 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x563) $x380)) (unit-resolution @x379 @x621 $x563) $x380))) |
|
5194 |
(let ((@x367 (unit-resolution (def-axiom (or (not $x239) $x252 $x238)) (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x380) $x581)) @x393 $x581) (unit-resolution @x579 @x607 $x239) $x238))) |
|
5195 |
(let ((@x215 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x453) $x456)) (monotonicity @x367 $x453) $x456))) |
|
5196 |
(let (($x457 (>= ?x455 0))) |
|
5197 |
(let ((@x376 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x453) $x457)) (monotonicity @x367 $x453) $x457))) |
|
5198 |
(let (($x536 (>= ?x251 4))) |
|
5199 |
(let ((@x362 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x563) $x536)) (unit-resolution @x379 @x621 $x563) $x536))) |
|
5200 |
(let ((?x576 (of_nat$ ?x84))) |
|
5201 |
(let ((?x439 (* (- 1) ?x576))) |
|
5202 |
(let ((?x440 (+ ?x83 ?x439))) |
|
5203 |
(let (($x517 (<= ?x440 0))) |
|
5204 |
(let (($x438 (= ?x440 0))) |
|
5205 |
(let (($x532 (>= ?x82 0))) |
|
5206 |
(let ((@x354 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x532 (not $x536) (not $x457))) @x362 @x376 $x532))) |
|
5207 |
(let (($x434 (not $x532))) |
|
5208 |
(let (($x533 (or $x434 $x438))) |
|
5209 |
(let (($x522 (or $x544 $x434 $x438))) |
|
5210 |
(let (($x530 (= ?x576 ?x83))) |
|
5211 |
(let (($x529 (>= ?x83 0))) |
|
5212 |
(let (($x433 (not $x529))) |
|
5213 |
(let (($x531 (or $x433 $x530))) |
|
5214 |
(let (($x523 (or $x544 $x531))) |
|
5215 |
(let ((@x535 (monotonicity (monotonicity (rewrite (= $x529 $x532)) (= $x433 $x434)) (rewrite (= $x530 $x438)) (= $x531 $x533)))) |
|
5216 |
(let ((@x528 (trans (monotonicity @x535 (= $x523 (or $x544 $x533))) (rewrite (= (or $x544 $x533) $x522)) (= $x523 $x522)))) |
|
5217 |
(let ((@x516 (mp ((_ quant-inst (* 4 ?x82)) $x523) @x528 $x522))) |
|
5218 |
(let ((@x351 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x438) $x517)) (unit-resolution (unit-resolution @x516 @x621 $x533) @x354 $x438) $x517))) |
|
5219 |
(let (($x518 (>= ?x440 0))) |
|
5220 |
(let ((@x345 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x438) $x518)) (unit-resolution (unit-resolution @x516 @x621 $x533) @x354 $x438) $x518))) |
|
5221 |
(let ((@x349 (monotonicity ((_ th-lemma arith eq-propagate 1 1 -4 -4 -4 -4) @x345 @x351 @x362 @x393 @x376 @x215 (= (+ (- 10) ?x576) 6)) (= (nat$ (+ (- 10) ?x576)) ?x87)))) |
|
5222 |
(let ((?x574 (+ (- 10) ?x576))) |
|
5223 |
(let ((?x278 (nat$ ?x574))) |
|
5224 |
(let ((?x292 (dec_10$ ?x278))) |
|
5225 |
(let (($x293 (= ?x85 ?x292))) |
|
5226 |
(let (($x294 (= ?x85 ?x84))) |
|
5227 |
(let (($x577 (>= ?x576 10))) |
|
5228 |
(let (($x295 (ite $x577 $x293 $x294))) |
|
5229 |
(let (($x568 (or $x256 $x295))) |
|
5230 |
(let ((@x299 ((_ quant-inst (nat$ ?x83)) $x568))) |
|
5231 |
(let ((@x336 (unit-resolution ((_ th-lemma arith assign-bounds 1 4 4) (or $x577 (not $x517) (not $x536) (not $x457))) @x362 @x351 @x376 $x577))) |
|
5232 |
(let ((@x337 (unit-resolution (def-axiom (or (not $x295) (not $x577) $x293)) @x336 (unit-resolution @x299 @x607 $x295) $x293))) |
|
5233 |
(let ((@x323 (trans (trans @x337 (monotonicity @x349 (= ?x292 ?x461)) (= ?x85 ?x461)) @x386 $x88))) |
|
5234 |
(let (($x89 (not $x88))) |
|
5235 |
(let ((@x90 (asserted $x89))) |
|
5236 |
(unit-resolution @x90 @x323 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5237 |
|
57204 | 5238 |
f8d23ebbeac7f77a32b969922f558052d0057659 336 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5239 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5240 |
((set-logic <null>) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5241 |
(proof |
56727 | 5242 |
(let ((?x102 (mod$ l$ 2))) |
5243 |
(let ((?x99 (map$ uu$ xs$))) |
|
5244 |
(let ((?x100 (eval_dioph$ ks$ ?x99))) |
|
5245 |
(let ((?x101 (mod$ ?x100 2))) |
|
5246 |
(let (($x103 (= ?x101 ?x102))) |
|
5247 |
(let ((?x96 (eval_dioph$ ks$ xs$))) |
|
5248 |
(let (($x98 (= ?x96 l$))) |
|
5249 |
(let ((?x113 (* (- 1) ?x100))) |
|
5250 |
(let ((?x114 (+ l$ ?x113))) |
|
5251 |
(let ((?x117 (div$ ?x114 2))) |
|
5252 |
(let ((?x104 (map$ uua$ xs$))) |
|
5253 |
(let ((?x105 (eval_dioph$ ks$ ?x104))) |
|
5254 |
(let (($x120 (= ?x105 ?x117))) |
|
5255 |
(let (($x364 (not $x120))) |
|
5256 |
(let (($x363 (not $x103))) |
|
5257 |
(let (($x365 (or $x363 $x364))) |
|
5258 |
(let ((?x849 (div ?x96 2))) |
|
5259 |
(let ((?x1076 (* (- 1) ?x849))) |
|
5260 |
(let ((?x804 (mod ?x96 2))) |
|
5261 |
(let ((?x831 (* (- 1) ?x804))) |
|
5262 |
(let ((?x621 (mod l$ 2))) |
|
5263 |
(let ((?x648 (* (- 1) ?x621))) |
|
5264 |
(let (($x1078 (>= (+ l$ ?x102 ?x648 (* (- 1) (div l$ 2)) ?x831 ?x1076) 1))) |
|
5265 |
(let ((?x475 (* (- 1) l$))) |
|
5266 |
(let ((?x798 (+ ?x96 ?x475))) |
|
5267 |
(let (($x800 (>= ?x798 0))) |
|
5268 |
(let (($x874 (not $x800))) |
|
5269 |
(let (($x799 (<= ?x798 0))) |
|
5270 |
(let ((?x791 (+ ?x105 (* (- 1) ?x117)))) |
|
5271 |
(let (($x792 (<= ?x791 0))) |
|
5272 |
(let (($x366 (not $x365))) |
|
5273 |
(let ((@x583 (hypothesis $x366))) |
|
5274 |
(let ((@x577 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x364 $x792)) (unit-resolution (def-axiom (or $x365 $x120)) @x583 $x120) $x792))) |
|
5275 |
(let ((?x542 (+ l$ ?x113 (* (- 2) (div ?x114 2)) (* (- 1) (mod (+ l$ ?x100) 2))))) |
|
5276 |
(let (($x548 (>= ?x542 0))) |
|
5277 |
(let (($x539 (= ?x542 0))) |
|
5278 |
(let ((@x26 (true-axiom true))) |
|
5279 |
(let ((@x898 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x539) $x548)) (unit-resolution ((_ th-lemma arith) (or false $x539)) @x26 $x539) $x548))) |
|
5280 |
(let ((?x606 (* (- 2) ?x105))) |
|
5281 |
(let ((?x607 (+ ?x96 ?x113 ?x606))) |
|
5282 |
(let (($x614 (<= ?x607 0))) |
|
5283 |
(let (($x608 (= ?x607 0))) |
|
5284 |
(let (($x386 (forall ((?v0 Int_list$) (?v1 Nat_list$) )(!(let ((?x48 (eval_dioph$ ?v0 ?v1))) |
|
5285 |
(let ((?x86 (+ ?x48 (* (- 1) (eval_dioph$ ?v0 (map$ uu$ ?v1))) (* (- 2) (eval_dioph$ ?v0 (map$ uua$ ?v1)))))) |
|
5286 |
(= ?x86 0))) :pattern ( (eval_dioph$ ?v0 (map$ uu$ ?v1)) ) :pattern ( (eval_dioph$ ?v0 (map$ uua$ ?v1)) ))) |
|
5287 |
)) |
|
5288 |
(let (($x88 (forall ((?v0 Int_list$) (?v1 Nat_list$) )(let ((?x48 (eval_dioph$ ?v0 ?v1))) |
|
5289 |
(let ((?x86 (+ ?x48 (* (- 1) (eval_dioph$ ?v0 (map$ uu$ ?v1))) (* (- 2) (eval_dioph$ ?v0 (map$ uua$ ?v1)))))) |
|
5290 |
(= ?x86 0)))) |
|
5291 |
)) |
|
5292 |
(let ((?x48 (eval_dioph$ ?1 ?0))) |
|
5293 |
(let ((?x86 (+ ?x48 (* (- 1) (eval_dioph$ ?1 (map$ uu$ ?0))) (* (- 2) (eval_dioph$ ?1 (map$ uua$ ?0)))))) |
|
5294 |
(let (($x82 (= ?x86 0))) |
|
5295 |
(let (($x61 (forall ((?v0 Int_list$) (?v1 Nat_list$) )(let ((?x48 (eval_dioph$ ?v0 ?v1))) |
|
5296 |
(let ((?x51 (eval_dioph$ ?v0 (map$ uu$ ?v1)))) |
|
5297 |
(let ((?x59 (+ (* (eval_dioph$ ?v0 (map$ uua$ ?v1)) 2) ?x51))) |
|
5298 |
(= ?x59 ?x48))))) |
|
5299 |
)) |
|
5300 |
(let (($x77 (forall ((?v0 Int_list$) (?v1 Nat_list$) )(let ((?x48 (eval_dioph$ ?v0 ?v1))) |
|
5301 |
(let ((?x57 (eval_dioph$ ?v0 (map$ uua$ ?v1)))) |
|
5302 |
(let ((?x63 (* 2 ?x57))) |
|
5303 |
(let ((?x51 (eval_dioph$ ?v0 (map$ uu$ ?v1)))) |
|
5304 |
(let ((?x69 (+ ?x51 ?x63))) |
|
5305 |
(= ?x69 ?x48))))))) |
|
5306 |
)) |
|
5307 |
(let ((?x57 (eval_dioph$ ?1 (map$ uua$ ?0)))) |
|
5308 |
(let ((?x63 (* 2 ?x57))) |
|
5309 |
(let ((?x51 (eval_dioph$ ?1 (map$ uu$ ?0)))) |
|
5310 |
(let ((?x69 (+ ?x51 ?x63))) |
|
5311 |
(let (($x74 (= ?x69 ?x48))) |
|
5312 |
(let ((@x68 (monotonicity (rewrite (= (* ?x57 2) ?x63)) (= (+ (* ?x57 2) ?x51) (+ ?x63 ?x51))))) |
|
5313 |
(let ((@x73 (trans @x68 (rewrite (= (+ ?x63 ?x51) ?x69)) (= (+ (* ?x57 2) ?x51) ?x69)))) |
|
5314 |
(let ((@x79 (quant-intro (monotonicity @x73 (= (= (+ (* ?x57 2) ?x51) ?x48) $x74)) (= $x61 $x77)))) |
|
5315 |
(let ((@x92 (trans @x79 (quant-intro (rewrite (= $x74 $x82)) (= $x77 $x88)) (= $x61 $x88)))) |
|
5316 |
(let ((@x337 (mp~ (mp (asserted $x61) @x92 $x88) (nnf-pos (refl (~ $x82 $x82)) (~ $x88 $x88)) $x88))) |
|
5317 |
(let ((@x391 (mp @x337 (quant-intro (refl (= $x82 $x82)) (= $x88 $x386)) $x386))) |
|
5318 |
(let (($x612 (or (not $x386) $x608))) |
|
5319 |
(let ((@x613 ((_ quant-inst ks$ xs$) $x612))) |
|
5320 |
(let ((@x905 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x608) $x614)) (unit-resolution @x613 @x391 $x608) $x614))) |
|
5321 |
(let ((?x502 (+ ?x117 (* (- 1) (div ?x114 2))))) |
|
5322 |
(let (($x519 (<= ?x502 0))) |
|
5323 |
(let (($x503 (= ?x502 0))) |
|
5324 |
(let (($x413 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x212 (div ?v0 ?v1))) |
|
5325 |
(let ((?x224 (* (- 1) ?v1))) |
|
5326 |
(let ((?x221 (* (- 1) ?v0))) |
|
5327 |
(let ((?x227 (div ?x221 ?x224))) |
|
5328 |
(let (($x242 (<= ?v1 0))) |
|
5329 |
(let ((?x249 (ite $x242 ?x227 ?x212))) |
|
5330 |
(let (($x210 (= ?v1 0))) |
|
5331 |
(let ((?x209 (div$ ?v0 ?v1))) |
|
5332 |
(= ?x209 (ite $x210 0 ?x249)))))))))) :pattern ( (div$ ?v0 ?v1) ))) |
|
5333 |
)) |
|
5334 |
(let (($x260 (forall ((?v0 Int) (?v1 Int) )(let ((?x212 (div ?v0 ?v1))) |
|
5335 |
(let ((?x224 (* (- 1) ?v1))) |
|
5336 |
(let ((?x221 (* (- 1) ?v0))) |
|
5337 |
(let ((?x227 (div ?x221 ?x224))) |
|
5338 |
(let (($x242 (<= ?v1 0))) |
|
5339 |
(let ((?x249 (ite $x242 ?x227 ?x212))) |
|
5340 |
(let (($x210 (= ?v1 0))) |
|
5341 |
(let ((?x209 (div$ ?v0 ?v1))) |
|
5342 |
(= ?x209 (ite $x210 0 ?x249))))))))))) |
|
5343 |
)) |
|
5344 |
(let ((?x212 (div ?1 ?0))) |
|
5345 |
(let ((?x224 (* (- 1) ?0))) |
|
5346 |
(let ((?x221 (* (- 1) ?1))) |
|
5347 |
(let ((?x227 (div ?x221 ?x224))) |
|
5348 |
(let (($x242 (<= ?0 0))) |
|
5349 |
(let ((?x249 (ite $x242 ?x227 ?x212))) |
|
5350 |
(let (($x210 (= ?0 0))) |
|
5351 |
(let ((?x209 (div$ ?1 ?0))) |
|
5352 |
(let (($x257 (= ?x209 (ite $x210 0 ?x249)))) |
|
5353 |
(let (($x219 (forall ((?v0 Int) (?v1 Int) )(let (($x210 (= ?v1 0))) |
|
5354 |
(let ((?x217 (ite $x210 0 (ite (< 0 ?v1) (div ?v0 ?v1) (div (- ?v0) (- ?v1)))))) |
|
5355 |
(let ((?x209 (div$ ?v0 ?v1))) |
|
5356 |
(= ?x209 ?x217))))) |
|
5357 |
)) |
|
5358 |
(let (($x239 (forall ((?v0 Int) (?v1 Int) )(let ((?x224 (* (- 1) ?v1))) |
|
5359 |
(let ((?x221 (* (- 1) ?v0))) |
|
5360 |
(let ((?x227 (div ?x221 ?x224))) |
|
5361 |
(let ((?x212 (div ?v0 ?v1))) |
|
5362 |
(let (($x211 (< 0 ?v1))) |
|
5363 |
(let ((?x230 (ite $x211 ?x212 ?x227))) |
|
5364 |
(let (($x210 (= ?v1 0))) |
|
5365 |
(let ((?x233 (ite $x210 0 ?x230))) |
|
5366 |
(let ((?x209 (div$ ?v0 ?v1))) |
|
5367 |
(= ?x209 ?x233))))))))))) |
|
5368 |
)) |
|
5369 |
(let (($x211 (< 0 ?0))) |
|
5370 |
(let ((?x230 (ite $x211 ?x212 ?x227))) |
|
5371 |
(let ((?x233 (ite $x210 0 ?x230))) |
|
5372 |
(let ((@x248 (monotonicity (rewrite (= $x211 (not $x242))) (= ?x230 (ite (not $x242) ?x212 ?x227))))) |
|
5373 |
(let ((@x253 (trans @x248 (rewrite (= (ite (not $x242) ?x212 ?x227) ?x249)) (= ?x230 ?x249)))) |
|
5374 |
(let ((@x259 (monotonicity (monotonicity @x253 (= ?x233 (ite $x210 0 ?x249))) (= (= ?x209 ?x233) $x257)))) |
|
5375 |
(let (($x236 (= ?x209 ?x233))) |
|
5376 |
(let (($x237 (= (= ?x209 (ite $x210 0 (ite $x211 ?x212 (div (- ?1) (- ?0))))) $x236))) |
|
5377 |
(let ((@x229 (monotonicity (rewrite (= (- ?1) ?x221)) (rewrite (= (- ?0) ?x224)) (= (div (- ?1) (- ?0)) ?x227)))) |
|
5378 |
(let ((@x235 (monotonicity (monotonicity @x229 (= (ite $x211 ?x212 (div (- ?1) (- ?0))) ?x230)) (= (ite $x210 0 (ite $x211 ?x212 (div (- ?1) (- ?0)))) ?x233)))) |
|
5379 |
(let ((@x264 (trans (quant-intro (monotonicity @x235 $x237) (= $x219 $x239)) (quant-intro @x259 (= $x239 $x260)) (= $x219 $x260)))) |
|
5380 |
(let ((@x357 (mp~ (mp (asserted $x219) @x264 $x260) (nnf-pos (refl (~ $x257 $x257)) (~ $x260 $x260)) $x260))) |
|
5381 |
(let ((@x418 (mp @x357 (quant-intro (refl (= $x257 $x257)) (= $x260 $x413)) $x413))) |
|
5382 |
(let (($x509 (or (not $x413) $x503))) |
|
5383 |
(let ((?x467 (div ?x114 2))) |
|
5384 |
(let (($x463 (<= 2 0))) |
|
5385 |
(let ((?x468 (ite $x463 (div (* (- 1) ?x114) (* (- 1) 2)) ?x467))) |
|
5386 |
(let (($x462 (= 2 0))) |
|
5387 |
(let ((?x469 (ite $x462 0 ?x468))) |
|
5388 |
(let (($x470 (= ?x117 ?x469))) |
|
5389 |
(let ((@x480 (rewrite (= (* (- 1) 2) (- 2))))) |
|
5390 |
(let ((@x483 (monotonicity (rewrite (= (* (- 1) ?x114) (+ ?x475 ?x100))) @x480 (= (div (* (- 1) ?x114) (* (- 1) 2)) (div (+ ?x475 ?x100) (- 2)))))) |
|
5391 |
(let ((@x474 (rewrite (= $x463 false)))) |
|
5392 |
(let ((@x486 (monotonicity @x474 @x483 (= ?x468 (ite false (div (+ ?x475 ?x100) (- 2)) ?x467))))) |
|
5393 |
(let ((@x490 (trans @x486 (rewrite (= (ite false (div (+ ?x475 ?x100) (- 2)) ?x467) ?x467)) (= ?x468 ?x467)))) |
|
5394 |
(let ((@x472 (rewrite (= $x462 false)))) |
|
5395 |
(let ((@x497 (trans (monotonicity @x472 @x490 (= ?x469 (ite false 0 ?x467))) (rewrite (= (ite false 0 ?x467) ?x467)) (= ?x469 ?x467)))) |
|
5396 |
(let ((@x507 (trans (monotonicity @x497 (= $x470 (= ?x117 ?x467))) (rewrite (= (= ?x117 ?x467) $x503)) (= $x470 $x503)))) |
|
5397 |
(let ((@x516 (trans (monotonicity @x507 (= (or (not $x413) $x470) $x509)) (rewrite (= $x509 $x509)) (= (or (not $x413) $x470) $x509)))) |
|
5398 |
(let ((@x907 (unit-resolution (mp ((_ quant-inst (+ l$ ?x113) 2) (or (not $x413) $x470)) @x516 $x509) @x418 $x503))) |
|
5399 |
(let ((?x530 (mod (+ l$ ?x100) 2))) |
|
5400 |
(let (($x570 (>= ?x530 0))) |
|
5401 |
(let ((@x915 ((_ th-lemma arith farkas 1 -2 -2 -1 1 1) (unit-resolution ((_ th-lemma arith) (or false $x570)) @x26 $x570) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x503) $x519)) @x907 $x519) (hypothesis $x792) @x905 (hypothesis (not $x799)) @x898 false))) |
|
5402 |
(let (($x137 (not $x98))) |
|
5403 |
(let (($x372 (= $x98 $x365))) |
|
5404 |
(let ((@x371 (monotonicity (rewrite (= (and $x103 $x120) $x366)) (= (= $x137 (and $x103 $x120)) (= $x137 $x366))))) |
|
5405 |
(let ((@x376 (trans @x371 (rewrite (= (= $x137 $x366) $x372)) (= (= $x137 (and $x103 $x120)) $x372)))) |
|
5406 |
(let (($x123 (and $x103 $x120))) |
|
5407 |
(let (($x138 (= $x137 $x123))) |
|
5408 |
(let (($x110 (= $x98 (and $x103 (= ?x105 (div$ (- l$ ?x100) 2)))))) |
|
5409 |
(let (($x111 (not $x110))) |
|
5410 |
(let ((@x119 (monotonicity (rewrite (= (- l$ ?x100) ?x114)) (= (div$ (- l$ ?x100) 2) ?x117)))) |
|
5411 |
(let ((@x125 (monotonicity (monotonicity @x119 (= (= ?x105 (div$ (- l$ ?x100) 2)) $x120)) (= (and $x103 (= ?x105 (div$ (- l$ ?x100) 2))) $x123)))) |
|
5412 |
(let ((@x133 (trans (monotonicity @x125 (= $x110 (= $x98 $x123))) (rewrite (= (= $x98 $x123) (= $x98 $x123))) (= $x110 (= $x98 $x123))))) |
|
5413 |
(let ((@x142 (trans (monotonicity @x133 (= $x111 (not (= $x98 $x123)))) (rewrite (= (not (= $x98 $x123)) $x138)) (= $x111 $x138)))) |
|
5414 |
(let ((@x377 (mp (mp (asserted $x111) @x142 $x138) @x376 $x372))) |
|
5415 |
(let ((@x449 (unit-resolution (def-axiom (or $x137 $x365 (not $x372))) @x377 (or $x137 $x365)))) |
|
5416 |
(let ((@x603 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x98 (not $x799) $x874)) (unit-resolution @x449 @x583 $x137) (or (not $x799) $x874)))) |
|
5417 |
(let ((@x604 (unit-resolution @x603 (unit-resolution (lemma @x915 (or $x799 (not $x792))) @x577 $x799) $x874))) |
|
5418 |
(let ((?x649 (+ ?x102 ?x648))) |
|
5419 |
(let (($x666 (>= ?x649 0))) |
|
5420 |
(let (($x650 (= ?x649 0))) |
|
5421 |
(let (($x420 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x267 (mod ?v0 ?v1))) |
|
5422 |
(let ((?x224 (* (- 1) ?v1))) |
|
5423 |
(let ((?x221 (* (- 1) ?v0))) |
|
5424 |
(let ((?x275 (mod ?x221 ?x224))) |
|
5425 |
(let ((?x281 (* (- 1) ?x275))) |
|
5426 |
(let (($x242 (<= ?v1 0))) |
|
5427 |
(let ((?x301 (ite $x242 ?x281 ?x267))) |
|
5428 |
(let (($x210 (= ?v1 0))) |
|
5429 |
(let ((?x306 (ite $x210 ?v0 ?x301))) |
|
5430 |
(let ((?x266 (mod$ ?v0 ?v1))) |
|
5431 |
(= ?x266 ?x306))))))))))) :pattern ( (mod$ ?v0 ?v1) ))) |
|
5432 |
)) |
|
5433 |
(let (($x312 (forall ((?v0 Int) (?v1 Int) )(let ((?x267 (mod ?v0 ?v1))) |
|
5434 |
(let ((?x224 (* (- 1) ?v1))) |
|
5435 |
(let ((?x221 (* (- 1) ?v0))) |
|
5436 |
(let ((?x275 (mod ?x221 ?x224))) |
|
5437 |
(let ((?x281 (* (- 1) ?x275))) |
|
5438 |
(let (($x242 (<= ?v1 0))) |
|
5439 |
(let ((?x301 (ite $x242 ?x281 ?x267))) |
|
5440 |
(let (($x210 (= ?v1 0))) |
|
5441 |
(let ((?x306 (ite $x210 ?v0 ?x301))) |
|
5442 |
(let ((?x266 (mod$ ?v0 ?v1))) |
|
5443 |
(= ?x266 ?x306)))))))))))) |
|
5444 |
)) |
|
5445 |
(let ((?x267 (mod ?1 ?0))) |
|
5446 |
(let ((?x275 (mod ?x221 ?x224))) |
|
5447 |
(let ((?x281 (* (- 1) ?x275))) |
|
5448 |
(let ((?x301 (ite $x242 ?x281 ?x267))) |
|
5449 |
(let ((?x306 (ite $x210 ?1 ?x301))) |
|
5450 |
(let ((?x266 (mod$ ?1 ?0))) |
|
5451 |
(let (($x309 (= ?x266 ?x306))) |
|
5452 |
(let (($x273 (forall ((?v0 Int) (?v1 Int) )(let (($x210 (= ?v1 0))) |
|
5453 |
(let ((?x271 (ite $x210 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1))))))) |
|
5454 |
(let ((?x266 (mod$ ?v0 ?v1))) |
|
5455 |
(= ?x266 ?x271))))) |
|
5456 |
)) |
|
5457 |
(let (($x295 (forall ((?v0 Int) (?v1 Int) )(let ((?x224 (* (- 1) ?v1))) |
|
5458 |
(let ((?x221 (* (- 1) ?v0))) |
|
5459 |
(let ((?x275 (mod ?x221 ?x224))) |
|
5460 |
(let ((?x281 (* (- 1) ?x275))) |
|
5461 |
(let ((?x267 (mod ?v0 ?v1))) |
|
5462 |
(let (($x211 (< 0 ?v1))) |
|
5463 |
(let ((?x286 (ite $x211 ?x267 ?x281))) |
|
5464 |
(let (($x210 (= ?v1 0))) |
|
5465 |
(let ((?x289 (ite $x210 ?v0 ?x286))) |
|
5466 |
(let ((?x266 (mod$ ?v0 ?v1))) |
|
5467 |
(= ?x266 ?x289)))))))))))) |
|
5468 |
)) |
|
5469 |
(let ((@x300 (monotonicity (rewrite (= $x211 (not $x242))) (= (ite $x211 ?x267 ?x281) (ite (not $x242) ?x267 ?x281))))) |
|
5470 |
(let ((@x305 (trans @x300 (rewrite (= (ite (not $x242) ?x267 ?x281) ?x301)) (= (ite $x211 ?x267 ?x281) ?x301)))) |
|
5471 |
(let ((@x311 (monotonicity (monotonicity @x305 (= (ite $x210 ?1 (ite $x211 ?x267 ?x281)) ?x306)) (= (= ?x266 (ite $x210 ?1 (ite $x211 ?x267 ?x281))) $x309)))) |
|
5472 |
(let ((?x286 (ite $x211 ?x267 ?x281))) |
|
5473 |
(let ((?x289 (ite $x210 ?1 ?x286))) |
|
5474 |
(let (($x292 (= ?x266 ?x289))) |
|
5475 |
(let (($x293 (= (= ?x266 (ite $x210 ?1 (ite $x211 ?x267 (- (mod (- ?1) (- ?0)))))) $x292))) |
|
5476 |
(let ((@x277 (monotonicity (rewrite (= (- ?1) ?x221)) (rewrite (= (- ?0) ?x224)) (= (mod (- ?1) (- ?0)) ?x275)))) |
|
5477 |
(let ((@x285 (trans (monotonicity @x277 (= (- (mod (- ?1) (- ?0))) (- ?x275))) (rewrite (= (- ?x275) ?x281)) (= (- (mod (- ?1) (- ?0))) ?x281)))) |
|
5478 |
(let ((@x288 (monotonicity @x285 (= (ite $x211 ?x267 (- (mod (- ?1) (- ?0)))) ?x286)))) |
|
5479 |
(let ((@x291 (monotonicity @x288 (= (ite $x210 ?1 (ite $x211 ?x267 (- (mod (- ?1) (- ?0))))) ?x289)))) |
|
5480 |
(let ((@x316 (trans (quant-intro (monotonicity @x291 $x293) (= $x273 $x295)) (quant-intro @x311 (= $x295 $x312)) (= $x273 $x312)))) |
|
5481 |
(let ((@x362 (mp~ (mp (asserted $x273) @x316 $x312) (nnf-pos (refl (~ $x309 $x309)) (~ $x312 $x312)) $x312))) |
|
5482 |
(let ((@x425 (mp @x362 (quant-intro (refl (= $x309 $x309)) (= $x312 $x420)) $x420))) |
|
5483 |
(let (($x655 (not $x420))) |
|
5484 |
(let (($x656 (or $x655 $x650))) |
|
5485 |
(let ((?x465 (* (- 1) 2))) |
|
5486 |
(let ((?x616 (mod ?x475 ?x465))) |
|
5487 |
(let ((?x617 (* (- 1) ?x616))) |
|
5488 |
(let ((?x622 (ite $x463 ?x617 ?x621))) |
|
5489 |
(let ((?x623 (ite $x462 l$ ?x622))) |
|
5490 |
(let (($x624 (= ?x102 ?x623))) |
|
5491 |
(let ((@x630 (monotonicity (monotonicity @x480 (= ?x616 (mod ?x475 (- 2)))) (= ?x617 (* (- 1) (mod ?x475 (- 2))))))) |
|
5492 |
(let ((@x633 (monotonicity @x474 @x630 (= ?x622 (ite false (* (- 1) (mod ?x475 (- 2))) ?x621))))) |
|
5493 |
(let ((@x637 (trans @x633 (rewrite (= (ite false (* (- 1) (mod ?x475 (- 2))) ?x621) ?x621)) (= ?x622 ?x621)))) |
|
5494 |
(let ((@x644 (trans (monotonicity @x472 @x637 (= ?x623 (ite false l$ ?x621))) (rewrite (= (ite false l$ ?x621) ?x621)) (= ?x623 ?x621)))) |
|
5495 |
(let ((@x654 (trans (monotonicity @x644 (= $x624 (= ?x102 ?x621))) (rewrite (= (= ?x102 ?x621) $x650)) (= $x624 $x650)))) |
|
5496 |
(let ((@x663 (trans (monotonicity @x654 (= (or $x655 $x624) $x656)) (rewrite (= $x656 $x656)) (= (or $x655 $x624) $x656)))) |
|
5497 |
(let ((@x664 (mp ((_ quant-inst l$ 2) (or $x655 $x624)) @x663 $x656))) |
|
5498 |
(let ((@x921 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x650) $x666)) (unit-resolution @x664 @x425 $x650) $x666))) |
|
5499 |
(let ((?x862 (* (- 2) ?x849))) |
|
5500 |
(let ((?x863 (+ ?x96 ?x831 ?x862))) |
|
5501 |
(let (($x869 (>= ?x863 0))) |
|
5502 |
(let (($x861 (= ?x863 0))) |
|
5503 |
(let ((@x924 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x861) $x869)) (unit-resolution ((_ th-lemma arith) (or false $x861)) @x26 $x861) $x869))) |
|
5504 |
(let ((?x667 (div l$ 2))) |
|
5505 |
(let ((?x680 (* (- 2) ?x667))) |
|
5506 |
(let ((?x681 (+ l$ ?x648 ?x680))) |
|
5507 |
(let (($x687 (>= ?x681 0))) |
|
5508 |
(let (($x679 (= ?x681 0))) |
|
5509 |
(let ((@x934 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x679) $x687)) (unit-resolution ((_ th-lemma arith) (or false $x679)) @x26 $x679) $x687))) |
|
5510 |
(let ((?x609 (mod$ ?x96 2))) |
|
5511 |
(let ((?x832 (+ ?x609 ?x831))) |
|
5512 |
(let (($x833 (= ?x832 0))) |
|
5513 |
(let (($x838 (or $x655 $x833))) |
|
5514 |
(let ((?x801 (* (- 1) ?x96))) |
|
5515 |
(let ((?x802 (mod ?x801 ?x465))) |
|
5516 |
(let ((?x803 (* (- 1) ?x802))) |
|
5517 |
(let ((?x805 (ite $x463 ?x803 ?x804))) |
|
5518 |
(let ((?x806 (ite $x462 ?x96 ?x805))) |
|
5519 |
(let (($x807 (= ?x609 ?x806))) |
|
5520 |
(let ((@x813 (monotonicity (monotonicity @x480 (= ?x802 (mod ?x801 (- 2)))) (= ?x803 (* (- 1) (mod ?x801 (- 2))))))) |
|
5521 |
(let ((@x816 (monotonicity @x474 @x813 (= ?x805 (ite false (* (- 1) (mod ?x801 (- 2))) ?x804))))) |
|
5522 |
(let ((@x820 (trans @x816 (rewrite (= (ite false (* (- 1) (mod ?x801 (- 2))) ?x804) ?x804)) (= ?x805 ?x804)))) |
|
5523 |
(let ((@x827 (trans (monotonicity @x472 @x820 (= ?x806 (ite false ?x96 ?x804))) (rewrite (= (ite false ?x96 ?x804) ?x804)) (= ?x806 ?x804)))) |
|
5524 |
(let ((@x837 (trans (monotonicity @x827 (= $x807 (= ?x609 ?x804))) (rewrite (= (= ?x609 ?x804) $x833)) (= $x807 $x833)))) |
|
5525 |
(let ((@x845 (trans (monotonicity @x837 (= (or $x655 $x807) $x838)) (rewrite (= $x838 $x838)) (= (or $x655 $x807) $x838)))) |
|
5526 |
(let ((@x775 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x833) (>= ?x832 0))) (unit-resolution (mp ((_ quant-inst (eval_dioph$ ks$ xs$) 2) (or $x655 $x807)) @x845 $x838) @x425 $x833) (>= ?x832 0)))) |
|
5527 |
(let ((?x888 (* (- 1) ?x609))) |
|
5528 |
(let ((?x889 (+ ?x102 ?x888))) |
|
5529 |
(let (($x891 (>= ?x889 0))) |
|
5530 |
(let (($x887 (= ?x102 ?x609))) |
|
5531 |
(let (($x881 (= ?x101 ?x609))) |
|
5532 |
(let (($x610 (= ?x609 ?x101))) |
|
5533 |
(let (($x379 (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)) ))) |
|
5534 |
)) |
|
5535 |
(let (($x54 (forall ((?v0 Int_list$) (?v1 Nat_list$) )(= (mod$ (eval_dioph$ ?v0 ?v1) 2) (mod$ (eval_dioph$ ?v0 (map$ uu$ ?v1)) 2))) |
|
5536 |
)) |
|
5537 |
(let (($x53 (= (mod$ ?x48 2) (mod$ ?x51 2)))) |
|
5538 |
(let ((@x332 (mp~ (asserted $x54) (nnf-pos (refl (~ $x53 $x53)) (~ $x54 $x54)) $x54))) |
|
5539 |
(let ((@x384 (mp @x332 (quant-intro (refl (= $x53 $x53)) (= $x54 $x379)) $x379))) |
|
5540 |
(let (($x619 (or (not $x379) $x610))) |
|
5541 |
(let ((@x620 ((_ quant-inst ks$ xs$) $x619))) |
|
5542 |
(let ((@x965 (symm (unit-resolution (def-axiom (or $x365 $x103)) @x583 $x103) (= ?x102 ?x101)))) |
|
5543 |
(let ((@x962 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x887) $x891)) (trans @x965 (symm (unit-resolution @x620 @x384 $x610) $x881) $x887) $x891))) |
|
5544 |
(let (($x890 (<= ?x889 0))) |
|
5545 |
(let ((@x1023 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x887) $x890)) (trans @x965 (symm (unit-resolution @x620 @x384 $x610) $x881) $x887) $x890))) |
|
5546 |
(let (($x793 (>= ?x791 0))) |
|
57170 | 5547 |
(let ((@x522 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x364 $x793)) (unit-resolution (def-axiom (or $x365 $x120)) @x583 $x120) $x793))) |
56727 | 5548 |
(let ((@x1085 (unit-resolution ((_ th-lemma arith) (or false (not (>= ?x530 2)))) @x26 (not (>= ?x530 2))))) |
5549 |
(let (($x665 (<= ?x649 0))) |
|
5550 |
(let ((@x767 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x650) $x665)) (unit-resolution @x664 @x425 $x650) $x665))) |
|
5551 |
(let (($x868 (<= ?x863 0))) |
|
5552 |
(let ((@x858 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x861) $x868)) (unit-resolution ((_ th-lemma arith) (or false $x861)) @x26 $x861) $x868))) |
|
5553 |
(let (($x686 (<= ?x681 0))) |
|
5554 |
(let ((@x1092 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x679) $x686)) (unit-resolution ((_ th-lemma arith) (or false $x679)) @x26 $x679) $x686))) |
|
5555 |
(let ((@x1095 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x833) (<= ?x832 0))) (unit-resolution (mp ((_ quant-inst (eval_dioph$ ks$ xs$) 2) (or $x655 $x807)) @x845 $x838) @x425 $x833) (<= ?x832 0)))) |
|
5556 |
(let (($x615 (>= ?x607 0))) |
|
5557 |
(let ((@x1100 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x608) $x615)) (unit-resolution @x613 @x391 $x608) $x615))) |
|
5558 |
(let ((@x1104 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x503) (>= ?x502 0))) @x907 (>= ?x502 0)))) |
|
5559 |
(let ((@x1107 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x539) (<= ?x542 0))) (unit-resolution ((_ th-lemma arith) (or false $x539)) @x26 $x539) (<= ?x542 0)))) |
|
5560 |
(let ((@x1108 ((_ th-lemma arith farkas 1 -2 -2 -1 -2 1 1 1 1 1 1) @x1107 @x1104 (hypothesis $x793) @x1100 (hypothesis $x1078) (hypothesis $x890) @x1095 @x1092 @x858 @x767 @x1085 false))) |
|
57170 | 5561 |
(let ((@x576 (unit-resolution (lemma @x1108 (or (not $x1078) (not $x793) (not $x890))) @x522 @x1023 (not $x1078)))) |
56727 | 5562 |
(let ((@x966 (unit-resolution @x576 ((_ th-lemma arith) @x962 @x775 @x934 @x924 @x921 @x604 $x1078) false))) |
5563 |
(let ((@x967 (lemma @x966 $x365))) |
|
5564 |
(let ((@x445 (unit-resolution (def-axiom (or $x98 $x366 (not $x372))) @x377 (or $x98 $x366)))) |
|
5565 |
(let ((@x586 (unit-resolution @x445 @x967 $x98))) |
|
5566 |
(let ((@x1067 (trans (symm (unit-resolution @x620 @x384 $x610) $x881) (monotonicity @x586 (= ?x609 ?x102)) $x103))) |
|
5567 |
(let (($x916 (not $x792))) |
|
5568 |
(let ((@x950 ((_ th-lemma arith assign-bounds 1 -1/2 -1/2 1/2 -1/2) (or $x793 (not $x519) (not $x570) (not $x548) (not $x614) $x874)))) |
|
5569 |
(let ((@x951 (unit-resolution @x950 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x503) $x519)) @x907 $x519) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x137 $x800)) @x586 $x800) @x898 (unit-resolution ((_ th-lemma arith) (or false $x570)) @x26 $x570) @x905 $x793))) |
|
5570 |
(let ((@x1040 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x120 $x916 (not $x793))) (hypothesis $x364) (or $x916 (not $x793))))) |
|
5571 |
(let ((@x1060 ((_ th-lemma arith farkas -2 -2 1 -1 1 1) (unit-resolution @x1040 @x951 $x916) @x1104 @x1107 @x1100 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x137 $x799)) @x586 $x799) @x1085 false))) |
|
5572 |
(let ((@x569 (unit-resolution (unit-resolution (def-axiom (or $x366 $x363 $x364)) @x967 $x365) (lemma @x1060 $x120) $x363))) |
|
5573 |
(unit-resolution @x569 @x1067 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5574 |
|
57204 | 5575 |
d277a40ca34ecc409672601e981711fef2d0064f 64 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5576 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5577 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5578 |
(proof |
56727 | 5579 |
(let ((?x108 (collect$ uu$))) |
5580 |
(let ((?x109 (sup$ ?x108))) |
|
5581 |
(let (($x117 (less_eq$ ?x109 ?x109))) |
|
5582 |
(let (($x118 (not $x117))) |
|
5583 |
(let ((@x119 (asserted $x118))) |
|
5584 |
(let ((?x111 (collect$ uua$))) |
|
5585 |
(let ((?x112 (sup$ ?x111))) |
|
5586 |
(let (($x115 (less_eq$ ?x112 ?x109))) |
|
5587 |
(let ((@x116 (asserted $x115))) |
|
5588 |
(let (($x113 (less_eq$ ?x109 ?x112))) |
|
5589 |
(let ((@x114 (asserted $x113))) |
|
5590 |
(let (($x578 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(!(let (($x97 (less_eq$ ?v0 ?v2))) |
|
5591 |
(let (($x95 (less_eq$ ?v1 ?v2))) |
|
5592 |
(let (($x138 (not $x95))) |
|
5593 |
(let (($x93 (less_eq$ ?v0 ?v1))) |
|
5594 |
(let (($x137 (not $x93))) |
|
5595 |
(or $x137 $x138 $x97)))))) :pattern ( (less_eq$ ?v0 ?v1) (less_eq$ ?v1 ?v2) ))) |
|
5596 |
)) |
|
5597 |
(let (($x156 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(let (($x97 (less_eq$ ?v0 ?v2))) |
|
5598 |
(let (($x95 (less_eq$ ?v1 ?v2))) |
|
5599 |
(let (($x138 (not $x95))) |
|
5600 |
(let (($x93 (less_eq$ ?v0 ?v1))) |
|
5601 |
(let (($x137 (not $x93))) |
|
5602 |
(or $x137 $x138 $x97))))))) |
|
5603 |
)) |
|
5604 |
(let ((@x583 (trans (rewrite (= $x156 $x578)) (rewrite (= $x578 $x578)) (= $x156 $x578)))) |
|
5605 |
(let (($x105 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(let (($x97 (less_eq$ ?v0 ?v2))) |
|
5606 |
(let (($x95 (less_eq$ ?v1 ?v2))) |
|
5607 |
(let (($x93 (less_eq$ ?v0 ?v1))) |
|
5608 |
(let (($x96 (and $x93 $x95))) |
|
5609 |
(let (($x101 (not $x96))) |
|
5610 |
(or $x101 $x97))))))) |
|
5611 |
)) |
|
5612 |
(let (($x97 (less_eq$ ?2 ?0))) |
|
5613 |
(let (($x95 (less_eq$ ?1 ?0))) |
|
5614 |
(let (($x138 (not $x95))) |
|
5615 |
(let (($x93 (less_eq$ ?2 ?1))) |
|
5616 |
(let (($x137 (not $x93))) |
|
5617 |
(let (($x151 (or $x137 $x138 $x97))) |
|
5618 |
(let (($x96 (and $x93 $x95))) |
|
5619 |
(let (($x101 (not $x96))) |
|
5620 |
(let (($x102 (or $x101 $x97))) |
|
5621 |
(let ((@x143 (monotonicity (rewrite (= $x96 (not (or $x137 $x138)))) (= $x101 (not (not (or $x137 $x138))))))) |
|
5622 |
(let ((@x147 (trans @x143 (rewrite (= (not (not (or $x137 $x138))) (or $x137 $x138))) (= $x101 (or $x137 $x138))))) |
|
5623 |
(let ((@x155 (trans (monotonicity @x147 (= $x102 (or (or $x137 $x138) $x97))) (rewrite (= (or (or $x137 $x138) $x97) $x151)) (= $x102 $x151)))) |
|
5624 |
(let (($x99 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(let (($x97 (less_eq$ ?v0 ?v2))) |
|
5625 |
(let (($x95 (less_eq$ ?v1 ?v2))) |
|
5626 |
(let (($x93 (less_eq$ ?v0 ?v1))) |
|
5627 |
(let (($x96 (and $x93 $x95))) |
|
5628 |
(=> $x96 $x97)))))) |
|
5629 |
)) |
|
5630 |
(let ((@x110 (mp (asserted $x99) (quant-intro (rewrite (= (=> $x96 $x97) $x102)) (= $x99 $x105)) $x105))) |
|
5631 |
(let ((@x159 (mp (mp~ @x110 (nnf-pos (refl (~ $x102 $x102)) (~ $x105 $x105)) $x105) (quant-intro @x155 (= $x105 $x156)) $x156))) |
|
5632 |
(let ((@x584 (mp @x159 @x583 $x578))) |
|
5633 |
(let (($x247 (not $x115))) |
|
5634 |
(let (($x160 (not $x113))) |
|
5635 |
(let (($x251 (not $x578))) |
|
5636 |
(let (($x252 (or $x251 $x160 $x247 $x117))) |
|
5637 |
(let ((@x570 (mp ((_ quant-inst (sup$ ?x108) (sup$ ?x111) (sup$ ?x108)) (or $x251 (or $x160 $x247 $x117))) (rewrite (= (or $x251 (or $x160 $x247 $x117)) $x252)) $x252))) |
|
5638 |
(unit-resolution @x570 @x584 @x114 @x116 @x119 false))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5639 |
|
57204 | 5640 |
4e8ab14f236ad601aa67494ca8ea18b2ba6a1a79 25 0 |
56727 | 5641 |
unsat |
5642 |
((set-logic AUFLIA) |
|
5643 |
(proof |
|
5644 |
(let (($x142 (pred$e 1))) |
|
5645 |
(let (($x144 (not $x142))) |
|
5646 |
(let ((@x145 (asserted $x144))) |
|
5647 |
(let (($x615 (forall ((?v0 Int) )(!(pred$e ?v0) :pattern ( (pred$e ?v0) ))) |
|
5648 |
)) |
|
5649 |
(let (($x138 (forall ((?v0 Int) )(pred$e ?v0)) |
|
5650 |
)) |
|
5651 |
(let (($x127 (forall ((?v0 Int) )(let (($x125 (or (pred$d (cons$d ?v0 nil$d)) (not (pred$d (cons$d ?v0 nil$d)))))) |
|
5652 |
(let (($x119 (pred$e ?v0))) |
|
5653 |
(and $x119 $x125)))) |
|
5654 |
)) |
|
5655 |
(let (($x119 (pred$e ?0))) |
|
5656 |
(let (($x125 (or (pred$d (cons$d ?0 nil$d)) (not (pred$d (cons$d ?0 nil$d)))))) |
|
5657 |
(let (($x126 (and $x119 $x125))) |
|
5658 |
(let ((@x133 (monotonicity (rewrite (= $x125 true)) (= $x126 (and $x119 true))))) |
|
5659 |
(let ((@x140 (quant-intro (trans @x133 (rewrite (= (and $x119 true) $x119)) (= $x126 $x119)) (= $x127 $x138)))) |
|
5660 |
(let ((@x170 (mp~ (mp (asserted $x127) @x140 $x138) (nnf-pos (refl (~ $x119 $x119)) (~ $x138 $x138)) $x138))) |
|
5661 |
(let ((@x620 (mp @x170 (quant-intro (refl (= $x119 $x119)) (= $x138 $x615)) $x615))) |
|
5662 |
(let (($x257 (or (not $x615) $x142))) |
|
5663 |
(let ((@x258 ((_ quant-inst 1) $x257))) |
|
5664 |
(unit-resolution @x258 @x620 @x145 false)))))))))))))))))) |
|
5665 |
||
57204 | 5666 |
4e5cf2f6b4df716b03e440b50af106a8af8b2799 170 0 |
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5667 |
unsat |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5668 |
((set-logic AUFLIA) |
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5669 |
(proof |
56727 | 5670 |
(let ((?x209 (some$a true))) |
5671 |
(let ((?x210 (g$b ?x209))) |
|
5672 |
(let ((?x206 (some$ 3))) |
|
5673 |
(let ((?x208 (g$ ?x206))) |
|
5674 |
(let (($x211 (= ?x208 ?x210))) |
|
5675 |
(let ((?x434 (cons$a true nil$a))) |
|
5676 |
(let ((?x435 (g$c ?x434))) |
|
5677 |
(let (($x406 (= ?x210 ?x435))) |
|
5678 |
(let (($x768 (forall ((?v0 Bool) )(!(= (g$b (some$a ?v0)) (g$c (cons$a ?v0 nil$a))) :pattern ( (some$a ?v0) ) :pattern ( (cons$a ?v0 nil$a) ))) |
|
5679 |
)) |
|
5680 |
(let (($x43 (forall ((?v0 Bool) )(= (g$b (some$a ?v0)) (g$c (cons$a ?v0 nil$a)))) |
|
5681 |
)) |
|
5682 |
(let (($x42 (= (g$b (some$a ?0)) (g$c (cons$a ?0 nil$a))))) |
|
5683 |
(let ((@x280 (mp~ (asserted $x43) (nnf-pos (refl (~ $x42 $x42)) (~ $x43 $x43)) $x43))) |
|
5684 |
(let ((@x773 (mp @x280 (quant-intro (refl (= $x42 $x42)) (= $x43 $x768)) $x768))) |
|
5685 |
(let (($x419 (or (not $x768) $x406))) |
|
5686 |
(let ((@x752 ((_ quant-inst true) $x419))) |
|
5687 |
(let ((?x720 (size$ ?x434))) |
|
5688 |
(let (($x444 (= ?x435 ?x720))) |
|
5689 |
(let (($x776 (forall ((?v0 Bool_list$) )(!(let ((?x61 (size$ ?v0))) |
|
5690 |
(let ((?x60 (g$c ?v0))) |
|
5691 |
(= ?x60 ?x61))) :pattern ( (g$c ?v0) ) :pattern ( (size$ ?v0) ))) |
|
5692 |
)) |
|
5693 |
(let (($x63 (forall ((?v0 Bool_list$) )(let ((?x61 (size$ ?v0))) |
|
5694 |
(let ((?x60 (g$c ?v0))) |
|
5695 |
(= ?x60 ?x61)))) |
|
5696 |
)) |
|
5697 |
(let ((@x780 (quant-intro (refl (= (= (g$c ?0) (size$ ?0)) (= (g$c ?0) (size$ ?0)))) (= $x63 $x776)))) |
|
5698 |
(let ((@x306 (nnf-pos (refl (~ (= (g$c ?0) (size$ ?0)) (= (g$c ?0) (size$ ?0)))) (~ $x63 $x63)))) |
|
5699 |
(let ((@x781 (mp (mp~ (asserted $x63) @x306 $x63) @x780 $x776))) |
|
5700 |
(let (($x711 (or (not $x776) $x444))) |
|
5701 |
(let ((@x712 ((_ quant-inst (cons$a true nil$a)) $x711))) |
|
5702 |
(let ((?x149 (size$ nil$a))) |
|
5703 |
(let ((?x724 (of_nat$ ?x149))) |
|
5704 |
(let ((?x710 (+ 1 ?x724))) |
|
5705 |
(let ((?x713 (nat$ ?x710))) |
|
5706 |
(let (($x714 (= ?x720 ?x713))) |
|
5707 |
(let (($x819 (forall ((?v0 Bool) (?v1 Bool_list$) )(!(= (size$ (cons$a ?v0 ?v1)) (nat$ (+ 1 (of_nat$ (size$ ?v1))))) :pattern ( (cons$a ?v0 ?v1) ))) |
|
5708 |
)) |
|
5709 |
(let (($x177 (forall ((?v0 Bool) (?v1 Bool_list$) )(= (size$ (cons$a ?v0 ?v1)) (nat$ (+ 1 (of_nat$ (size$ ?v1)))))) |
|
5710 |
)) |
|
5711 |
(let (($x174 (= (size$ (cons$a ?1 ?0)) (nat$ (+ 1 (of_nat$ (size$ ?0))))))) |
|
5712 |
(let (($x161 (forall ((?v0 Bool) (?v1 Bool_list$) )(= (size$ (cons$a ?v0 ?v1)) (nat$ (+ (of_nat$ (size$ ?v1)) (+ 0 1))))) |
|
5713 |
)) |
|
5714 |
(let (($x160 (= (size$ (cons$a ?1 ?0)) (nat$ (+ (of_nat$ (size$ ?0)) (+ 0 1)))))) |
|
5715 |
(let (($x172 (= (nat$ (+ (of_nat$ (size$ ?0)) (+ 0 1))) (nat$ (+ 1 (of_nat$ (size$ ?0))))))) |
|
5716 |
(let ((?x61 (size$ ?0))) |
|
5717 |
(let ((?x157 (of_nat$ ?x61))) |
|
5718 |
(let ((?x166 (+ 1 ?x157))) |
|
5719 |
(let ((?x92 (+ 0 1))) |
|
5720 |
(let ((?x158 (+ ?x157 ?x92))) |
|
5721 |
(let ((@x170 (trans (monotonicity (rewrite (= ?x92 1)) (= ?x158 (+ ?x157 1))) (rewrite (= (+ ?x157 1) ?x166)) (= ?x158 ?x166)))) |
|
5722 |
(let ((@x179 (quant-intro (monotonicity (monotonicity @x170 $x172) (= $x160 $x174)) (= $x161 $x177)))) |
|
5723 |
(let ((@x323 (mp~ (mp (asserted $x161) @x179 $x177) (nnf-pos (refl (~ $x174 $x174)) (~ $x177 $x177)) $x177))) |
|
5724 |
(let ((@x824 (mp @x323 (quant-intro (refl (= $x174 $x174)) (= $x177 $x819)) $x819))) |
|
5725 |
(let (($x718 (or (not $x819) $x714))) |
|
5726 |
(let ((@x556 ((_ quant-inst true nil$a) $x718))) |
|
5727 |
(let ((?x153 (size$a nil$))) |
|
5728 |
(let ((?x730 (of_nat$ ?x153))) |
|
5729 |
(let (($x716 (<= ?x730 0))) |
|
5730 |
(let (($x715 (= ?x730 0))) |
|
5731 |
(let ((?x73 (nat$ 0))) |
|
5732 |
(let ((?x748 (of_nat$ ?x73))) |
|
5733 |
(let (($x412 (= ?x748 0))) |
|
5734 |
(let (($x841 (forall ((?v0 Int) )(!(let (($x223 (= (of_nat$ (nat$ ?v0)) ?v0))) |
|
5735 |
(let (($x236 (>= ?v0 0))) |
|
5736 |
(let (($x237 (not $x236))) |
|
5737 |
(or $x237 $x223)))) :pattern ( (nat$ ?v0) ))) |
|
5738 |
)) |
|
5739 |
(let (($x243 (forall ((?v0 Int) )(let (($x223 (= (of_nat$ (nat$ ?v0)) ?v0))) |
|
5740 |
(let (($x236 (>= ?v0 0))) |
|
5741 |
(let (($x237 (not $x236))) |
|
5742 |
(or $x237 $x223))))) |
|
5743 |
)) |
|
5744 |
(let (($x223 (= (of_nat$ (nat$ ?0)) ?0))) |
|
5745 |
(let (($x236 (>= ?0 0))) |
|
5746 |
(let (($x237 (not $x236))) |
|
5747 |
(let (($x240 (or $x237 $x223))) |
|
5748 |
(let (($x225 (forall ((?v0 Int) )(let (($x223 (= (of_nat$ (nat$ ?v0)) ?v0))) |
|
5749 |
(let (($x220 (<= 0 ?v0))) |
|
5750 |
(=> $x220 $x223)))) |
|
5751 |
)) |
|
5752 |
(let (($x231 (forall ((?v0 Int) )(let (($x223 (= (of_nat$ (nat$ ?v0)) ?v0))) |
|
5753 |
(or (not (<= 0 ?v0)) $x223))) |
|
5754 |
)) |
|
5755 |
(let ((@x239 (monotonicity (rewrite (= (<= 0 ?0) $x236)) (= (not (<= 0 ?0)) $x237)))) |
|
5756 |
(let ((@x245 (quant-intro (monotonicity @x239 (= (or (not (<= 0 ?0)) $x223) $x240)) (= $x231 $x243)))) |
|
5757 |
(let ((@x230 (rewrite (= (=> (<= 0 ?0) $x223) (or (not (<= 0 ?0)) $x223))))) |
|
5758 |
(let ((@x248 (mp (asserted $x225) (trans (quant-intro @x230 (= $x225 $x231)) @x245 (= $x225 $x243)) $x243))) |
|
5759 |
(let ((@x846 (mp (mp~ @x248 (nnf-pos (refl (~ $x240 $x240)) (~ $x243 $x243)) $x243) (quant-intro (refl (= $x240 $x240)) (= $x243 $x841)) $x841))) |
|
5760 |
(let (($x381 (not $x841))) |
|
5761 |
(let (($x382 (or $x381 $x412))) |
|
5762 |
(let ((@x733 (rewrite (= (>= 0 0) true)))) |
|
5763 |
(let ((@x736 (trans (monotonicity @x733 (= (not (>= 0 0)) (not true))) (rewrite (= (not true) false)) (= (not (>= 0 0)) false)))) |
|
5764 |
(let ((@x739 (monotonicity @x736 (= (or (not (>= 0 0)) $x412) (or false $x412))))) |
|
5765 |
(let ((@x742 (trans @x739 (rewrite (= (or false $x412) $x412)) (= (or (not (>= 0 0)) $x412) $x412)))) |
|
5766 |
(let ((@x731 (monotonicity @x742 (= (or $x381 (or (not (>= 0 0)) $x412)) $x382)))) |
|
5767 |
(let ((@x450 (trans @x731 (rewrite (= $x382 $x382)) (= (or $x381 (or (not (>= 0 0)) $x412)) $x382)))) |
|
5768 |
(let ((@x451 (mp ((_ quant-inst 0) (or $x381 (or (not (>= 0 0)) $x412))) @x450 $x382))) |
|
5769 |
(let ((@x621 (trans (monotonicity (asserted (= ?x153 ?x73)) (= ?x730 ?x748)) (unit-resolution @x451 @x846 $x412) $x715))) |
|
5770 |
(let (($x557 (>= ?x730 0))) |
|
5771 |
(let ((@x610 ((_ th-lemma arith eq-propagate -1 -1) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x715) $x557)) @x621 $x557) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x715) $x716)) @x621 $x716) (= (+ 1 ?x730) 1)))) |
|
5772 |
(let (($x700 (<= ?x724 0))) |
|
5773 |
(let (($x558 (= ?x724 0))) |
|
5774 |
(let ((@x583 (trans (monotonicity (asserted (= ?x149 ?x73)) (= ?x724 ?x748)) (unit-resolution @x451 @x846 $x412) $x558))) |
|
5775 |
(let (($x701 (>= ?x724 0))) |
|
5776 |
(let ((@x559 ((_ th-lemma arith eq-propagate -1 -1) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x558) $x701)) @x583 $x701) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x558) $x700)) @x583 $x700) (= ?x710 1)))) |
|
5777 |
(let ((@x563 (trans @x559 (symm @x610 (= 1 (+ 1 ?x730))) (= ?x710 (+ 1 ?x730))))) |
|
5778 |
(let ((@x539 (symm (monotonicity @x563 (= ?x713 (nat$ (+ 1 ?x730)))) (= (nat$ (+ 1 ?x730)) ?x713)))) |
|
5779 |
(let ((?x437 (+ 1 ?x730))) |
|
5780 |
(let ((?x440 (nat$ ?x437))) |
|
5781 |
(let ((?x431 (cons$ 3 nil$))) |
|
5782 |
(let ((?x728 (size$a ?x431))) |
|
5783 |
(let (($x719 (= ?x728 ?x440))) |
|
5784 |
(let (($x826 (forall ((?v0 Int) (?v1 Int_list$) )(!(= (size$a (cons$ ?v0 ?v1)) (nat$ (+ 1 (of_nat$ (size$a ?v1))))) :pattern ( (cons$ ?v0 ?v1) ))) |
|
5785 |
)) |
|
5786 |
(let (($x202 (forall ((?v0 Int) (?v1 Int_list$) )(= (size$a (cons$ ?v0 ?v1)) (nat$ (+ 1 (of_nat$ (size$a ?v1)))))) |
|
5787 |
)) |
|
5788 |
(let (($x199 (= (size$a (cons$ ?1 ?0)) (nat$ (+ 1 (of_nat$ (size$a ?0))))))) |
|
5789 |
(let (($x186 (forall ((?v0 Int) (?v1 Int_list$) )(= (size$a (cons$ ?v0 ?v1)) (nat$ (+ (of_nat$ (size$a ?v1)) (+ 0 1))))) |
|
5790 |
)) |
|
5791 |
(let (($x185 (= (size$a (cons$ ?1 ?0)) (nat$ (+ (of_nat$ (size$a ?0)) ?x92))))) |
|
5792 |
(let (($x197 (= (nat$ (+ (of_nat$ (size$a ?0)) ?x92)) (nat$ (+ 1 (of_nat$ (size$a ?0))))))) |
|
5793 |
(let ((?x67 (size$a ?0))) |
|
5794 |
(let ((?x181 (of_nat$ ?x67))) |
|
5795 |
(let ((?x191 (+ 1 ?x181))) |
|
5796 |
(let ((?x183 (+ ?x181 ?x92))) |
|
5797 |
(let ((@x195 (trans (monotonicity (rewrite (= ?x92 1)) (= ?x183 (+ ?x181 1))) (rewrite (= (+ ?x181 1) ?x191)) (= ?x183 ?x191)))) |
|
5798 |
(let ((@x204 (quant-intro (monotonicity (monotonicity @x195 $x197) (= $x185 $x199)) (= $x186 $x202)))) |
|
5799 |
(let ((@x328 (mp~ (mp (asserted $x186) @x204 $x202) (nnf-pos (refl (~ $x199 $x199)) (~ $x202 $x202)) $x202))) |
|
5800 |
(let ((@x831 (mp @x328 (quant-intro (refl (= $x199 $x199)) (= $x202 $x826)) $x826))) |
|
5801 |
(let (($x722 (or (not $x826) $x719))) |
|
5802 |
(let ((@x723 ((_ quant-inst 3 nil$) $x722))) |
|
5803 |
(let ((?x432 (g$a ?x431))) |
|
5804 |
(let (($x729 (= ?x432 ?x728))) |
|
5805 |
(let (($x784 (forall ((?v0 Int_list$) )(!(let ((?x67 (size$a ?v0))) |
|
5806 |
(let ((?x66 (g$a ?v0))) |
|
5807 |
(= ?x66 ?x67))) :pattern ( (g$a ?v0) ) :pattern ( (size$a ?v0) ))) |
|
5808 |
)) |
|
5809 |
(let (($x69 (forall ((?v0 Int_list$) )(let ((?x67 (size$a ?v0))) |
|
5810 |
(let ((?x66 (g$a ?v0))) |
|
5811 |
(= ?x66 ?x67)))) |
|
5812 |
)) |
|
5813 |
(let ((@x788 (quant-intro (refl (= (= (g$a ?0) ?x67) (= (g$a ?0) ?x67))) (= $x69 $x784)))) |
|
5814 |
(let ((@x295 (nnf-pos (refl (~ (= (g$a ?0) ?x67) (= (g$a ?0) ?x67))) (~ $x69 $x69)))) |
|
5815 |
(let ((@x789 (mp (mp~ (asserted $x69) @x295 $x69) @x788 $x784))) |
|
5816 |
(let (($x438 (or (not $x784) $x729))) |
|
5817 |
(let ((@x439 ((_ quant-inst (cons$ 3 nil$)) $x438))) |
|
5818 |
(let (($x433 (= ?x208 ?x432))) |
|
5819 |
(let (($x760 (forall ((?v0 Int) )(!(= (g$ (some$ ?v0)) (g$a (cons$ ?v0 nil$))) :pattern ( (some$ ?v0) ) :pattern ( (cons$ ?v0 nil$) ))) |
|
5820 |
)) |
|
5821 |
(let (($x34 (forall ((?v0 Int) )(= (g$ (some$ ?v0)) (g$a (cons$ ?v0 nil$)))) |
|
5822 |
)) |
|
5823 |
(let (($x33 (= (g$ (some$ ?0)) (g$a (cons$ ?0 nil$))))) |
|
5824 |
(let ((@x297 (mp~ (asserted $x34) (nnf-pos (refl (~ $x33 $x33)) (~ $x34 $x34)) $x34))) |
|
5825 |
(let ((@x765 (mp @x297 (quant-intro (refl (= $x33 $x33)) (= $x34 $x760)) $x760))) |
|
5826 |
(let (($x750 (or (not $x760) $x433))) |
|
5827 |
(let ((@x751 ((_ quant-inst 3) $x750))) |
|
5828 |
(let ((@x550 (trans (unit-resolution @x751 @x765 $x433) (unit-resolution @x439 @x789 $x729) (= ?x208 ?x728)))) |
|
5829 |
(let ((@x554 (trans (trans @x550 (unit-resolution @x723 @x831 $x719) (= ?x208 ?x440)) @x539 (= ?x208 ?x713)))) |
|
5830 |
(let ((@x525 (trans @x554 (symm (unit-resolution @x556 @x824 $x714) (= ?x713 ?x720)) (= ?x208 ?x720)))) |
|
5831 |
(let ((@x527 (trans @x525 (symm (unit-resolution @x712 @x781 $x444) (= ?x720 ?x435)) (= ?x208 ?x435)))) |
|
5832 |
(let ((@x528 (trans @x527 (symm (unit-resolution @x752 @x773 $x406) (= ?x435 ?x210)) $x211))) |
|
5833 |
(let (($x212 (not $x211))) |
|
5834 |
(let ((@x213 (asserted $x212))) |
|
5835 |
(unit-resolution @x213 @x528 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
56079
175ac95720d4
use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff
changeset
|
5836 |