src/HOL/SMT_Examples/SMT_Examples.certs
author wenzelm
Tue, 06 Sep 2016 15:02:22 +0200
changeset 63809 56670ab6f55e
parent 61783 7f36a8bfa822
child 63950 cdc1e59aa513
permissions -rw-r--r--
tuned;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
58365
b638978797fd updated SMT certificates
blanchet
parents: 57711
diff changeset
     1
3aa17d1c77bc1a92bca05df291d11d81c645a931 6 0
b638978797fd updated SMT certificates
blanchet
parents: 57711
diff changeset
     2
unsat
b638978797fd updated SMT certificates
blanchet
parents: 57711
diff changeset
     3
((set-logic AUFLIA)
b638978797fd updated SMT certificates
blanchet
parents: 57711
diff changeset
     4
(proof
b638978797fd updated SMT certificates
blanchet
parents: 57711
diff changeset
     5
(let ((@x30 (rewrite (= (not true) false))))
b638978797fd updated SMT certificates
blanchet
parents: 57711
diff changeset
     6
(mp (asserted (not true)) @x30 false))))
b638978797fd updated SMT certificates
blanchet
parents: 57711
diff changeset
     7
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
     8
572677daa32981bf8212986300f1362edf42a0c1 7 0
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
     9
unsat
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    10
((set-logic AUFLIA)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    11
(proof
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    12
(let ((@x36 (monotonicity (rewrite (= (or p$ (not p$)) true)) (= (not (or p$ (not p$))) (not true)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    13
(let ((@x40 (trans @x36 (rewrite (= (not true) false)) (= (not (or p$ (not p$))) false))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    14
(mp (asserted (not (or p$ (not p$)))) @x40 false)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    15
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
    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
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    20
(let ((@x36 (monotonicity (rewrite (= (and p$ true) p$)) (= (= (and p$ true) p$) (= p$ p$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    21
(let ((@x40 (trans @x36 (rewrite (= (= p$ p$) true)) (= (= (and p$ true) p$) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    22
(let ((@x43 (monotonicity @x40 (= (not (= (and p$ true) p$)) (not true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    23
(let ((@x47 (trans @x43 (rewrite (= (not true) false)) (= (not (= (and p$ true) p$)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    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
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
    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
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    30
(let (($x33 (not (=> (and (or p$ q$) (not p$)) q$))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    31
(let (($x37 (= (=> (and (or p$ q$) (not p$)) q$) (or (not (and (or p$ q$) (not p$))) q$))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    32
(let ((@x41 (monotonicity (rewrite $x37) (= $x33 (not (or (not (and (or p$ q$) (not p$))) q$))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    33
(let ((@x44 (mp (asserted $x33) @x41 (not (or (not (and (or p$ q$) (not p$))) q$)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    34
(let ((@x45 (and-elim (not-or-elim @x44 (and (or p$ q$) (not p$))) (not p$))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    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)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    36
(let ((@x58 (trans @x54 (rewrite (= (or false false) false)) (= (or p$ q$) false))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    37
(let (($x29 (or p$ q$)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    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
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
    40
a021a5fec5486f23204e54770f9c04c64baf7e25 11 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    41
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    42
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    43
(proof
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    44
(let (($x32 (and c$ d$)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    45
(let (($x29 (and a$ b$)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    46
(let (($x33 (or $x29 $x32)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    47
(let (($x34 (=> $x33 $x33)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    48
(let (($x35 (not $x34)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    49
(let ((@x45 (trans (monotonicity (rewrite (= $x34 true)) (= $x35 (not true))) (rewrite (= (not true) false)) (= $x35 false))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
    50
(mp (asserted $x35) @x45 false)))))))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    51
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
    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
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    56
(let (($x33 (and p1$ p3$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    57
(let (($x32 (and p3$ p2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    58
(let (($x34 (or $x32 $x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    59
(let (($x35 (=> p1$ $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    60
(let (($x36 (or $x35 p1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    61
(let (($x29 (and p1$ p2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    62
(let (($x31 (or $x29 p3$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    63
(let (($x37 (=> $x31 $x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    64
(let (($x38 (not $x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    65
(let (($x40 (not p1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    66
(let (($x41 (or $x40 $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    67
(let (($x44 (or $x41 p1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    68
(let (($x50 (not $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    69
(let (($x51 (or $x50 $x44)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    70
(let (($x56 (not $x51)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    71
(let ((@x67 (trans (monotonicity (rewrite (= $x51 true)) (= $x56 (not true))) (rewrite (= (not true) false)) (= $x56 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    72
(let ((@x49 (monotonicity (monotonicity (rewrite (= $x35 $x41)) (= $x36 $x44)) (= $x37 (=> $x31 $x44)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    73
(let ((@x58 (monotonicity (trans @x49 (rewrite (= (=> $x31 $x44) $x51)) (= $x37 $x51)) (= $x38 $x56))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    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
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
    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
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    80
(let (($x28 (= p$ p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    81
(let (($x29 (= $x28 p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    82
(let (($x30 (= $x29 p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    83
(let (($x31 (= $x30 p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    84
(let (($x32 (= $x31 p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    85
(let (($x33 (= $x32 p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    86
(let (($x34 (= $x33 p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    87
(let (($x35 (= $x34 p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    88
(let (($x36 (= $x35 p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    89
(let (($x37 (not $x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    90
(let ((@x40 (rewrite (= $x28 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    91
(let ((@x45 (rewrite (= (= true p$) p$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    92
(let ((@x47 (trans (monotonicity @x40 (= $x29 (= true p$))) @x45 (= $x29 p$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    93
(let ((@x53 (monotonicity (trans (monotonicity @x47 (= $x30 $x28)) @x40 (= $x30 true)) (= $x31 (= true p$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    94
(let ((@x59 (trans (monotonicity (trans @x53 @x45 (= $x31 p$)) (= $x32 $x28)) @x40 (= $x32 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    95
(let ((@x63 (trans (monotonicity @x59 (= $x33 (= true p$))) @x45 (= $x33 p$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    96
(let ((@x69 (monotonicity (trans (monotonicity @x63 (= $x34 $x28)) @x40 (= $x34 true)) (= $x35 (= true p$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    97
(let ((@x75 (trans (monotonicity (trans @x69 @x45 (= $x35 p$)) (= $x36 $x28)) @x40 (= $x36 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    98
(let ((@x82 (trans (monotonicity @x75 (= $x37 (not true))) (rewrite (= (not true) false)) (= $x37 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
    99
(mp (asserted $x37) @x82 false))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
   100
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
   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
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   105
(let (($x100 (not d$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   106
(let (($x45 (not c$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   107
(let (($x112 (or p$ (and q$ (not q$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   108
(let (($x113 (and (not p$) $x112)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   109
(let (($x114 (or c$ $x113)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   110
(let (($x115 (not $x114)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   111
(let ((@x121 (monotonicity (rewrite (= (and q$ (not q$)) false)) (= $x112 (or p$ false)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   112
(let ((@x128 (monotonicity (trans @x121 (rewrite (= (or p$ false) p$)) (= $x112 p$)) (= $x113 (and (not p$) p$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   113
(let ((@x132 (trans @x128 (rewrite (= (and (not p$) p$) false)) (= $x113 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   114
(let ((@x139 (trans (monotonicity @x132 (= $x114 (or c$ false))) (rewrite (= (or c$ false) c$)) (= $x114 c$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   115
(let ((@x153 (iff-false (mp (asserted $x115) (monotonicity @x139 (= $x115 $x45)) $x45) (= c$ false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   116
(let ((@x147 (trans (monotonicity @x153 (= (or $x100 c$) (or $x100 false))) (rewrite (= (or $x100 false) $x100)) (= (or $x100 c$) $x100))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   117
(let (($x103 (or $x100 c$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   118
(let ((@x102 (monotonicity (rewrite (= (or d$ false) d$)) (= (not (or d$ false)) $x100))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   119
(let ((@x108 (mp (asserted (or (not (or d$ false)) c$)) (monotonicity @x102 (= (or (not (or d$ false)) c$) $x103)) $x103)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   120
(let (($x87 (not b$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   121
(let ((@x164 (trans (monotonicity @x153 (= (or $x87 c$) (or $x87 false))) (rewrite (= (or $x87 false) $x87)) (= (or $x87 c$) $x87))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   122
(let (($x90 (or $x87 c$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   123
(let ((@x82 (monotonicity (rewrite (= (or x$ (not x$)) true)) (= (and b$ (or x$ (not x$))) (and b$ true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   124
(let ((@x86 (trans @x82 (rewrite (= (and b$ true) b$)) (= (and b$ (or x$ (not x$))) b$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   125
(let ((@x92 (monotonicity (monotonicity @x86 (= (not (and b$ (or x$ (not x$)))) $x87)) (= (or (not (and b$ (or x$ (not x$)))) c$) $x90))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   126
(let ((@x95 (mp (asserted (or (not (and b$ (or x$ (not x$)))) c$)) @x92 $x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   127
(let (($x64 (not a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   128
(let ((@x170 (monotonicity (iff-false (mp @x95 @x164 $x87) (= b$ false)) (= (or $x64 b$) (or $x64 false)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   129
(let ((@x174 (trans @x170 (rewrite (= (or $x64 false) $x64)) (= (or $x64 b$) $x64))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   130
(let (($x67 (or $x64 b$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   131
(let ((@x59 (monotonicity (rewrite (= (and c$ $x45) false)) (= (or a$ (and c$ $x45)) (or a$ false)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   132
(let ((@x63 (trans @x59 (rewrite (= (or a$ false) a$)) (= (or a$ (and c$ $x45)) a$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   133
(let ((@x69 (monotonicity (monotonicity @x63 (= (not (or a$ (and c$ $x45))) $x64)) (= (or (not (or a$ (and c$ $x45))) b$) $x67))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   134
(let ((@x175 (mp (mp (asserted (or (not (or a$ (and c$ $x45))) b$)) @x69 $x67) @x174 $x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   136
(let ((@x202 (trans @x198 (rewrite (= (or false false false false) false)) (= (or a$ b$ c$ d$) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   137
(let (($x37 (or a$ b$ c$ d$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   138
(let ((@x40 (mp (asserted (or a$ (or b$ (or c$ d$)))) (rewrite (= (or a$ (or b$ (or c$ d$))) $x37)) $x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   139
(mp @x40 @x202 false)))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
   140
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
   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
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   145
(let ((?x38 (symm_f$ b$ a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   146
(let ((?x37 (symm_f$ a$ b$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   147
(let (($x39 (= ?x37 ?x38)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   148
(let (($x52 (not $x39)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   149
(let ((@x47 (monotonicity (rewrite (= (= a$ a$) true)) (= (and (= a$ a$) $x39) (and true $x39)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   150
(let ((@x51 (trans @x47 (rewrite (= (and true $x39) $x39)) (= (and (= a$ a$) $x39) $x39))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   151
(let ((@x57 (mp (asserted (not (and (= a$ a$) $x39))) (monotonicity @x51 (= (not (and (= a$ a$) $x39)) $x52)) $x52)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   152
(let (($x480 (forall ((?v0 A$) (?v1 A$) )(! (let ((?x30 (symm_f$ ?v1 ?v0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   153
(let ((?x29 (symm_f$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   154
(= ?x29 ?x30))) :pattern ( (symm_f$ ?v0 ?v1) ) :pattern ( (symm_f$ ?v1 ?v0) ) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   155
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   156
(let (($x32 (forall ((?v0 A$) (?v1 A$) )(! (let ((?x30 (symm_f$ ?v1 ?v0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   157
(let ((?x29 (symm_f$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   158
(= ?x29 ?x30))) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   159
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   160
(let ((?x30 (symm_f$ ?0 ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   161
(let ((?x29 (symm_f$ ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   162
(let (($x31 (= ?x29 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   163
(let ((@x60 (mp~ (asserted $x32) (nnf-pos (refl (~ $x31 $x31)) (~ $x32 $x32)) $x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   164
(let ((@x485 (mp @x60 (quant-intro (refl (= $x31 $x31)) (= $x32 $x480)) $x480)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   165
(let (($x149 (or (not $x480) $x39)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   166
(let ((@x61 ((_ quant-inst a$ b$) $x149)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
   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
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   173
(let (($x397 (not x38$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   174
(let (($x553 (not x51$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   175
(let (($x657 (not x25$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   176
(let (($x610 (not x56$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   177
(let (($x538 (not x17$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   178
(let ((@x897 (hypothesis $x538)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   179
(let (($x482 (not x45$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   180
(let (($x609 (not x22$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   181
(let (($x453 (not x11$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   182
(let ((@x815 (hypothesis $x453)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   183
(let (($x667 (not x27$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   184
(let (($x638 (not x58$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   185
(let (($x567 (not x52$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   186
(let ((@x756 (hypothesis $x567)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   187
(let (($x509 (not x47$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   188
(let (($x637 (not x24$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   189
(let (($x566 (not x19$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   190
(let (($x294 (or x24$ x53$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   191
(let ((@x774 (monotonicity (iff-false (asserted (not x59$)) (= x59$ false)) (= (or x59$ x24$ x53$) (or false x24$ x53$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   192
(let ((@x778 (trans @x774 (rewrite (= (or false x24$ x53$) $x294)) (= (or x59$ x24$ x53$) $x294))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   193
(let (($x303 (or x59$ x24$ x53$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   194
(let ((@x306 (mp (asserted (or x59$ $x294)) (rewrite (= (or x59$ $x294) $x303)) $x303)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   195
(let ((@x779 (mp @x306 @x778 $x294)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   196
(let ((@x1181 (unit-resolution @x779 (unit-resolution (asserted (or $x637 $x638)) (hypothesis x58$) $x637) x53$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   197
(let (($x580 (not x53$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   198
(let (($x581 (or $x580 $x566)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   199
(let ((@x582 (asserted $x581)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   200
(let ((@x1182 (unit-resolution @x582 @x1181 $x566)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   201
(let (($x496 (not x46$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   202
(let (($x583 (or $x580 $x509)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   203
(let ((@x584 (asserted $x583)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   204
(let ((@x1183 (unit-resolution @x584 @x1181 $x509)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   205
(let (($x438 (not x41$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   206
(let (($x363 (not x4$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   207
(let (($x347 (not x2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   208
(let (($x336 (not x31$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   209
(let (($x623 (not x23$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   210
(let (($x645 (or $x638 $x623)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   211
(let ((@x646 (asserted $x645)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   212
(let ((@x974 (hypothesis $x509)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   213
(let ((@x757 (hypothesis $x566)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   214
(let ((@x853 (hypothesis $x397)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   215
(let (($x410 (not x8$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   216
(let (($x355 (not x3$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   217
(let (($x467 (not x12$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   218
(let ((@x882 (hypothesis $x467)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   219
(let ((@x845 (hypothesis $x347)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   220
(let (($x356 (not x33$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   221
(let (($x481 (not x13$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   222
(let (($x424 (not x9$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   223
(let ((@x728 (hypothesis x41$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   224
(let (($x439 (or $x438 $x424)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   225
(let ((@x440 (asserted $x439)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   226
(let ((@x922 (unit-resolution @x440 @x728 $x424)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   227
(let (($x364 (not x34$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   228
(let (($x72 (or x35$ x4$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   229
(let ((@x77 (asserted $x72)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   230
(let ((@x994 (unit-resolution @x77 (unit-resolution (asserted (or $x438 (not x35$))) @x728 (not x35$)) x4$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   231
(let (($x365 (or $x363 $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   232
(let ((@x366 (asserted $x365)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   233
(let ((@x999 (unit-resolution @x366 @x994 $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   234
(let (($x396 (not x7$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   235
(let (($x414 (or $x410 $x396)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   236
(let ((@x415 (asserted $x414)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   237
(let (($x348 (not x32$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   238
(let ((@x942 (hypothesis $x355)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   239
(let (($x64 (or x3$ x33$ x2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   240
(let ((@x67 (mp (asserted (or x3$ (or x33$ x2$))) (rewrite (= (or x3$ (or x33$ x2$)) $x64)) $x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   241
(let ((@x1048 (unit-resolution @x67 (unit-resolution (asserted (or $x410 $x356)) (hypothesis x8$) $x356) @x942 x2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   242
(let (($x349 (or $x347 $x348)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   243
(let ((@x350 (asserted $x349)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   244
(let (($x105 (or x7$ x38$ x6$ x32$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   245
(let ((@x108 (mp (asserted (or x7$ (or x38$ (or x6$ x32$)))) (rewrite (= (or x7$ (or x38$ (or x6$ x32$))) $x105)) $x105)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   246
(let ((@x842 (unit-resolution @x108 (unit-resolution @x350 @x1048 $x348) (unit-resolution @x415 (hypothesis x8$) $x396) @x853 x6$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   247
(let (($x701 (or x1$ x31$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   248
(let ((@x700 (monotonicity (iff-false (asserted (not x0$)) (= x0$ false)) (= (or x1$ x31$ x0$) (or x1$ x31$ false)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   249
(let ((@x705 (trans @x700 (rewrite (= (or x1$ x31$ false) $x701)) (= (or x1$ x31$ x0$) $x701))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   250
(let (($x46 (or x1$ x31$ x0$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   251
(let ((@x49 (mp (asserted (or x1$ (or x31$ x0$))) (rewrite (= (or x1$ (or x31$ x0$)) $x46)) $x46)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   252
(let ((@x706 (mp @x49 @x705 $x701)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   253
(let ((@x1002 (unit-resolution @x706 (unit-resolution (asserted (or $x347 (not x1$))) @x1048 (not x1$)) x31$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   254
(let (($x382 (not x6$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   255
(let (($x388 (or $x382 $x336)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   256
(let ((@x389 (asserted $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   257
(let ((@x1011 (lemma (unit-resolution @x389 @x1002 @x842 false) (or $x410 x38$ x3$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   258
(let ((@x952 (unit-resolution @x1011 (unit-resolution (asserted (or $x363 $x355)) @x994 $x355) @x853 $x410)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   259
(let (($x125 (or x9$ x40$ x8$ x34$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   260
(let ((@x128 (mp (asserted (or x9$ (or x40$ (or x8$ x34$)))) (rewrite (= (or x9$ (or x40$ (or x8$ x34$))) $x125)) $x125)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   261
(let (($x425 (not x40$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   262
(let (($x505 (or $x496 $x425)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   263
(let ((@x506 (asserted $x505)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   264
(let ((@x868 (unit-resolution @x506 (unit-resolution @x128 @x952 @x999 @x922 x40$) $x496)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   265
(let (($x239 (or x19$ x52$ x18$ x46$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   266
(let ((@x242 (mp (asserted (or x19$ (or x52$ (or x18$ x46$)))) (rewrite (= (or x19$ (or x52$ (or x18$ x46$))) $x239)) $x239)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   267
(let (($x411 (not x39$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   268
(let ((@x992 (unit-resolution @x67 (unit-resolution (asserted (or $x363 $x355)) @x994 $x355) @x845 x33$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   269
(let (($x420 (or $x411 $x356)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   270
(let ((@x421 (asserted $x420)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   271
(let (($x507 (or $x481 $x425)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   272
(let ((@x508 (asserted $x507)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   273
(let ((@x1036 (unit-resolution @x508 (unit-resolution @x128 @x952 @x999 @x922 x40$) $x481)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   274
(let (($x172 (or x13$ x45$ x12$ x39$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   275
(let ((@x175 (mp (asserted (or x13$ (or x45$ (or x12$ x39$)))) (rewrite (= (or x13$ (or x45$ (or x12$ x39$))) $x172)) $x172)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   276
(let ((@x1037 (unit-resolution @x175 @x1036 @x882 (unit-resolution @x421 @x992 $x411) x45$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   277
(let (($x552 (not x18$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   278
(let (($x558 (or $x552 $x482)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   279
(let ((@x559 (asserted $x558)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   280
(let ((@x1080 (unit-resolution @x559 @x1037 (unit-resolution @x242 @x868 @x757 @x756 x18$) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   281
(let ((@x1051 (unit-resolution (lemma @x1080 (or $x438 x12$ x19$ x52$ x2$ x38$)) @x845 @x757 @x756 @x882 @x853 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   282
(let (($x190 (or x47$ x14$ x41$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   283
(let ((@x193 (mp (asserted (or x47$ (or x14$ x41$))) (rewrite (= (or x47$ (or x14$ x41$)) $x190)) $x190)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   284
(let ((@x732 (unit-resolution @x193 @x1051 @x974 x14$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   285
(let (($x495 (not x14$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   286
(let (($x499 (or $x495 $x481)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   287
(let ((@x500 (asserted $x499)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   288
(let ((@x941 (unit-resolution @x242 (unit-resolution (asserted (or $x495 $x496)) @x732 $x496) @x757 @x756 x18$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   289
(let ((@x991 (unit-resolution @x175 (unit-resolution @x559 @x941 $x482) @x882 (unit-resolution @x500 @x732 $x481) x39$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   290
(let (($x367 (or $x363 $x355)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   291
(let ((@x368 (asserted $x367)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   292
(let ((@x980 (unit-resolution @x368 (unit-resolution @x67 (unit-resolution @x421 @x991 $x356) @x845 x3$) $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   293
(let (($x369 (or $x364 $x355)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   294
(let ((@x370 (asserted $x369)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   295
(let ((@x878 (unit-resolution @x370 (unit-resolution @x67 (unit-resolution @x421 @x991 $x356) @x845 x3$) $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   296
(let ((@x879 (unit-resolution @x128 @x878 (unit-resolution (asserted (or $x495 $x425)) @x732 $x425) (unit-resolution (asserted (or $x410 $x411)) @x991 $x410) x9$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   297
(let (($x371 (not x35$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   298
(let (($x443 (or $x424 $x371)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   299
(let ((@x444 (asserted $x443)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   300
(let ((@x912 (lemma (unit-resolution @x444 @x879 (unit-resolution @x77 @x980 x35$) false) (or x2$ x12$ x19$ x52$ x47$ x38$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   301
(let ((@x1091 (unit-resolution @x912 @x882 @x757 @x756 @x974 @x853 x2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   302
(let (($x359 (or $x355 $x347)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   303
(let ((@x360 (asserted $x359)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   304
(let ((@x784 (unit-resolution @x706 (unit-resolution (asserted (or $x347 (not x1$))) @x1091 (not x1$)) x31$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   305
(let ((@x808 (unit-resolution @x108 (unit-resolution @x389 @x784 $x382) (unit-resolution @x350 @x1091 $x348) @x853 x7$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   306
(let (($x418 (or $x411 $x396)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   307
(let ((@x419 (asserted $x418)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   308
(let ((@x913 (hypothesis $x410)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   309
(let ((@x931 (unit-resolution @x193 (unit-resolution @x500 (hypothesis x13$) $x495) @x974 x41$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   310
(let ((@x867 (unit-resolution @x128 (unit-resolution @x440 @x931 $x424) (unit-resolution @x508 (hypothesis x13$) $x425) @x913 x34$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   311
(let ((@x917 (unit-resolution @x77 (unit-resolution (asserted (or $x438 $x371)) @x931 $x371) x4$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   312
(let ((@x1090 (lemma (unit-resolution @x366 @x917 @x867 false) (or $x481 x8$ x47$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   313
(let ((@x1056 (unit-resolution @x1090 (unit-resolution @x1011 (unit-resolution @x360 @x1091 $x355) @x853 $x410) @x974 $x481)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   314
(let ((@x1057 (unit-resolution @x175 @x1056 @x882 (unit-resolution @x419 @x808 $x411) x45$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   315
(let ((@x937 (unit-resolution @x242 (unit-resolution @x559 @x1057 $x552) @x757 @x756 x46$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   316
(let ((@x884 (unit-resolution @x193 (unit-resolution (asserted (or $x495 $x496)) @x937 $x495) @x974 x41$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   318
(let ((@x864 (unit-resolution @x77 (unit-resolution (asserted (or $x438 $x371)) @x884 $x371) x4$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   319
(let ((@x1089 (lemma (unit-resolution @x366 @x864 @x800 false) (or x12$ x47$ x19$ x52$ x38$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   320
(let ((@x1116 (unit-resolution @x1089 @x853 @x757 @x756 @x974 x12$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   321
(let (($x489 (or $x482 $x467)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   322
(let ((@x490 (asserted $x489)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   323
(let (($x539 (not x50$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   324
(let (($x619 (or $x610 $x539)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   325
(let ((@x620 (asserted $x619)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   326
(let ((@x1058 (unit-resolution @x620 (hypothesis x56$) $x539)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   327
(let (($x524 (not x16$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   328
(let (($x587 (not x20$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   329
(let ((@x896 (hypothesis $x539)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   330
(let (($x517 (not x48$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   331
(let ((@x841 (hypothesis $x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   332
(let ((@x989 (unit-resolution @x193 (unit-resolution (asserted (or $x495 $x496)) (hypothesis x46$) $x495) @x974 x41$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   333
(let (($x441 (or $x438 $x371)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   334
(let ((@x442 (asserted $x441)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   335
(let ((@x838 (unit-resolution @x368 (unit-resolution @x77 (unit-resolution @x442 @x989 $x371) x4$) $x355)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   336
(let ((@x1053 (unit-resolution @x366 (unit-resolution @x77 (unit-resolution @x442 @x989 $x371) x4$) $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   337
(let ((@x862 (unit-resolution @x128 @x1053 (unit-resolution @x440 @x989 $x424) (unit-resolution @x506 (hypothesis x46$) $x425) x8$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   338
(let (($x416 (or $x410 $x356)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   339
(let ((@x417 (asserted $x416)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   340
(let ((@x987 (unit-resolution @x350 (unit-resolution @x67 (unit-resolution @x417 @x862 $x356) @x838 x2$) $x348)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   341
(let (($x335 (not x1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   342
(let (($x351 (or $x347 $x335)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   343
(let ((@x352 (asserted $x351)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   344
(let ((@x935 (unit-resolution @x352 (unit-resolution @x67 (unit-resolution @x417 @x862 $x356) @x838 x2$) $x335)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   345
(let ((@x746 (unit-resolution @x706 @x935 x31$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   346
(let ((@x1060 (unit-resolution @x108 (unit-resolution @x389 @x746 $x382) (unit-resolution @x415 @x862 $x396) @x987 x38$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   347
(let (($x479 (or $x453 $x397)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   348
(let ((@x480 (asserted $x479)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   349
(let (($x445 (not x10$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   350
(let (($x720 (or x5$ x36$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   351
(let ((@x719 (monotonicity (iff-false (asserted (not x30$)) (= x30$ false)) (= (or x5$ x36$ x30$) (or x5$ x36$ false)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   352
(let ((@x724 (trans @x719 (rewrite (= (or x5$ x36$ false) $x720)) (= (or x5$ x36$ x30$) $x720))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   353
(let (($x85 (or x5$ x36$ x30$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   354
(let ((@x88 (mp (asserted (or x5$ (or x36$ x30$))) (rewrite (= (or x5$ (or x36$ x30$)) $x85)) $x85)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   355
(let ((@x725 (mp @x88 @x724 $x720)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   356
(let ((@x810 (unit-resolution @x725 (unit-resolution (asserted (or (not x5$) $x336)) @x746 (not x5$)) x36$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   357
(let (($x375 (not x36$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   358
(let (($x449 (or $x445 $x375)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   359
(let ((@x450 (asserted $x449)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   360
(let (($x152 (or x11$ x43$ x10$ x37$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   361
(let ((@x155 (mp (asserted (or x11$ (or x43$ (or x10$ x37$)))) (rewrite (= (or x11$ (or x43$ (or x10$ x37$))) $x152)) $x152)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   363
(let (($x199 (or x15$ x48$ x42$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   364
(let ((@x202 (mp (asserted (or x15$ (or x48$ x42$))) (rewrite (= (or x15$ (or x48$ x42$)) $x199)) $x199)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   365
(let ((@x712 (unit-resolution @x202 (unit-resolution (asserted (or (not x42$) $x375)) @x810 (not x42$)) @x841 x15$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   366
(let (($x454 (not x43$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   367
(let (($x516 (not x15$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   368
(let (($x536 (or $x516 $x454)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   369
(let ((@x537 (asserted $x536)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   370
(let ((@x844 (lemma (unit-resolution @x537 @x712 @x840 false) (or $x496 x48$ x47$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   371
(let ((@x893 (unit-resolution @x242 (unit-resolution @x844 @x841 @x974 $x496) @x757 @x756 x18$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   372
(let (($x556 (or $x552 $x538)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   373
(let ((@x557 (asserted $x556)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   374
(let (($x446 (not x42$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   375
(let ((@x1023 (unit-resolution @x559 @x893 $x482)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   376
(let (($x468 (not x44$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   377
(let ((@x738 (unit-resolution @x725 (unit-resolution (asserted (or $x446 $x375)) (hypothesis x42$) $x375) x5$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   378
(let (($x374 (not x5$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   379
(let (($x394 (or $x374 $x336)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   380
(let ((@x395 (asserted $x394)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   381
(let (($x353 (or $x348 $x335)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   382
(let ((@x354 (asserted $x353)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   383
(let ((@x1005 (unit-resolution @x354 (unit-resolution @x706 (unit-resolution @x395 @x738 $x336) x1$) $x348)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   384
(let ((@x983 (unit-resolution @x352 (unit-resolution @x706 (unit-resolution @x395 @x738 $x336) x1$) $x347)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   385
(let ((@x998 (hypothesis $x482)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   386
(let ((@x932 (unit-resolution @x128 (unit-resolution @x417 @x992 $x410) @x922 @x999 x40$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   387
(let ((@x1030 (hypothesis $x348)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   388
(let ((@x1031 (hypothesis $x382)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   389
(let ((@x1039 (unit-resolution @x108 (unit-resolution (asserted (or $x396 $x356)) @x992 $x396) @x1031 @x1030 x38$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   390
(let (($x473 (or $x467 $x397)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   391
(let ((@x474 (asserted $x473)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   392
(let ((@x971 (unit-resolution @x175 (unit-resolution @x474 @x1039 $x467) (unit-resolution @x508 @x932 $x481) @x998 (unit-resolution @x421 @x992 $x411) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   393
(let ((@x1013 (lemma @x971 (or $x438 x45$ x6$ x32$ x2$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   394
(let ((@x1040 (unit-resolution @x1013 (unit-resolution (asserted (or $x382 $x374)) @x738 $x382) @x998 @x1005 @x983 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   395
(let (($x447 (or $x445 $x446)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   396
(let ((@x448 (asserted $x447)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   397
(let ((@x830 (unit-resolution @x448 (hypothesis x42$) $x445)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   398
(let ((@x1020 (hypothesis x12$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   399
(let (($x469 (or $x467 $x468)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   400
(let ((@x470 (asserted $x469)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   401
(let ((@x1021 (unit-resolution @x470 @x1020 $x468)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   402
(let (($x219 (or x17$ x50$ x16$ x44$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   403
(let ((@x222 (mp (asserted (or x17$ (or x50$ (or x16$ x44$)))) (rewrite (= (or x17$ (or x50$ (or x16$ x44$))) $x219)) $x219)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   404
(let (($x471 (or $x467 $x453)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   405
(let ((@x472 (asserted $x471)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   406
(let ((@x889 (unit-resolution @x472 @x1020 $x453)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   407
(let ((@x924 (unit-resolution @x155 @x889 (hypothesis $x445) (hypothesis (not x37$)) x43$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   408
(let (($x530 (or $x524 $x454)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   409
(let ((@x531 (asserted $x530)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   410
(let ((@x925 (unit-resolution @x531 @x924 (unit-resolution @x222 @x1021 @x897 @x896 x16$) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   411
(let ((@x1075 (lemma @x925 (or $x467 x10$ x37$ x17$ x50$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   412
(let ((@x831 (unit-resolution @x1075 @x830 (unit-resolution (asserted (or (not x37$) $x374)) @x738 (not x37$)) @x897 @x896 $x467)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   413
(let ((@x856 (unit-resolution @x175 @x831 @x998 (unit-resolution @x500 (unit-resolution @x193 @x1040 @x974 x14$) $x481) x39$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   414
(let ((@x715 (unit-resolution @x108 (unit-resolution @x419 @x856 $x396) (unit-resolution (asserted (or $x382 $x374)) @x738 $x382) @x1005 x38$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   415
(let (($x477 (or $x468 $x397)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   416
(let ((@x478 (asserted $x477)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   417
(let ((@x850 (unit-resolution @x222 (unit-resolution @x478 @x715 $x468) @x897 @x896 x16$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   418
(let ((@x828 (unit-resolution @x155 (unit-resolution @x480 @x715 $x453) @x830 (unit-resolution (asserted (or (not x37$) $x374)) @x738 (not x37$)) x43$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   419
(let ((@x1001 (lemma (unit-resolution @x531 @x828 @x850 false) (or $x446 x17$ x50$ x45$ x47$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   420
(let ((@x762 (unit-resolution @x1001 (unit-resolution @x557 @x893 $x538) @x896 @x1023 @x974 $x446)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   421
(let (($x528 (or $x524 $x516)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   422
(let ((@x529 (asserted $x528)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   423
(let ((@x1017 (unit-resolution @x222 (unit-resolution @x529 (unit-resolution @x202 @x762 @x841 x15$) $x524) (unit-resolution @x557 @x893 $x538) @x896 x44$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   424
(let ((@x901 (unit-resolution @x706 (unit-resolution @x395 (hypothesis x5$) $x336) x1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   425
(let ((@x823 (unit-resolution @x108 (unit-resolution @x354 @x901 $x348) @x853 (unit-resolution (asserted (or $x382 $x374)) (hypothesis x5$) $x382) x7$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   427
(let ((@x835 (unit-resolution @x175 (unit-resolution @x500 (unit-resolution @x193 @x740 @x974 x14$) $x481) (unit-resolution @x419 @x823 $x411) @x998 @x882 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   428
(let ((@x769 (lemma @x835 (or $x374 x45$ x12$ x47$ x38$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   429
(let ((@x898 (unit-resolution @x769 @x1023 (unit-resolution @x470 @x1017 $x467) @x974 (unit-resolution @x478 @x1017 $x397) $x374)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   431
(let (($x383 (not x37$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   432
(let (($x384 (or $x382 $x383)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   433
(let ((@x385 (asserted $x384)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   434
(let ((@x946 (unit-resolution @x706 (unit-resolution (asserted (or $x383 $x336)) @x735 $x336) x1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   435
(let ((@x836 (unit-resolution @x108 (unit-resolution @x354 @x946 $x348) (unit-resolution @x478 @x1017 $x397) (unit-resolution @x385 @x735 $x382) x7$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   436
(let ((@x1025 (unit-resolution @x1013 (unit-resolution @x354 @x946 $x348) @x1023 (unit-resolution @x385 @x735 $x382) (unit-resolution @x352 @x946 $x347) $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   438
(let ((@x1059 (unit-resolution (lemma @x886 (or x48$ x47$ x50$ x19$ x52$)) @x1058 @x974 @x757 @x756 x48$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   439
(let (($x591 (or $x587 $x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   440
(let ((@x592 (asserted $x591)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   441
(let (($x595 (not x21$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   442
(let (($x617 (or $x610 $x595)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   443
(let ((@x618 (asserted $x617)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   444
(let (($x596 (not x55$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   445
(let (($x302 (or x25$ x54$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   446
(let ((@x307 (asserted $x302)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   447
(let ((@x855 (unit-resolution @x307 (unit-resolution (asserted (or (not x54$) $x517)) @x1059 (not x54$)) x25$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   448
(let (($x665 (or $x657 $x596)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   449
(let ((@x666 (asserted $x665)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   450
(let (($x266 (or x21$ x55$ x20$ x49$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   451
(let ((@x269 (mp (asserted (or x21$ (or x55$ (or x20$ x49$)))) (rewrite (= (or x21$ (or x55$ (or x20$ x49$))) $x266)) $x266)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   452
(let ((@x911 (unit-resolution @x269 (unit-resolution @x666 @x855 $x596) (unit-resolution @x618 (hypothesis x56$) $x595) (unit-resolution @x592 @x1059 $x587) x49$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   453
(let (($x525 (not x49$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   454
(let (($x526 (or $x524 $x525)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   455
(let ((@x527 (asserted $x526)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   456
(let ((@x1006 (unit-resolution @x242 (unit-resolution @x557 (hypothesis x17$) $x552) @x757 @x756 x46$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   457
(let (($x503 (or $x496 $x481)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   458
(let ((@x504 (asserted $x503)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   459
(let ((@x752 (unit-resolution @x175 (unit-resolution @x504 @x1006 $x481) (unit-resolution (asserted (or $x538 $x482)) (hypothesis x17$) $x482) @x882 x39$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   460
(let (($x412 (or $x410 $x411)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   461
(let ((@x413 (asserted $x412)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   462
(let ((@x806 (unit-resolution @x193 (unit-resolution (asserted (or $x495 $x496)) @x1006 $x495) @x974 x41$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   463
(let ((@x954 (unit-resolution @x128 (unit-resolution @x440 @x806 $x424) (unit-resolution @x506 @x1006 $x425) (unit-resolution @x413 @x752 $x410) x34$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   464
(let ((@x745 (unit-resolution @x366 (unit-resolution @x77 (unit-resolution @x442 @x806 $x371) x4$) @x954 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   465
(let ((@x771 (lemma @x745 (or $x538 x12$ x47$ x19$ x52$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   466
(let ((@x928 (unit-resolution @x222 (unit-resolution @x771 @x882 @x974 @x757 @x756 $x538) (hypothesis $x524) @x896 x44$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   467
(let ((@x929 (unit-resolution @x478 @x928 $x397)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   468
(let ((@x832 (hypothesis $x454)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   469
(let ((@x859 (unit-resolution @x242 (unit-resolution (asserted (or $x495 $x496)) (hypothesis x14$) $x496) @x757 @x756 x18$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   470
(let ((@x951 (unit-resolution @x175 (unit-resolution @x559 @x859 $x482) (unit-resolution @x500 (hypothesis x14$) $x481) @x882 x39$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   471
(let ((@x833 (unit-resolution @x769 (unit-resolution @x559 @x859 $x482) @x882 @x974 @x853 $x374)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   472
(let ((@x1076 (unit-resolution @x155 (unit-resolution @x450 (unit-resolution @x725 @x833 x36$) $x445) @x832 @x815 x37$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   473
(let ((@x872 (unit-resolution @x108 (unit-resolution @x385 @x1076 $x382) (unit-resolution @x419 @x951 $x396) @x853 x32$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   474
(let ((@x962 (unit-resolution @x706 (unit-resolution (asserted (or $x383 $x336)) @x1076 $x336) x1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   475
(let ((@x861 (lemma (unit-resolution @x354 @x962 @x872 false) (or $x495 x38$ x43$ x11$ x12$ x47$ x19$ x52$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   476
(let ((@x1079 (unit-resolution @x861 @x929 @x832 (unit-resolution (asserted (or $x468 $x453)) @x928 $x453) @x882 @x974 @x757 @x756 $x495)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   477
(let ((@x709 (unit-resolution @x77 (unit-resolution @x442 (unit-resolution @x193 @x1079 @x974 x41$) $x371) x4$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   479
(let ((@x754 (unit-resolution @x242 (unit-resolution @x506 @x939 $x496) @x757 @x756 x18$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   480
(let ((@x904 (unit-resolution @x175 (unit-resolution @x559 @x754 $x482) (unit-resolution @x508 @x939 $x481) @x882 x39$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   481
(let ((@x877 (unit-resolution @x67 (unit-resolution @x421 @x904 $x356) (unit-resolution @x368 @x709 $x355) x2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   482
(let ((@x927 (unit-resolution @x769 (unit-resolution @x559 @x754 $x482) @x882 @x974 @x929 $x374)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   484
(let ((@x812 (unit-resolution @x108 (unit-resolution @x385 @x880 $x382) (unit-resolution @x350 @x877 $x348) (unit-resolution @x419 @x904 $x396) @x929 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   486
(let ((@x817 (unit-resolution @x222 (unit-resolution @x470 @x713 $x468) (unit-resolution @x527 @x911 $x524) @x1058 x17$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   487
(let ((@x903 (unit-resolution @x242 (unit-resolution @x557 @x817 $x552) @x757 @x756 x46$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   488
(let (($x497 (or $x495 $x496)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   489
(let ((@x498 (asserted $x497)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   490
(let ((@x748 (unit-resolution @x442 (unit-resolution @x193 (unit-resolution @x498 @x903 $x495) @x974 x41$) $x371)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   491
(let ((@x1027 (unit-resolution @x440 (unit-resolution @x193 (unit-resolution @x498 @x903 $x495) @x974 x41$) $x424)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   492
(let ((@x890 (unit-resolution @x128 (unit-resolution @x366 (unit-resolution @x77 @x748 x4$) $x364) (unit-resolution @x506 @x903 $x425) @x1027 x8$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   493
(let ((@x891 (unit-resolution @x1011 @x890 (unit-resolution @x368 (unit-resolution @x77 @x748 x4$) $x355) (unit-resolution @x474 @x713 $x397) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   494
(let ((@x1118 (unit-resolution (lemma @x891 (or $x610 x47$ x19$ x52$)) @x974 @x757 @x756 $x610)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   495
(let ((@x802 (hypothesis $x623)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   496
(let ((@x914 (hypothesis $x610)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   497
(let (($x392 (or $x383 $x336)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   498
(let ((@x393 (asserted $x392)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   499
(let ((@x969 (unit-resolution @x393 (hypothesis x31$) $x383)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   500
(let ((@x1047 (unit-resolution @x725 (unit-resolution @x395 (hypothesis x31$) $x374) x36$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   501
(let ((@x966 (unit-resolution @x450 @x1047 $x445)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   502
(let (($x615 (or $x609 $x539)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   503
(let ((@x616 (asserted $x615)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   504
(let ((@x730 (unit-resolution @x616 (unit-resolution @x1075 @x966 @x1020 @x897 @x969 x50$) $x609)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   505
(let (($x286 (or x23$ x57$ x22$ x51$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   506
(let ((@x289 (mp (asserted (or x23$ (or x57$ (or x22$ x51$)))) (rewrite (= (or x23$ (or x57$ (or x22$ x51$))) $x286)) $x286)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   507
(let (($x624 (not x57$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   508
(let (($x679 (or $x667 $x624)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   509
(let ((@x680 (asserted $x679)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   510
(let ((@x948 (unit-resolution @x680 (unit-resolution @x289 @x730 @x802 (hypothesis $x553) x57$) $x667)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   511
(let (($x322 (or x27$ x26$ x56$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   512
(let ((@x325 (mp (asserted (or x27$ (or x26$ x56$))) (rewrite (= (or x27$ (or x26$ x56$)) $x322)) $x322)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   513
(let (($x588 (not x54$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   514
(let ((@x798 (unit-resolution @x537 (unit-resolution @x155 @x966 @x889 @x969 x43$) $x516)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   515
(let ((@x799 (unit-resolution @x202 @x798 (unit-resolution (asserted (or $x446 $x375)) @x1047 $x446) x48$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   516
(let (($x593 (or $x588 $x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   517
(let ((@x594 (asserted $x593)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   518
(let (($x660 (not x26$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   519
(let (($x661 (or $x660 $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   520
(let ((@x662 (asserted $x661)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   521
(let ((@x1094 (unit-resolution @x662 (unit-resolution @x307 (unit-resolution @x594 @x799 $x588) x25$) (unit-resolution @x325 @x948 @x914 x26$) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   522
(let ((@x1096 (lemma @x1094 (or $x336 x56$ x23$ x51$ $x467 x17$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   523
(let ((@x1099 (unit-resolution @x1096 (unit-resolution (asserted (or $x552 $x553)) @x859 $x553) @x802 @x914 @x1020 (unit-resolution @x557 @x859 $x538) $x336)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   524
(let ((@x804 (unit-resolution @x725 (unit-resolution (asserted (or $x382 $x374)) (hypothesis x6$) $x374) x36$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   525
(let ((@x1008 (unit-resolution @x1075 (unit-resolution @x450 @x804 $x445) @x1020 @x897 (unit-resolution @x385 (hypothesis x6$) $x383) x50$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   526
(let ((@x874 (unit-resolution @x289 (unit-resolution @x616 @x1008 $x609) @x802 (hypothesis $x553) x57$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   527
(let ((@x766 (unit-resolution @x155 (unit-resolution @x450 @x804 $x445) @x889 (unit-resolution @x385 (hypothesis x6$) $x383) x43$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   528
(let ((@x818 (unit-resolution @x202 (unit-resolution @x537 @x766 $x516) (unit-resolution (asserted (or $x446 $x375)) @x804 $x446) x48$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   530
(let ((@x737 (lemma @x783 (or $x382 x56$ x23$ x51$ $x467 x17$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   531
(let ((@x1102 (unit-resolution @x737 (unit-resolution (asserted (or $x552 $x553)) @x859 $x553) @x802 @x914 @x1020 (unit-resolution @x557 @x859 $x538) $x382)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   532
(let ((@x1104 (unit-resolution @x108 (unit-resolution @x354 (unit-resolution @x706 @x1099 x1$) $x348) @x1102 @x853 x7$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   533
(let (($x422 (or $x396 $x356)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   534
(let ((@x423 (asserted $x422)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   535
(let ((@x1106 (unit-resolution @x67 (unit-resolution @x423 @x1104 $x356) (unit-resolution @x352 (unit-resolution @x706 @x1099 x1$) $x347) x3$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   537
(let ((@x1113 (unit-resolution @x444 @x1112 (unit-resolution @x77 (unit-resolution @x368 @x1106 $x363) x35$) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   538
(let ((@x1119 (unit-resolution (lemma @x1113 (or $x495 x38$ x23$ x56$ $x467 x19$ x52$)) @x853 @x802 @x1118 @x1116 @x757 @x756 $x495)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   539
(let ((@x1120 (unit-resolution @x193 @x1119 @x974 x41$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   540
(let ((@x1123 (unit-resolution @x366 (unit-resolution @x77 (unit-resolution @x442 @x1120 $x371) x4$) $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   541
(let ((@x1125 (unit-resolution @x368 (unit-resolution @x77 (unit-resolution @x442 @x1120 $x371) x4$) $x355)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   542
(let ((@x1127 (unit-resolution @x128 (unit-resolution @x1011 @x1125 @x853 $x410) (unit-resolution @x440 @x1120 $x424) @x1123 x40$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   543
(let ((@x1129 (unit-resolution @x242 (unit-resolution @x506 @x1127 $x496) @x757 @x756 x18$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   544
(let ((@x1132 (unit-resolution @x737 (unit-resolution (asserted (or $x552 $x553)) @x1129 $x553) @x802 @x1118 @x1116 (unit-resolution @x557 @x1129 $x538) $x382)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   545
(let ((@x1133 (unit-resolution @x1096 (unit-resolution (asserted (or $x552 $x553)) @x1129 $x553) @x802 @x1118 @x1116 (unit-resolution @x557 @x1129 $x538) $x336)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   547
(let ((@x1185 (unit-resolution (lemma @x1137 (or x38$ x23$ x19$ x52$ x47$)) (unit-resolution @x646 (hypothesis x58$) $x623) @x1182 @x756 @x1183 x38$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   548
(let ((@x1188 (unit-resolution @x474 @x1185 $x467)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   549
(let ((@x1140 (unit-resolution @x155 @x966 @x815 @x969 x43$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   550
(let (($x534 (or $x525 $x454)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   551
(let ((@x535 (asserted $x534)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   552
(let ((@x1142 (hypothesis $x468)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   553
(let ((@x1144 (unit-resolution @x222 (unit-resolution @x531 @x1140 $x524) @x897 @x1142 x50$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   554
(let (($x621 (or $x595 $x539)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   555
(let ((@x622 (asserted $x621)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   556
(let ((@x1147 (unit-resolution @x202 (unit-resolution @x537 @x1140 $x516) (unit-resolution (asserted (or $x446 $x375)) @x1047 $x446) x48$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   557
(let ((@x1149 (unit-resolution @x269 (unit-resolution @x592 @x1147 $x587) (unit-resolution @x622 @x1144 $x595) (unit-resolution @x535 @x1140 $x525) x55$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   558
(let ((@x1152 (unit-resolution @x666 (unit-resolution @x307 (unit-resolution @x594 @x1147 $x588) x25$) @x1149 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   559
(let ((@x1154 (lemma @x1152 (or $x336 x17$ x44$ x11$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   561
(let ((@x1156 (unit-resolution @x559 (unit-resolution @x1013 @x728 @x1030 @x1031 @x845 x45$) $x552)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   562
(let ((@x1159 (unit-resolution @x506 (unit-resolution @x128 @x999 @x913 @x922 x40$) (unit-resolution @x242 @x1156 @x757 @x756 x46$) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   563
(let ((@x1163 (unit-resolution (lemma @x1159 (or $x438 x8$ x19$ x52$ x32$ x6$ x2$)) @x913 @x757 @x756 @x1030 @x1031 @x845 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   564
(let ((@x1166 (unit-resolution @x242 (unit-resolution @x498 (unit-resolution @x193 @x1163 @x974 x14$) $x496) @x757 @x756 x18$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   565
(let ((@x1168 (unit-resolution @x175 (unit-resolution @x559 @x1166 $x482) @x882 (unit-resolution @x1090 @x913 @x974 $x481) x39$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   566
(let ((@x1171 (unit-resolution @x368 (unit-resolution @x67 (unit-resolution @x421 @x1168 $x356) @x845 x3$) $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   567
(let (($x501 (or $x495 $x425)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   568
(let ((@x502 (asserted $x501)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   569
(let ((@x1174 (unit-resolution @x370 (unit-resolution @x67 (unit-resolution @x421 @x1168 $x356) @x845 x3$) $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   570
(let ((@x1175 (unit-resolution @x128 @x1174 @x913 (unit-resolution @x502 (unit-resolution @x193 @x1163 @x974 x14$) $x425) x9$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   571
(let ((@x1178 (lemma (unit-resolution @x444 @x1175 (unit-resolution @x77 @x1171 x35$) false) (or x8$ x2$ x12$ x19$ x52$ x47$ x32$ x6$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   573
(let ((@x1197 (unit-resolution @x67 (unit-resolution @x417 @x1195 $x356) (unit-resolution @x352 (unit-resolution @x706 @x1190 x1$) $x347) x3$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   574
(let ((@x1200 (unit-resolution @x442 (unit-resolution @x77 (unit-resolution @x368 @x1197 $x363) x35$) $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   575
(let ((@x1203 (unit-resolution @x242 (unit-resolution @x498 (unit-resolution @x193 @x1200 @x1183 x14$) $x496) @x1182 @x756 x18$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   576
(let ((@x1206 (unit-resolution @x175 (unit-resolution @x500 (unit-resolution @x193 @x1200 @x1183 x14$) $x481) @x1188 (unit-resolution @x413 @x1195 $x411) x45$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   577
(let ((@x1215 (unit-resolution (lemma (unit-resolution @x559 @x1206 @x1203 false) (or $x638 x52$)) @x756 $x638)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   578
(let (($x328 (or x28$ x58$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   579
(let ((@x792 (monotonicity (iff-false (asserted (not x29$)) (= x29$ false)) (= (or x29$ x28$ x58$) (or false x28$ x58$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   580
(let ((@x796 (trans @x792 (rewrite (= (or false x28$ x58$) $x328)) (= (or x29$ x28$ x58$) $x328))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   581
(let (($x337 (or x29$ x28$ x58$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   582
(let ((@x340 (mp (asserted (or x29$ $x328)) (rewrite (= (or x29$ $x328) $x337)) $x337)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   583
(let ((@x797 (mp @x340 @x796 $x328)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   584
(let (($x674 (not x28$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   585
(let (($x675 (or $x674 $x667)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   586
(let ((@x676 (asserted $x675)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   587
(let ((@x1224 (unit-resolution @x676 (unit-resolution @x797 @x1215 x28$) $x667)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   588
(let ((@x1285 (hypothesis $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   589
(let ((@x708 (hypothesis $x411)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   590
(let ((@x1210 (hypothesis $x496)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   591
(let ((@x1213 (unit-resolution @x242 (unit-resolution (asserted (or $x566 $x509)) (hypothesis x47$) $x566) @x1210 @x756 x18$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   592
(let (($x554 (or $x552 $x553)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   593
(let ((@x555 (asserted $x554)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   594
(let (($x677 (or $x674 $x624)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   595
(let ((@x678 (asserted $x677)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   596
(let ((@x1217 (unit-resolution @x678 (unit-resolution @x797 @x1215 x28$) $x624)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   597
(let ((@x1219 (unit-resolution @x779 (unit-resolution @x584 (hypothesis x47$) $x580) x24$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   598
(let (($x641 (or $x637 $x623)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   599
(let ((@x642 (asserted $x641)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   600
(let ((@x1221 (unit-resolution @x289 (unit-resolution @x642 @x1219 $x623) @x1217 (unit-resolution @x555 @x1213 $x553) x22$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   601
(let ((@x1226 (unit-resolution @x325 (unit-resolution (asserted (or $x609 $x610)) @x1221 $x610) @x1224 x26$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   602
(let (($x663 (or $x660 $x596)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   603
(let ((@x664 (asserted $x663)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   604
(let (($x589 (or $x587 $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   605
(let ((@x590 (asserted $x589)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   606
(let ((@x1231 (unit-resolution @x590 (unit-resolution @x307 (unit-resolution @x662 @x1226 $x657) x54$) $x587)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   607
(let ((@x1232 (unit-resolution @x269 @x1231 (unit-resolution (asserted (or $x609 $x595)) @x1221 $x595) (unit-resolution @x664 @x1226 $x596) x49$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   608
(let ((@x1234 (unit-resolution @x222 (unit-resolution @x527 @x1232 $x524) (unit-resolution @x557 @x1213 $x538) (unit-resolution @x616 @x1221 $x539) x44$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   609
(let (($x475 (or $x468 $x453)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   610
(let ((@x476 (asserted $x475)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   611
(let ((@x1237 (unit-resolution @x594 (unit-resolution @x307 (unit-resolution @x662 @x1226 $x657) x54$) $x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   612
(let ((@x1239 (unit-resolution @x202 (unit-resolution (asserted (or $x525 $x516)) @x1232 $x516) @x1237 x42$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   613
(let ((@x1241 (unit-resolution @x155 (unit-resolution @x448 @x1239 $x445) (unit-resolution @x535 @x1232 $x454) (unit-resolution @x476 @x1234 $x453) x37$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   614
(let ((@x1243 (unit-resolution @x725 (unit-resolution (asserted (or $x446 $x375)) @x1239 $x375) x5$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   615
(let (($x390 (or $x383 $x374)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   616
(let ((@x391 (asserted $x390)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   617
(let ((@x1246 (lemma (unit-resolution @x391 @x1243 @x1241 false) (or $x509 x46$ x52$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   618
(let ((@x1247 (unit-resolution @x1246 @x1210 @x756 $x509)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   619
(let ((@x1249 (unit-resolution @x175 (unit-resolution @x1090 @x1247 @x913 $x481) @x882 @x708 x45$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   620
(let (($x562 (or $x553 $x482)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   621
(let ((@x563 (asserted $x562)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   622
(let ((@x1252 (unit-resolution @x242 (unit-resolution @x559 @x1249 $x552) @x1210 @x756 x19$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   623
(let ((@x1255 (unit-resolution @x642 (unit-resolution @x779 (unit-resolution @x582 @x1252 $x580) x24$) $x623)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   624
(let ((@x1256 (unit-resolution @x289 @x1255 @x1217 (unit-resolution @x563 @x1249 $x553) x22$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   625
(let ((@x1260 (unit-resolution @x325 (unit-resolution (asserted (or $x609 $x610)) @x1256 $x610) @x1224 x26$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   626
(let ((@x1265 (unit-resolution @x590 (unit-resolution @x307 (unit-resolution @x662 @x1260 $x657) x54$) $x587)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   627
(let ((@x1266 (unit-resolution @x269 @x1265 (unit-resolution (asserted (or $x609 $x595)) @x1256 $x595) (unit-resolution @x664 @x1260 $x596) x49$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   629
(let ((@x1271 (unit-resolution @x594 (unit-resolution @x307 (unit-resolution @x662 @x1260 $x657) x54$) $x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   630
(let ((@x1273 (unit-resolution @x202 (unit-resolution (asserted (or $x525 $x516)) @x1266 $x516) @x1271 x42$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   631
(let ((@x1275 (unit-resolution @x155 (unit-resolution @x448 @x1273 $x445) (unit-resolution @x535 @x1266 $x454) (unit-resolution @x476 @x1268 $x453) x37$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   632
(let ((@x1277 (unit-resolution @x725 (unit-resolution (asserted (or $x446 $x375)) @x1273 $x375) x5$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   633
(let ((@x1280 (lemma (unit-resolution @x391 @x1277 @x1275 false) (or x46$ x52$ x12$ x39$ x8$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   634
(let ((@x1282 (unit-resolution @x504 (unit-resolution @x1280 @x708 @x882 @x756 @x913 x46$) $x481)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   635
(let ((@x1284 (unit-resolution @x563 (unit-resolution @x175 @x1282 @x882 @x708 x45$) $x553)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   636
(let ((@x1286 (unit-resolution @x498 (unit-resolution @x1280 @x708 @x882 @x756 @x913 x46$) $x495)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   637
(let ((@x1289 (unit-resolution @x779 (unit-resolution @x584 (unit-resolution @x193 @x1286 @x1285 x47$) $x580) x24$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   638
(let ((@x1291 (unit-resolution @x289 (unit-resolution @x642 @x1289 $x623) @x1217 @x1284 x22$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   639
(let (($x564 (or $x538 $x482)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   640
(let ((@x565 (asserted $x564)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   641
(let ((@x1293 (unit-resolution @x565 (unit-resolution @x175 @x1282 @x882 @x708 x45$) $x538)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   642
(let ((@x1295 (unit-resolution @x325 (unit-resolution (asserted (or $x609 $x610)) @x1291 $x610) @x1224 x26$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   643
(let ((@x1300 (unit-resolution @x590 (unit-resolution @x307 (unit-resolution @x662 @x1295 $x657) x54$) $x587)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   644
(let ((@x1301 (unit-resolution @x269 @x1300 (unit-resolution (asserted (or $x609 $x595)) @x1291 $x595) (unit-resolution @x664 @x1295 $x596) x49$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   645
(let ((@x1303 (unit-resolution @x222 (unit-resolution @x527 @x1301 $x524) @x1293 (unit-resolution @x616 @x1291 $x539) x44$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   646
(let ((@x1306 (unit-resolution @x594 (unit-resolution @x307 (unit-resolution @x662 @x1295 $x657) x54$) $x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   647
(let ((@x1308 (unit-resolution @x202 (unit-resolution (asserted (or $x525 $x516)) @x1301 $x516) @x1306 x42$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   648
(let ((@x1310 (unit-resolution @x155 (unit-resolution @x448 @x1308 $x445) (unit-resolution @x535 @x1301 $x454) (unit-resolution @x476 @x1303 $x453) x37$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   649
(let ((@x1312 (unit-resolution @x725 (unit-resolution (asserted (or $x446 $x375)) @x1308 $x375) x5$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   650
(let ((@x1315 (lemma (unit-resolution @x391 @x1312 @x1310 false) (or x39$ x12$ x41$ x52$ x8$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   651
(let ((@x1317 (unit-resolution @x421 (unit-resolution @x1315 @x1285 @x882 @x756 @x913 x39$) $x356)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   652
(let ((@x1321 (unit-resolution @x77 (unit-resolution @x368 (unit-resolution @x67 @x1317 @x845 x3$) $x363) x35$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   653
(let ((@x1323 (unit-resolution @x128 (unit-resolution @x444 @x1321 $x424) @x913 (unit-resolution @x370 (unit-resolution @x67 @x1317 @x845 x3$) $x364) x40$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   654
(let ((@x1327 (unit-resolution @x1246 (unit-resolution @x193 (unit-resolution @x502 @x1323 $x495) @x1285 x47$) (unit-resolution @x506 @x1323 $x496) @x756 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   655
(let ((@x1330 (unit-resolution (lemma @x1327 (or x41$ x52$ x8$ x2$ x12$)) @x845 @x913 @x756 @x882 x41$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   656
(let ((@x1334 (unit-resolution @x366 (unit-resolution @x77 (unit-resolution @x442 @x1330 $x371) x4$) $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   657
(let ((@x1335 (unit-resolution @x128 @x1334 @x913 (unit-resolution @x440 @x1330 $x424) x40$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   658
(let ((@x1337 (unit-resolution @x368 (unit-resolution @x77 (unit-resolution @x442 @x1330 $x371) x4$) $x355)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   660
(let ((@x1343 (unit-resolution (lemma @x1340 (or x2$ x12$ x52$ x8$)) @x913 @x756 @x882 x2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   661
(let ((@x1345 (unit-resolution @x706 (unit-resolution @x352 @x1343 $x335) x31$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   662
(let (($x451 (or $x446 $x375)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   663
(let ((@x452 (asserted $x451)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   664
(let ((@x1348 (unit-resolution @x452 (unit-resolution @x725 (unit-resolution @x395 @x1345 $x374) x36$) $x446)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   665
(let ((@x1349 (unit-resolution @x450 (unit-resolution @x725 (unit-resolution @x395 @x1345 $x374) x36$) $x445)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   666
(let ((@x1354 (unit-resolution @x419 (unit-resolution @x1280 @x1210 @x882 @x756 @x913 x39$) $x396)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   667
(let ((@x1355 (unit-resolution @x108 @x1354 (unit-resolution @x350 @x1343 $x348) (unit-resolution @x389 @x1345 $x382) x38$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   668
(let ((@x1357 (unit-resolution @x155 (unit-resolution @x480 @x1355 $x453) (unit-resolution @x393 @x1345 $x383) @x1349 x43$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   669
(let ((@x1360 (unit-resolution @x594 (unit-resolution @x202 (unit-resolution @x537 @x1357 $x516) @x1348 x48$) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   670
(let ((@x1364 (unit-resolution @x1154 (unit-resolution @x478 @x1355 $x468) @x1345 (unit-resolution @x480 @x1355 $x453) x17$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   671
(let (($x560 (or $x553 $x538)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   672
(let ((@x561 (asserted $x560)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   673
(let ((@x1367 (unit-resolution @x582 (unit-resolution @x771 @x1364 @x882 @x1247 @x756 x19$) $x580)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   674
(let ((@x1370 (unit-resolution @x289 (unit-resolution @x642 (unit-resolution @x779 @x1367 x24$) $x623) @x1217 (unit-resolution @x561 @x1364 $x553) x22$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   675
(let (($x611 (or $x609 $x610)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   676
(let ((@x612 (asserted $x611)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   677
(let ((@x1372 (unit-resolution @x325 (unit-resolution @x612 @x1370 $x610) (unit-resolution @x662 (unit-resolution @x307 @x1360 x25$) $x660) @x1224 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   678
(let ((@x1384 (unit-resolution (lemma @x1372 (or x46$ x12$ x52$ x8$)) @x913 @x756 @x882 x46$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   679
(let ((@x1376 (unit-resolution (lemma @x891 (or $x610 x47$ x19$ x52$)) @x974 (unit-resolution (asserted (or $x566 $x496)) (hypothesis x46$) $x566) @x756 $x610)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   680
(let ((@x1379 (unit-resolution @x594 (unit-resolution @x844 @x974 (hypothesis x46$) x48$) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   681
(let ((@x1381 (unit-resolution @x662 (unit-resolution @x307 @x1379 x25$) (unit-resolution @x325 @x1376 @x1224 x26$) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   682
(let ((@x1383 (lemma @x1381 (or x47$ x52$ $x496))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   683
(let (($x512 (or $x509 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   684
(let ((@x513 (asserted $x512)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   685
(let ((@x1387 (unit-resolution @x1315 (unit-resolution @x513 (unit-resolution @x1383 @x1384 @x756 x47$) $x438) @x882 @x756 @x913 x39$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   686
(let ((@x1389 (unit-resolution @x108 (unit-resolution @x419 @x1387 $x396) (unit-resolution @x350 @x1343 $x348) (unit-resolution @x389 @x1345 $x382) x38$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   687
(let ((@x1391 (unit-resolution @x155 (unit-resolution @x480 @x1389 $x453) (unit-resolution @x393 @x1345 $x383) @x1349 x43$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   688
(let ((@x1394 (unit-resolution @x594 (unit-resolution @x202 (unit-resolution @x537 @x1391 $x516) @x1348 x48$) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   689
(let ((@x1397 (unit-resolution @x779 (unit-resolution @x584 (unit-resolution @x1383 @x1384 @x756 x47$) $x580) x24$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   690
(let ((@x1400 (unit-resolution @x1154 (unit-resolution @x480 @x1389 $x453) @x1345 (unit-resolution @x478 @x1389 $x468) x17$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   691
(let ((@x1402 (unit-resolution @x289 (unit-resolution @x561 @x1400 $x553) @x1217 (unit-resolution @x642 @x1397 $x623) x22$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   692
(let ((@x1405 (unit-resolution @x662 (unit-resolution @x325 (unit-resolution @x612 @x1402 $x610) @x1224 x26$) (unit-resolution @x307 @x1394 x25$) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   693
(let ((@x1440 (unit-resolution (lemma @x1405 (or x8$ x12$ x52$)) @x882 @x756 x8$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   694
(let ((@x1411 (unit-resolution @x242 (unit-resolution @x559 (hypothesis x45$) $x552) @x1210 @x756 x19$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   695
(let ((@x1414 (unit-resolution @x642 (unit-resolution @x779 (unit-resolution @x582 @x1411 $x580) x24$) $x623)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   696
(let ((@x1415 (unit-resolution @x289 @x1414 @x1217 (unit-resolution @x563 (hypothesis x45$) $x553) x22$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   697
(let ((@x1418 (unit-resolution @x662 (unit-resolution @x325 (unit-resolution @x612 @x1415 $x610) @x1224 x26$) $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   698
(let ((@x1421 (unit-resolution @x664 (unit-resolution @x325 (unit-resolution @x612 @x1415 $x610) @x1224 x26$) $x596)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   700
(let (($x532 (or $x525 $x516)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   701
(let ((@x533 (asserted $x532)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   702
(let ((@x1426 (unit-resolution @x202 (unit-resolution @x533 @x1424 $x516) (unit-resolution @x594 (unit-resolution @x307 @x1418 x54$) $x517) x42$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   703
(let ((@x1432 (unit-resolution @x222 (unit-resolution @x527 @x1424 $x524) (unit-resolution @x565 (hypothesis x45$) $x538) (unit-resolution @x616 @x1415 $x539) x44$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   704
(let ((@x1434 (unit-resolution @x155 (unit-resolution @x476 @x1432 $x453) (unit-resolution @x535 @x1424 $x454) (unit-resolution @x448 @x1426 $x445) x37$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   705
(let ((@x1437 (unit-resolution @x391 (unit-resolution @x725 (unit-resolution @x452 @x1426 $x375) x5$) @x1434 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   706
(let ((@x1444 (unit-resolution @x175 (unit-resolution (lemma @x1437 (or $x482 x46$ x52$)) @x1210 @x756 $x482) @x882 (unit-resolution @x413 @x1440 $x411) x13$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   707
(let ((@x1447 (unit-resolution @x442 (unit-resolution @x193 (unit-resolution @x500 @x1444 $x495) @x1247 x41$) $x371)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   708
(let ((@x1450 (unit-resolution @x67 (unit-resolution @x368 (unit-resolution @x77 @x1447 x4$) $x355) (unit-resolution @x417 @x1440 $x356) x2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   709
(let ((@x1452 (unit-resolution @x706 (unit-resolution @x352 @x1450 $x335) x31$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   710
(let ((@x1455 (unit-resolution @x452 (unit-resolution @x725 (unit-resolution @x395 @x1452 $x374) x36$) $x446)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   711
(let ((@x1457 (unit-resolution @x1011 (unit-resolution @x368 (unit-resolution @x77 @x1447 x4$) $x355) @x1440 x38$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   712
(let ((@x1459 (unit-resolution @x450 (unit-resolution @x725 (unit-resolution @x395 @x1452 $x374) x36$) $x445)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   713
(let ((@x1460 (unit-resolution @x155 @x1459 (unit-resolution @x480 @x1457 $x453) (unit-resolution @x393 @x1452 $x383) x43$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   714
(let ((@x1463 (unit-resolution @x594 (unit-resolution @x202 (unit-resolution @x537 @x1460 $x516) @x1455 x48$) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   715
(let ((@x1466 (unit-resolution @x1154 @x1452 (unit-resolution @x478 @x1457 $x468) (unit-resolution @x480 @x1457 $x453) x17$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   716
(let ((@x1469 (unit-resolution @x582 (unit-resolution @x771 @x1466 @x882 @x1247 @x756 x19$) $x580)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   717
(let ((@x1472 (unit-resolution @x289 (unit-resolution @x642 (unit-resolution @x779 @x1469 x24$) $x623) @x1217 (unit-resolution @x561 @x1466 $x553) x22$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   718
(let ((@x1475 (unit-resolution @x662 (unit-resolution @x325 (unit-resolution @x612 @x1472 $x610) @x1224 x26$) (unit-resolution @x307 @x1463 x25$) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   719
(let ((@x1478 (unit-resolution (lemma @x1475 (or x46$ x12$ x52$)) @x882 @x756 x46$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   720
(let ((@x1480 (unit-resolution @x175 (unit-resolution @x504 @x1478 $x481) @x882 (unit-resolution @x413 @x1440 $x411) x45$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   721
(let ((@x1484 (unit-resolution @x779 (unit-resolution @x584 (unit-resolution @x1383 @x1478 @x756 x47$) $x580) x24$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   722
(let ((@x1486 (unit-resolution @x289 (unit-resolution @x642 @x1484 $x623) @x1217 (unit-resolution @x563 @x1480 $x553) x22$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   723
(let ((@x1491 (unit-resolution @x664 (unit-resolution @x325 (unit-resolution @x612 @x1486 $x610) @x1224 x26$) $x596)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   724
(let ((@x1493 (unit-resolution @x662 (unit-resolution @x325 (unit-resolution @x612 @x1486 $x610) @x1224 x26$) $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   726
(let ((@x1498 (unit-resolution @x222 (unit-resolution @x527 @x1496 $x524) (unit-resolution @x565 @x1480 $x538) (unit-resolution @x616 @x1486 $x539) x44$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   727
(let ((@x1503 (unit-resolution @x202 (unit-resolution @x533 @x1496 $x516) (unit-resolution @x594 (unit-resolution @x307 @x1493 x54$) $x517) x42$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   728
(let ((@x1505 (unit-resolution @x155 (unit-resolution @x448 @x1503 $x445) (unit-resolution @x535 @x1496 $x454) (unit-resolution @x476 @x1498 $x453) x37$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   729
(let ((@x1508 (unit-resolution @x391 (unit-resolution @x725 (unit-resolution @x452 @x1503 $x375) x5$) @x1505 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   730
(let ((@x1576 (unit-resolution @x472 (unit-resolution (lemma @x1508 (or x12$ x52$)) @x756 x12$) $x453)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   731
(let ((@x1547 (hypothesis $x667)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   732
(let ((@x1557 (unit-resolution @x325 (unit-resolution @x612 (hypothesis x22$) $x610) @x1547 x26$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   733
(let ((@x1561 (unit-resolution @x590 (unit-resolution @x307 (unit-resolution @x662 @x1557 $x657) x54$) $x587)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   734
(let ((@x1562 (unit-resolution @x269 @x1561 (unit-resolution @x664 @x1557 $x596) (unit-resolution (asserted (or $x609 $x595)) (hypothesis x22$) $x595) x49$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   735
(let ((@x1564 (unit-resolution @x594 (unit-resolution @x307 (unit-resolution @x662 @x1557 $x657) x54$) $x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   736
(let ((@x1512 (unit-resolution @x391 @x738 (unit-resolution @x155 @x830 @x832 @x815 x37$) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   737
(let ((@x1514 (lemma @x1512 (or $x446 x43$ x11$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   738
(let ((@x1567 (unit-resolution @x1514 (unit-resolution @x202 (unit-resolution @x533 @x1562 $x516) @x1564 x42$) (unit-resolution @x535 @x1562 $x454) @x815 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   739
(let ((@x1569 (lemma @x1567 (or $x609 x11$ x27$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   740
(let ((@x1584 (hypothesis $x446)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   741
(let ((@x1587 (unit-resolution @x307 (unit-resolution @x662 (hypothesis x26$) $x657) x54$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   742
(let ((@x1590 (unit-resolution @x529 (unit-resolution @x202 (unit-resolution @x594 @x1587 $x517) @x1584 x15$) $x524)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   743
(let ((@x1594 (unit-resolution @x533 (unit-resolution @x202 (unit-resolution @x594 @x1587 $x517) @x1584 x15$) $x525)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   744
(let ((@x1595 (unit-resolution @x269 @x1594 (unit-resolution @x664 (hypothesis x26$) $x596) (unit-resolution @x590 @x1587 $x587) x21$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   745
(let ((@x1596 (unit-resolution @x622 @x1595 (unit-resolution @x222 @x1590 @x1142 @x897 x50$) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   746
(let ((@x1599 (unit-resolution (lemma @x1596 (or $x660 x44$ x17$ x42$)) @x1584 @x897 @x1142 $x660)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   747
(let ((@x1602 (unit-resolution @x222 (unit-resolution @x620 (unit-resolution @x325 @x1599 @x1547 x56$) $x539) @x1142 @x897 x16$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   748
(let ((@x1607 (unit-resolution @x592 (unit-resolution @x202 (unit-resolution @x529 @x1602 $x516) @x1584 x48$) $x587)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   749
(let ((@x1608 (unit-resolution @x269 @x1607 (unit-resolution @x618 (unit-resolution @x325 @x1599 @x1547 x56$) $x595) (unit-resolution @x527 @x1602 $x525) x55$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   750
(let ((@x1609 (unit-resolution @x594 (unit-resolution @x202 (unit-resolution @x529 @x1602 $x516) @x1584 x48$) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   751
(let ((@x1613 (lemma (unit-resolution @x666 (unit-resolution @x307 @x1609 x25$) @x1608 false) (or x42$ x44$ x17$ x27$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   752
(let ((@x1615 (unit-resolution @x448 (unit-resolution @x1613 @x897 @x1021 @x1547 x42$) $x445)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   753
(let ((@x1616 (unit-resolution @x1514 (unit-resolution @x1613 @x897 @x1021 @x1547 x42$) @x889 x43$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   754
(let (($x463 (or $x454 $x383)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   755
(let ((@x464 (asserted $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   756
(let ((@x1618 (unit-resolution @x1075 (unit-resolution @x464 @x1616 $x383) @x1020 @x897 @x1615 x50$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   757
(let ((@x1621 (unit-resolution @x662 (unit-resolution @x325 (unit-resolution @x620 @x1618 $x610) @x1547 x26$) $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   758
(let ((@x1625 (unit-resolution @x664 (unit-resolution @x325 (unit-resolution @x620 @x1618 $x610) @x1547 x26$) $x596)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   759
(let ((@x1626 (unit-resolution @x269 @x1625 (unit-resolution @x622 @x1618 $x595) (unit-resolution @x535 @x1616 $x525) x20$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   760
(let ((@x1629 (lemma (unit-resolution @x590 @x1626 (unit-resolution @x307 @x1621 x54$) false) (or x17$ x27$ $x467))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   761
(let ((@x1630 (unit-resolution @x1629 @x1224 (unit-resolution (lemma @x1508 (or x12$ x52$)) @x756 x12$) x17$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   762
(let ((@x1632 (unit-resolution @x289 (unit-resolution @x561 @x1630 $x553) @x1217 (unit-resolution @x1569 @x1576 @x1224 $x609) x23$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   763
(let ((@x1635 (unit-resolution @x584 (unit-resolution @x779 (unit-resolution @x642 @x1632 $x637) x53$) $x509)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   764
(let ((@x1637 (unit-resolution @x582 (unit-resolution @x779 (unit-resolution @x642 @x1632 $x637) x53$) $x566)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   765
(let ((@x1638 (unit-resolution @x242 @x1637 (unit-resolution @x557 @x1630 $x552) @x756 x46$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   766
(let ((@x1640 (lemma (unit-resolution @x1383 @x1638 @x1635 @x756 false) x52$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   767
(let (($x647 (or $x638 $x567)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   768
(let ((@x648 (asserted $x647)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   769
(let ((@x1665 (unit-resolution @x676 (unit-resolution @x797 (unit-resolution @x648 @x1640 $x638) x28$) $x667)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   770
(let ((@x1668 (unit-resolution (unit-resolution @x1569 @x1665 (or $x609 x11$)) @x815 $x609)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   771
(let ((@x1669 (unit-resolution @x678 (unit-resolution @x797 (unit-resolution @x648 @x1640 $x638) x28$) $x624)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   772
(let ((@x1671 (unit-resolution @x289 (unit-resolution (asserted (or $x623 $x567)) @x1640 $x623) @x1669 (or x22$ x51$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   773
(let ((@x1673 (unit-resolution @x563 (unit-resolution @x1671 @x1668 x51$) $x482)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   774
(let ((@x1676 (unit-resolution (unit-resolution @x1629 @x1665 (or x17$ $x467)) @x897 $x467)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   775
(let ((@x1650 (unit-resolution @x77 (unit-resolution @x368 (hypothesis x3$) $x363) x35$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   776
(let ((@x1579 (unit-resolution @x779 (unit-resolution (asserted (or $x637 $x567)) @x1640 $x637) x53$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   777
(let ((@x1580 (unit-resolution @x584 @x1579 $x509)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   778
(let ((@x1653 (unit-resolution (unit-resolution @x193 @x1580 (or x14$ x41$)) (unit-resolution @x442 @x1650 $x438) x14$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   779
(let ((@x1655 (unit-resolution @x175 (unit-resolution @x500 @x1653 $x481) @x882 @x998 x39$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   780
(let ((@x1659 (unit-resolution @x128 (unit-resolution @x502 @x1653 $x425) (unit-resolution @x444 @x1650 $x424) (unit-resolution @x370 (hypothesis x3$) $x364) x8$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   781
(let ((@x1662 (lemma (unit-resolution @x413 @x1659 @x1655 false) (or $x355 x12$ x45$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   782
(let ((@x1574 (unit-resolution (unit-resolution @x1090 @x1580 (or $x481 x8$)) (unit-resolution @x1011 @x942 @x853 $x410) $x481)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   783
(let ((@x1581 (unit-resolution @x419 (unit-resolution @x175 @x1574 @x882 @x998 x39$) $x396)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   784
(let ((@x1582 (unit-resolution @x421 (unit-resolution @x175 @x1574 @x882 @x998 x39$) $x356)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   785
(let ((@x1642 (unit-resolution @x108 (unit-resolution @x350 (unit-resolution @x67 @x1582 @x942 x2$) $x348) @x1581 @x853 x6$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   786
(let ((@x1644 (unit-resolution @x706 (unit-resolution @x352 (unit-resolution @x67 @x1582 @x942 x2$) $x335) x31$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   787
(let ((@x1647 (lemma (unit-resolution @x389 @x1644 @x1642 false) (or x3$ x38$ x12$ x45$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   788
(let ((@x1678 (unit-resolution @x1647 (unit-resolution @x1662 @x1673 @x1676 $x355) @x1676 @x1673 x38$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   789
(let ((@x1681 (unit-resolution @x706 (unit-resolution @x1154 (unit-resolution @x478 @x1678 $x468) @x897 @x815 $x336) x1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   790
(let ((@x1683 (unit-resolution @x67 (unit-resolution @x352 @x1681 $x347) (unit-resolution @x1662 @x1673 @x1676 $x355) x33$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   791
(let ((@x1686 (unit-resolution (unit-resolution @x1090 @x1580 (or $x481 x8$)) (unit-resolution @x417 @x1683 $x410) $x481)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   792
(let ((@x1687 (unit-resolution @x175 @x1686 (unit-resolution @x421 @x1683 $x411) @x1676 @x1673 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   793
(let ((@x1691 (unit-resolution @x480 (unit-resolution (lemma @x1687 (or x11$ x17$)) @x897 x11$) $x397)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   794
(let ((@x1692 (unit-resolution @x476 (unit-resolution (lemma @x1687 (or x11$ x17$)) @x897 x11$) $x468)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   795
(let ((@x1695 (unit-resolution (unit-resolution @x1613 @x1665 (or x42$ x44$ x17$)) @x1692 @x897 x42$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   797
(let ((@x1702 (unit-resolution @x1671 (unit-resolution @x563 @x1700 $x553) x22$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   798
(let ((@x1705 (unit-resolution (unit-resolution @x325 @x1665 (or x26$ x56$)) (unit-resolution @x612 @x1702 $x610) x26$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   799
(let ((@x1709 (unit-resolution @x222 (unit-resolution @x616 @x1702 $x539) @x897 @x1692 x16$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   801
(let ((@x1714 (unit-resolution @x590 @x1713 (unit-resolution @x307 (unit-resolution @x662 @x1705 $x657) x54$) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   802
(let ((@x1715 (lemma @x1714 x17$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   803
(let ((@x1718 (unit-resolution (unit-resolution @x1569 @x1665 (or $x609 x11$)) (unit-resolution @x1671 (unit-resolution @x561 @x1715 $x553) x22$) x11$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   804
(let ((@x1722 (unit-resolution @x1662 (unit-resolution @x472 @x1718 $x467) (unit-resolution @x565 @x1715 $x482) $x355)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
   807
cc18a32517b61d11530e29950c780e58afa4da51 38 0
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   808
unsat
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   809
((set-logic AUFLIA)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   810
(declare-fun ?v0!0 () Int)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   811
(declare-fun ?v1!1 () Int)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   812
(proof
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   813
(let (($x48 (p$ ?v0!0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   814
(let (($x50 (not $x48)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   815
(let (($x63 (not (or $x48 (p$ ?v1!1)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   816
(let ((@x77 (monotonicity (rewrite (= (not $x50) $x48)) (= (and (not $x50) $x63) (and $x48 $x63)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   817
(let (($x57 (not $x50)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   818
(let (($x67 (and $x57 $x63)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   819
(let (($x41 (forall ((?v0 Int) )(! (let (($x32 (forall ((?v1 Int) )(! (let (($x28 (p$ ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   820
(or (p$ ?v0) $x28)) :qid k!5))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   821
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   822
(or (not (p$ ?v0)) $x32)) :qid k!5))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   823
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   824
(let (($x44 (not $x41)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   825
(let (($x52 (forall ((?v1 Int) )(! (let (($x28 (p$ ?v1)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   826
(let (($x48 (p$ ?v0!0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   827
(or $x48 $x28))) :qid k!5))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   828
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   829
(let ((@x69 (nnf-neg (refl (~ $x57 $x57)) (sk (~ (not $x52) $x63)) (~ (not (or $x50 $x52)) $x67))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   830
(let (($x34 (forall ((?v0 Int) )(! (let (($x32 (forall ((?v1 Int) )(! (let (($x28 (p$ ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   831
(or (p$ ?v0) $x28)) :qid k!5))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   832
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   833
(let (($x28 (p$ ?v0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   834
(=> $x28 $x32))) :qid k!5))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   835
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   836
(let (($x35 (not $x34)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   837
(let (($x32 (forall ((?v1 Int) )(! (let (($x28 (p$ ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   838
(or (p$ ?0) $x28)) :qid k!5))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   839
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   840
(let ((@x43 (quant-intro (rewrite (= (=> (p$ ?0) $x32) (or (not (p$ ?0)) $x32))) (= $x34 $x41))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   841
(let ((@x72 (mp~ (mp (asserted $x35) (monotonicity @x43 (= $x35 $x44)) $x44) (trans (sk (~ $x44 (not (or $x50 $x52)))) @x69 (~ $x44 $x67)) $x67)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   842
(let ((@x81 (not-or-elim (and-elim (mp @x72 @x77 (and $x48 $x63)) $x63) $x50)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   843
(let ((@x79 (and-elim (mp @x72 @x77 (and $x48 $x63)) $x48)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   844
(unit-resolution @x79 @x81 false))))))))))))))))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   845
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
   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
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   849
(declare-fun ?v0!0 () A$)
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
   850
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   851
(let (($x517 (forall ((?v0 A$) )(! (let (($x40 (p$ x$ ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   852
(not $x40)) :pattern ( (p$ x$ ?v0) ) :qid k!9))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   853
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   854
(let (($x44 (p$ x$ c$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   855
(let (($x91 (= $x44 x$)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   856
(let (($x510 (forall ((?v0 Bool) (?v1 A$) )(! (let (($x29 (p$ ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   857
(= $x29 ?v0)) :pattern ( (p$ ?v0 ?v1) ) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   858
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   859
(let (($x36 (forall ((?v0 Bool) (?v1 A$) )(! (let (($x29 (p$ ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   860
(= $x29 ?v0)) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   861
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   862
(let ((@x514 (quant-intro (refl (= (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (= $x36 $x510))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   863
(let ((@x64 (nnf-pos (refl (~ (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (~ $x36 $x36))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   864
(let (($x31 (forall ((?v0 Bool) (?v1 A$) )(! (let (($x29 (p$ ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   865
(= $x29 ?v0)) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   866
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   867
(let ((@x38 (quant-intro (rewrite (= (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (= $x31 $x36))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   868
(let ((@x515 (mp (mp~ (mp (asserted $x31) @x38 $x36) @x64 $x36) @x514 $x510)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   869
(let (($x170 (or (not $x510) $x91)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   870
(let ((@x503 ((_ quant-inst x$ c$) $x170)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   871
(let (($x73 (p$ x$ ?v0!0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   872
(let (($x179 (= $x73 x$)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   873
(let (($x85 (or $x73 $x44)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   874
(let (($x81 (not $x44)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   875
(let (($x69 (forall ((?v0 A$) )(! (let (($x40 (p$ x$ ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   876
(not $x40)) :qid k!9))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   877
))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   878
(let (($x84 (or $x69 $x81)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   879
(let (($x42 (exists ((?v0 A$) )(! (p$ x$ ?v0) :qid k!9))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   880
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   881
(let (($x54 (not $x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   882
(let (($x55 (= $x54 $x44)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   883
(let ((@x71 (nnf-neg (refl (~ (not (p$ x$ ?0)) (not (p$ x$ ?0)))) (~ $x54 $x69))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   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
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   885
(let ((@x53 (monotonicity (rewrite (= (= $x42 $x44) (= $x42 $x44))) (= (not (= $x42 $x44)) (not (= $x42 $x44))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   886
(let ((@x59 (trans @x53 (rewrite (= (not (= $x42 $x44)) $x55)) (= (not (= $x42 $x44)) $x55))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   887
(let ((@x89 (mp~ (mp (asserted (not (= $x42 $x44))) @x59 $x55) @x88 (and $x85 $x84))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   888
(let ((@x92 (and-elim @x89 $x85)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   889
(let ((@x484 (unit-resolution (def-axiom (or (not $x179) (not $x73) x$)) (unit-resolution @x92 (hypothesis $x81) $x73) (or (not $x179) x$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   890
(let ((@x145 (unit-resolution @x484 (unit-resolution ((_ quant-inst x$ ?v0!0) (or (not $x510) $x179)) @x515 $x179) x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   891
(let ((@x147 (unit-resolution (def-axiom (or (not $x91) $x44 (not x$))) (hypothesis $x81) (or (not $x91) (not x$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   892
(let ((@x485 (lemma (unit-resolution @x147 @x145 (unit-resolution @x503 @x515 $x91) false) $x44)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   893
(let (($x522 (or $x517 $x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   894
(let ((@x521 (quant-intro (refl (= (not (p$ x$ ?0)) (not (p$ x$ ?0)))) (= $x69 $x517))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   895
(let ((@x525 (mp (and-elim @x89 $x84) (monotonicity @x521 (= $x84 $x522)) $x522)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   896
(let (($x160 (or (not $x517) $x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   897
(let ((@x161 ((_ quant-inst c$) $x160)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
   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
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   903
(declare-fun ?v0!3 () A$)
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
   904
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   905
(let (($x584 (forall ((?v0 A$) )(! (let (($x52 (p$ x$ ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   906
(not $x52)) :pattern ( (p$ x$ ?v0) ) :qid k!10))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   907
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   908
(let (($x55 (p$ x$ c$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   909
(let (($x230 (= $x55 x$)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   910
(let (($x561 (forall ((?v0 Bool) (?v1 A$) )(! (let (($x29 (p$ ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   911
(= $x29 ?v0)) :pattern ( (p$ ?v0 ?v1) ) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   912
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   913
(let (($x36 (forall ((?v0 Bool) (?v1 A$) )(! (let (($x29 (p$ ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   914
(= $x29 ?v0)) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   915
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   916
(let ((@x565 (quant-intro (refl (= (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (= $x36 $x561))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   917
(let ((@x75 (nnf-pos (refl (~ (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (~ $x36 $x36))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   918
(let (($x31 (forall ((?v0 Bool) (?v1 A$) )(! (let (($x29 (p$ ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   919
(= $x29 ?v0)) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   920
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   921
(let ((@x38 (quant-intro (rewrite (= (= (p$ ?1 ?0) ?1) (= (p$ ?1 ?0) ?1))) (= $x31 $x36))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   922
(let ((@x566 (mp (mp~ (mp (asserted $x31) @x38 $x36) @x75 $x36) @x565 $x561)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   923
(let (($x220 (or (not $x561) $x230)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   924
(let ((@x221 ((_ quant-inst x$ c$) $x220)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   925
(let (($x124 (p$ x$ ?v0!3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   926
(let (($x141 (= $x124 x$)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   927
(let (($x136 (or $x124 $x55)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   928
(let (($x132 (not $x55)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   929
(let (($x120 (forall ((?v0 A$) )(! (let (($x52 (p$ x$ ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   930
(not $x52)) :qid k!10))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   931
))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   932
(let (($x135 (or $x120 $x132)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   933
(let (($x54 (exists ((?v0 A$) )(! (p$ x$ ?v0) :qid k!10))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   934
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   935
(let (($x65 (not $x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   936
(let (($x66 (= $x65 $x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   937
(let ((@x122 (nnf-neg (refl (~ (not (p$ x$ ?0)) (not (p$ x$ ?0)))) (~ $x65 $x120))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   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
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   939
(let ((@x64 (monotonicity (rewrite (= (= $x54 $x55) (= $x54 $x55))) (= (not (= $x54 $x55)) (not (= $x54 $x55))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   940
(let ((@x70 (trans @x64 (rewrite (= (not (= $x54 $x55)) $x66)) (= (not (= $x54 $x55)) $x66))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   941
(let ((@x140 (mp~ (mp (asserted (not (= $x54 $x55))) @x70 $x66) @x139 (and $x136 $x135))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   942
(let ((@x143 (and-elim @x140 $x136)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   943
(let ((@x193 (unit-resolution (def-axiom (or (not $x141) (not $x124) x$)) (unit-resolution @x143 (hypothesis $x132) $x124) (or (not $x141) x$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   944
(let ((@x535 (unit-resolution @x193 (unit-resolution ((_ quant-inst x$ ?v0!3) (or (not $x561) $x141)) @x566 $x141) x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   945
(let ((@x197 (unit-resolution (def-axiom (or (not $x230) $x55 (not x$))) (hypothesis $x132) (or (not $x230) (not x$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   946
(let ((@x199 (lemma (unit-resolution @x197 @x535 (unit-resolution @x221 @x566 $x230) false) $x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   947
(let (($x589 (or $x584 $x132)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   948
(let ((@x588 (quant-intro (refl (= (not (p$ x$ ?0)) (not (p$ x$ ?0)))) (= $x120 $x584))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   949
(let ((@x592 (mp (and-elim @x140 $x135) (monotonicity @x588 (= $x135 $x589)) $x589)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   950
(let (($x549 (or (not $x584) $x132)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   951
(let ((@x211 ((_ quant-inst c$) $x549)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   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
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
   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
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   958
(let (($x28 (p$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   959
(let ((@x48 (monotonicity (rewrite (= (=> $x28 (p$ y$)) (or (not $x28) (p$ y$)))) (= (not (=> $x28 (p$ y$))) (not (or (not $x28) (p$ y$)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   960
(let ((@x51 (mp (asserted (not (=> $x28 (p$ y$)))) @x48 (not (or (not $x28) (p$ y$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   961
(let ((@x49 (not-or-elim @x51 $x28)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   962
(let (($x486 (forall ((?v0 A$) )(! (let (($x30 (p$ ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   963
(not $x30)) :pattern ( (p$ ?v0) ) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   964
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   965
(let (($x34 (forall ((?v0 A$) )(! (let (($x30 (p$ ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   966
(not $x30)) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   967
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   968
(let ((@x490 (quant-intro (refl (= (not (p$ ?0)) (not (p$ ?0)))) (= $x34 $x486))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   969
(let (($x31 (exists ((?v0 A$) )(! (p$ ?v0) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   970
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   971
(let (($x32 (not $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   972
(let ((@x59 (monotonicity (iff-true @x49 (= $x28 true)) (= (ite $x28 $x32 $x34) (ite true $x32 $x34)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   973
(let ((@x63 (trans @x59 (rewrite (= (ite true $x32 $x34) $x32)) (= (ite $x28 $x32 $x34) $x32))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   974
(let ((@x67 (mp~ (mp (asserted (ite $x28 $x32 $x34)) @x63 $x32) (nnf-neg (refl (~ (not (p$ ?0)) (not (p$ ?0)))) (~ $x32 $x34)) $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   975
(let ((@x491 (mp @x67 @x490 $x486)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   976
(let (($x42 (not $x28)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   977
(let (($x156 (or (not $x486) $x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   978
(let ((@x70 ((_ quant-inst x$) $x156)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   979
(unit-resolution @x70 @x491 @x49 false)))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   980
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   981
1b3bdde0d609ebf7ad7472d1510134c9c367d283 7 0
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   982
unsat
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   983
((set-logic AUFLIA)
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   984
(proof
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   985
(let ((@x35 (monotonicity (rewrite (= (= 3 3) true)) (= (not (= 3 3)) (not true)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   986
(let ((@x39 (trans @x35 (rewrite (= (not true) false)) (= (not (= 3 3)) false))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   987
(mp (asserted (not (= 3 3))) @x39 false)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
   988
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
   989
a90c5a0ce94c691b0e4756f87e5d5fdbfd876893 7 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   990
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   991
((set-logic AUFLIRA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   992
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   993
(let ((@x35 (monotonicity (rewrite (= (= 3.0 3.0) true)) (= (not (= 3.0 3.0)) (not true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   994
(let ((@x39 (trans @x35 (rewrite (= (not true) false)) (= (not (= 3.0 3.0)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   995
(mp (asserted (not (= 3.0 3.0))) @x39 false)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   996
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
   997
16d237209133b15bdc9c24699c793f8bdc748cd0 9 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   998
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   999
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1000
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1001
(let ((@x37 (monotonicity (rewrite (= (+ 3 1) 4)) (= (= (+ 3 1) 4) (= 4 4)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1002
(let ((@x41 (trans @x37 (rewrite (= (= 4 4) true)) (= (= (+ 3 1) 4) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1003
(let ((@x44 (monotonicity @x41 (= (not (= (+ 3 1) 4)) (not true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1004
(let ((@x48 (trans @x44 (rewrite (= (not true) false)) (= (not (= (+ 3 1) 4)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1005
(mp (asserted (not (= (+ 3 1) 4))) @x48 false)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1006
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1007
bc021898e31cb7c6419a072d70191b97605bee76 16 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1008
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1009
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1010
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1011
(let ((?x32 (+ z$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1012
(let ((?x33 (+ y$ ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1013
(let ((?x30 (+ y$ z$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1014
(let ((?x31 (+ x$ ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1015
(let (($x34 (= ?x31 ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1016
(let (($x35 (not $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1017
(let ((@x45 (monotonicity (rewrite (= ?x32 (+ x$ z$))) (= ?x33 (+ y$ (+ x$ z$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1018
(let ((@x49 (trans @x45 (rewrite (= (+ y$ (+ x$ z$)) (+ x$ y$ z$))) (= ?x33 (+ x$ y$ z$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1019
(let ((@x52 (monotonicity (rewrite (= ?x31 (+ x$ y$ z$))) @x49 (= $x34 (= (+ x$ y$ z$) (+ x$ y$ z$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1020
(let ((@x56 (trans @x52 (rewrite (= (= (+ x$ y$ z$) (+ x$ y$ z$)) true)) (= $x34 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1021
(let ((@x63 (trans (monotonicity @x56 (= $x35 (not true))) (rewrite (= (not true) false)) (= $x35 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1022
(mp (asserted $x35) @x63 false))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1023
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1024
31045f736583ed0b58ba51e123c31f8bb6c0267d 11 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1025
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1026
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1027
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1028
(let ((@x41 (monotonicity (rewrite (= (<= 3 8) true)) (= (ite (<= 3 8) 8 3) (ite true 8 3)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1029
(let ((@x45 (trans @x41 (rewrite (= (ite true 8 3) 8)) (= (ite (<= 3 8) 8 3) 8))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1030
(let ((@x48 (monotonicity @x45 (= (< 5 (ite (<= 3 8) 8 3)) (< 5 8)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1031
(let ((@x52 (trans @x48 (rewrite (= (< 5 8) true)) (= (< 5 (ite (<= 3 8) 8 3)) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1032
(let ((@x55 (monotonicity @x52 (= (not (< 5 (ite (<= 3 8) 8 3))) (not true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1033
(let ((@x59 (trans @x55 (rewrite (= (not true) false)) (= (not (< 5 (ite (<= 3 8) 8 3))) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1034
(mp (asserted (not (< 5 (ite (<= 3 8) 8 3)))) @x59 false)))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1035
57711
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  1036
6b0b089fbe179e8a27509c818f9a5e6847ac6bf2 88 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1037
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1038
((set-logic AUFLIRA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1039
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1040
(let ((?x44 (* (- 1.0) x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1041
(let (($x83 (>= x$ 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1042
(let ((?x90 (ite $x83 x$ ?x44)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1043
(let ((?x113 (* (- 1.0) ?x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1044
(let ((?x148 (+ x$ ?x113)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1045
(let (($x149 (<= ?x148 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1046
(let (($x133 (= x$ ?x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1047
(let ((?x45 (* (- 1.0) y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1048
(let ((?x46 (+ ?x44 ?x45)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1049
(let ((?x29 (+ x$ y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1050
(let (($x71 (>= ?x29 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1051
(let ((?x78 (ite $x71 ?x29 ?x46)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1052
(let ((?x151 (* (- 1.0) ?x78)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1053
(let ((?x179 (+ ?x46 ?x151)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1054
(let (($x181 (>= ?x179 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1055
(let (($x130 (= ?x46 ?x78)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1056
(let (($x72 (not $x71)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1057
(let (($x95 (>= y$ 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1058
(let (($x96 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1059
(let (($x154 (>= (+ ?x29 ?x151) 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1060
(let (($x129 (= ?x29 ?x78)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1061
(let (($x190 (not $x181)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1062
(let ((@x161 (hypothesis $x95)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1063
(let ((?x102 (ite $x95 y$ ?x45)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1064
(let ((?x114 (* (- 1.0) ?x102)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1065
(let ((?x115 (+ ?x78 ?x113 ?x114)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1066
(let (($x116 (<= ?x115 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1067
(let (($x121 (not $x116)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1068
(let ((?x39 (+ (ite (< x$ 0.0) (- x$) x$) (ite (< y$ 0.0) (- y$) y$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1069
(let (($x41 (not (<= (ite (< ?x29 0.0) (- ?x29) ?x29) ?x39))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1070
(let (($x36 (< y$ 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1071
(let ((?x59 (ite $x36 ?x45 y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1072
(let (($x33 (< x$ 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1073
(let ((?x54 (ite $x33 ?x44 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1074
(let ((?x62 (+ ?x54 ?x59)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1075
(let (($x30 (< ?x29 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1076
(let ((?x49 (ite $x30 ?x46 ?x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1077
(let (($x65 (<= ?x49 ?x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1078
(let ((@x106 (trans (monotonicity (rewrite (= $x36 $x96)) (= ?x59 (ite $x96 ?x45 y$))) (rewrite (= (ite $x96 ?x45 y$) ?x102)) (= ?x59 ?x102))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1079
(let ((@x89 (monotonicity (rewrite (= $x33 (not $x83))) (= ?x54 (ite (not $x83) ?x44 x$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1080
(let ((@x94 (trans @x89 (rewrite (= (ite (not $x83) ?x44 x$) ?x90)) (= ?x54 ?x90))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1081
(let ((@x82 (trans (monotonicity (rewrite (= $x30 $x72)) (= ?x49 (ite $x72 ?x46 ?x29))) (rewrite (= (ite $x72 ?x46 ?x29) ?x78)) (= ?x49 ?x78))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1082
(let ((@x112 (monotonicity @x82 (monotonicity @x94 @x106 (= ?x62 (+ ?x90 ?x102))) (= $x65 (<= ?x78 (+ ?x90 ?x102))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1083
(let ((@x120 (trans @x112 (rewrite (= (<= ?x78 (+ ?x90 ?x102)) $x116)) (= $x65 $x116))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1084
(let ((@x61 (monotonicity (rewrite (= (- y$) ?x45)) (= (ite $x36 (- y$) y$) ?x59))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1085
(let ((@x56 (monotonicity (rewrite (= (- x$) ?x44)) (= (ite $x33 (- x$) x$) ?x54))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1086
(let ((@x51 (monotonicity (rewrite (= (- ?x29) ?x46)) (= (ite $x30 (- ?x29) ?x29) ?x49))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1087
(let ((@x67 (monotonicity @x51 (monotonicity @x56 @x61 (= ?x39 ?x62)) (= (<= (ite $x30 (- ?x29) ?x29) ?x39) $x65))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1088
(let ((@x125 (trans (monotonicity @x67 (= $x41 (not $x65))) (monotonicity @x120 (= (not $x65) $x121)) (= $x41 $x121))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1089
(let ((@x126 (mp (asserted $x41) @x125 $x121)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1090
(let (($x139 (= y$ ?x102)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1091
(let ((@x174 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x139) (<= (+ y$ ?x114) 0.0))) (unit-resolution (def-axiom (or $x96 $x139)) @x161 $x139) (<= (+ y$ ?x114) 0.0))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1092
(let ((?x150 (+ ?x44 ?x113)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1093
(let (($x153 (<= ?x150 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1094
(let (($x134 (= ?x44 ?x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1095
(let (($x84 (not $x83)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1096
(let ((@x159 ((_ th-lemma arith triangle-eq) (or (not $x133) $x149))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1097
(let ((@x160 (unit-resolution @x159 (unit-resolution (def-axiom (or $x84 $x133)) (hypothesis $x83) $x133) $x149)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1098
(let ((@x164 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x71 $x84 $x96)) (hypothesis $x83) @x161 $x71)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1099
(let ((@x128 (def-axiom (or $x72 $x129))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1100
(let ((@x168 ((_ th-lemma arith triangle-eq) (or (not $x129) $x154))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1101
(let ((@x175 ((_ th-lemma arith farkas 1 -1 -1 1) @x174 (unit-resolution @x168 (unit-resolution @x128 @x164 $x129) $x154) @x126 @x160 false)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1102
(let ((@x138 (def-axiom (or $x83 $x134))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1103
(let ((@x184 (unit-resolution @x138 (unit-resolution (lemma @x175 (or $x84 $x96)) @x161 $x84) $x134)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1104
(let ((@x189 ((_ th-lemma arith farkas 2 -1 -1 1 1) @x161 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x134) $x153)) @x184 $x153) @x174 @x126 (hypothesis $x181) false)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1105
(let ((@x198 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x130) $x181)) (hypothesis $x130) (hypothesis $x190) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1106
(let ((@x199 (lemma @x198 (or (not $x130) $x181))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1107
(let ((@x201 (unit-resolution @x199 (unit-resolution (lemma @x189 (or $x190 $x96)) @x161 $x190) (not $x130))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1108
(let ((@x132 (def-axiom (or $x71 $x130))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1109
(let ((@x204 (unit-resolution @x168 (unit-resolution @x128 (unit-resolution @x132 @x201 $x71) $x129) $x154)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1110
(let ((@x205 ((_ th-lemma arith farkas 2 1 1 1 1) (unit-resolution (lemma @x175 (or $x84 $x96)) @x161 $x84) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x134) $x153)) @x184 $x153) @x174 @x126 @x204 false)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1111
(let ((@x206 (lemma @x205 $x96)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1112
(let ((@x212 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x83 $x95 $x72)) (hypothesis $x71) @x206 $x83)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1113
(let ((@x136 (def-axiom (or $x84 $x133))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1114
(let ((@x216 (unit-resolution @x168 (unit-resolution @x128 (hypothesis $x71) $x129) $x154)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1115
(let ((?x147 (+ ?x45 ?x114)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1116
(let (($x178 (<= ?x147 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1117
(let (($x140 (= ?x45 ?x102)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1118
(let ((@x221 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x140) $x178)) (unit-resolution (def-axiom (or $x95 $x140)) @x206 $x140) $x178)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1119
(let ((@x222 ((_ th-lemma arith farkas 2 1 1 1 1) @x206 @x221 @x126 @x216 (unit-resolution @x159 (unit-resolution @x136 @x212 $x133) $x149) false)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1120
(let ((@x226 (unit-resolution @x199 (unit-resolution @x132 (lemma @x222 $x72) $x130) $x181)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1122
(let ((@x234 (unit-resolution @x136 (unit-resolution @x138 (lemma @x231 (not $x134)) $x83) $x133)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1123
((_ th-lemma arith farkas -2 1 -1 -1 1) (unit-resolution @x138 (lemma @x231 (not $x134)) $x83) @x221 @x126 @x226 (unit-resolution @x159 @x234 $x149) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1124
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1125
bc11d479eb44aa63c2efc812af856ec331477415 16 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1126
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1127
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1128
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1129
(let ((?x32 (p$ true)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1130
(let (($x29 (< 2 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1131
(let (($x30 (ite $x29 true false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1132
(let ((?x31 (p$ $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1133
(let (($x33 (= ?x31 ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1134
(let (($x34 (not $x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1135
(let ((@x52 (monotonicity (monotonicity (rewrite (= $x29 true)) (= (p$ $x29) ?x32)) (= (= (p$ $x29) ?x32) (= ?x32 ?x32)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1136
(let ((@x56 (trans @x52 (rewrite (= (= ?x32 ?x32) true)) (= (= (p$ $x29) ?x32) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1137
(let ((@x63 (trans (monotonicity @x56 (= (not (= (p$ $x29) ?x32)) (not true))) (rewrite (= (not true) false)) (= (not (= (p$ $x29) ?x32)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1138
(let ((@x43 (monotonicity (monotonicity (rewrite (= $x30 $x29)) (= ?x31 (p$ $x29))) (= $x33 (= (p$ $x29) ?x32)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1139
(let ((@x46 (monotonicity @x43 (= $x34 (not (= (p$ $x29) ?x32))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1140
(mp (asserted $x34) (trans @x46 @x63 (= $x34 false)) false))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1141
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1142
d63ee5062f9a1d0a0bd17f51adaa0ac5e8f9ec16 16 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1143
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1144
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1145
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1146
(let (($x33 (< x$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1147
(let ((?x37 (+ 3 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1148
(let (($x40 (<= 4 ?x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1149
(let (($x43 (or $x40 $x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1150
(let (($x46 (not $x43)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1151
(let ((@x57 (monotonicity (rewrite (= $x40 (>= x$ 1))) (rewrite (= $x33 (not (>= x$ 1)))) (= $x43 (or (>= x$ 1) (not (>= x$ 1)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1152
(let ((@x61 (trans @x57 (rewrite (= (or (>= x$ 1) (not (>= x$ 1))) true)) (= $x43 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1153
(let ((@x68 (trans (monotonicity @x61 (= $x46 (not true))) (rewrite (= (not true) false)) (= $x46 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1154
(let ((@x42 (monotonicity (rewrite (= (+ x$ 3) ?x37)) (= (<= 4 (+ x$ 3)) $x40))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1155
(let ((@x48 (monotonicity (monotonicity @x42 (= (or (<= 4 (+ x$ 3)) $x33) $x43)) (= (not (or (<= 4 (+ x$ 3)) $x33)) $x46))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1156
(let ((@x70 (trans @x48 @x68 (= (not (or (<= 4 (+ x$ 3)) $x33)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1157
(mp (asserted (not (or (<= 4 (+ x$ 3)) $x33))) @x70 false))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1158
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1159
ea0e16fa50db2870878476eccdef4f64568acd55 18 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1160
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1161
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1162
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1163
(let (($x51 (= (+ x$ (* (- 1) y$)) (- 4))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1164
(let ((@x45 (monotonicity (rewrite (= (+ x$ 4) (+ 4 x$))) (= (= y$ (+ x$ 4)) (= y$ (+ 4 x$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1165
(let ((@x54 (trans @x45 (rewrite (= (= y$ (+ 4 x$)) $x51)) (= (= y$ (+ x$ 4)) $x51))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1166
(let ((@x88 (monotonicity (mp (asserted (= y$ (+ x$ 4))) @x54 $x51) (= (>= (+ x$ (* (- 1) y$)) 0) (>= (- 4) 0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1167
(let ((@x90 (trans @x88 (rewrite (= (>= (- 4) 0) false)) (= (>= (+ x$ (* (- 1) y$)) 0) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1168
(let (($x70 (>= (+ x$ (* (- 1) y$)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1169
(let ((@x76 (monotonicity (rewrite (= (< 0 (+ (* (- 1) x$) y$)) (not $x70))) (= (not (< 0 (+ (* (- 1) x$) y$))) (not (not $x70))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1170
(let ((@x80 (trans @x76 (rewrite (= (not (not $x70)) $x70)) (= (not (< 0 (+ (* (- 1) x$) y$))) $x70))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1171
(let (($x64 (< 0 (+ (* (- 1) x$) y$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1172
(let (($x67 (not $x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1173
(let (($x58 (not (< 0 (- y$ x$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1174
(let ((@x66 (monotonicity (rewrite (= (- y$ x$) (+ (* (- 1) x$) y$))) (= (< 0 (- y$ x$)) $x64))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1175
(let ((@x83 (mp (asserted $x58) (trans (monotonicity @x66 (= $x58 $x67)) @x80 (= $x58 $x70)) $x70)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1176
(mp @x83 @x90 false))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  1177
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1178
2389277f3547499e520f2b3ac28991b30ac7c1a8 11 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1179
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1180
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1181
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1182
(let ((@x39 (monotonicity (rewrite (= (+ 2 2) 4)) (= (= (+ 2 2) 5) (= 4 5)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1183
(let ((@x43 (trans @x39 (rewrite (= (= 4 5) false)) (= (= (+ 2 2) 5) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1184
(let ((@x46 (monotonicity @x43 (= (not (= (+ 2 2) 5)) (not false)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1185
(let ((@x50 (trans @x46 (rewrite (= (not false) true)) (= (not (= (+ 2 2) 5)) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1186
(let ((@x53 (monotonicity @x50 (= (not (not (= (+ 2 2) 5))) (not true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1187
(let ((@x57 (trans @x53 (rewrite (= (not true) false)) (= (not (not (= (+ 2 2) 5))) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1188
(mp (asserted (not (not (= (+ 2 2) 5)))) @x57 false)))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1189
57711
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  1190
3a6df2b095b936aac9a1d533e306f2d31b4fb44e 22 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1191
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1192
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1193
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1194
(let (($x38 (not false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1195
(let (($x34 (<= 0 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1196
(let (($x35 (not $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1197
(let (($x36 (or $x35 $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1198
(let ((?x29 (- 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1199
(let ((?x31 (* ?x29 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1200
(let ((?x32 (+ y$ ?x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1201
(let (($x33 (<= 0 ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1202
(let (($x37 (or $x33 $x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1203
(let (($x39 (= $x37 $x38)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1204
(let (($x40 (not $x39)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1205
(let ((@x60 (rewrite (= (or (<= 0 (+ y$ (* (- 1) x$))) true) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1206
(let ((@x50 (monotonicity (monotonicity (rewrite (= ?x29 (- 1))) (= ?x31 (* (- 1) x$))) (= ?x32 (+ y$ (* (- 1) x$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1207
(let ((@x58 (monotonicity (monotonicity @x50 (= $x33 (<= 0 (+ y$ (* (- 1) x$))))) (rewrite (= $x36 true)) (= $x37 (or (<= 0 (+ y$ (* (- 1) x$))) true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1208
(let ((@x67 (monotonicity (trans @x58 @x60 (= $x37 true)) (rewrite (= $x38 true)) (= $x39 (= true true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1209
(let ((@x71 (trans @x67 (rewrite (= (= true true) true)) (= $x39 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1210
(let ((@x78 (trans (monotonicity @x71 (= $x40 (not true))) (rewrite (= (not true) false)) (= $x40 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1211
(mp (asserted $x40) @x78 false))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1212
59046
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1213
dfbbe6f3879b3c49e6d5f7ecff4f8f81ed746bd4 19 0
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1214
unsat
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1215
((set-logic AUFLIRA)
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1216
(proof
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1217
(let ((?x32 (* 7.0 a$)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1218
(let ((?x29 (* 3.0 x$)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1219
(let ((?x33 (+ ?x29 ?x32)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1220
(let (($x43 (>= ?x33 4.0)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1221
(let (($x41 (not $x43)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1222
(let ((@x40 (mp (asserted (< ?x33 4.0)) (rewrite (= (< ?x33 4.0) $x41)) $x41)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1223
(let ((?x38 (* 2.0 x$)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1224
(let (($x48 (<= ?x38 3.0)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1225
(let (($x49 (not $x48)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1226
(let ((@x52 (mp (asserted (< 3.0 ?x38)) (rewrite (= (< 3.0 ?x38) $x49)) $x49)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1227
(let (($x58 (>= a$ 0.0)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1228
(let ((@x62 (monotonicity (rewrite (= (< a$ 0.0) (not $x58))) (= (not (< a$ 0.0)) (not (not $x58))))))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1229
(let ((@x66 (trans @x62 (rewrite (= (not (not $x58)) $x58)) (= (not (< a$ 0.0)) $x58))))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1230
(let ((@x67 (mp (asserted (not (< a$ 0.0))) @x66 $x58)))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1231
((_ th-lemma arith farkas 7 3/2 1) @x67 @x52 @x40 false)))))))))))))))))
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  1232
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1233
7d3773a9d63ce2ada82ac001b84291cdc85d7ab8 159 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1234
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1235
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1236
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1237
(let (($x44 (= m$ n$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1238
(let ((@x480 (symm (commutativity (= $x44 (= n$ m$))) (= (= n$ m$) $x44))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1239
(let (($x40 (= n$ m$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1240
(let ((?x102 (* (- 1) m$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1241
(let ((?x103 (+ n$ ?x102)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1242
(let (($x118 (>= ?x103 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1243
(let ((?x78 (* (- 1) n$a)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1244
(let ((?x96 (+ m$ ?x78)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1245
(let (($x127 (<= ?x96 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1246
(let ((?x79 (+ n$ ?x78)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1247
(let (($x88 (>= ?x79 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1248
(let (($x239 (or $x88 $x127)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1249
(let ((@x251 (monotonicity (rewrite (= (and (not $x88) (not $x127)) (not $x239))) (= (not (and (not $x88) (not $x127))) (not (not $x239))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1250
(let ((@x271 (trans @x251 (rewrite (= (not (not $x239)) $x239)) (= (not (and (not $x88) (not $x127))) $x239))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1251
(let (($x128 (not $x127)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1252
(let (($x87 (not $x88)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1253
(let (($x143 (and $x87 $x128)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1254
(let (($x210 (not $x143)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1255
(let (($x50 (= n$a m$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1256
(let (($x57 (and $x50 $x44)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1257
(let (($x80 (<= ?x79 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1258
(let (($x81 (not $x80)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1259
(let (($x33 (= m$ n$a)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1260
(let (($x84 (and $x33 $x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1261
(let (($x91 (and $x44 $x87)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1262
(let (($x95 (>= ?x96 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1263
(let (($x94 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1264
(let (($x99 (and $x94 $x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1265
(let (($x48 (= n$a n$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1266
(let (($x104 (<= ?x103 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1267
(let (($x105 (not $x104)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1268
(let (($x108 (and $x105 $x48)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1269
(let (($x111 (and $x105 $x87)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1270
(let (($x114 (and $x50 $x105)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1271
(let (($x117 (not $x118)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1272
(let (($x121 (and $x48 $x117)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1273
(let (($x124 (and $x81 $x117)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1274
(let (($x131 (and $x128 $x44)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1275
(let (($x134 (and $x128 $x105)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1276
(let (($x137 (and $x40 $x94)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1277
(let (($x38 (= n$ n$a)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1278
(let (($x140 (and $x38 $x128)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1279
(let (($x146 (and $x117 $x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1280
(let (($x149 (and $x117 $x94)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1281
(let (($x197 (or $x149 $x146 $x143 $x140 $x137 $x134 $x131 $x124 $x121 $x114 $x111 $x108 $x99 $x91 $x84 $x57)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1282
(let (($x60 (or (and (< m$ n$a) (< n$a n$)) (or (and $x44 (< n$ n$a)) (or (and $x33 (< n$a n$)) $x57)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1283
(let (($x62 (or (and (< m$ n$) (< n$ n$a)) (or (and (< m$ n$) $x48) $x60))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1284
(let (($x65 (or (and (< n$a n$) (< n$ m$)) (or (and $x48 (< n$ m$)) (or (and $x50 (< m$ n$)) $x62)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1285
(let (($x67 (or (and (< n$a m$) (< m$ n$)) (or (and (< n$a m$) $x44) $x65))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1286
(let (($x70 (or (and (< n$ n$a) (< n$a m$)) (or (and $x38 (< n$a m$)) (or (and $x40 (< m$ n$a)) $x67)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1287
(let (($x72 (or (and (< n$ m$) (< m$ n$a)) (or (and (< n$ m$) $x33) $x70))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1288
(let (($x73 (not $x72)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1289
(let (($x170 (or $x121 (or $x114 (or $x111 (or $x108 (or $x99 (or $x91 (or $x84 $x57)))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1290
(let (($x191 (or $x146 (or $x143 (or $x140 (or $x137 (or $x134 (or $x131 (or $x124 $x170)))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1291
(let (($x189 (= $x70 (or $x143 (or $x140 (or $x137 (or $x134 (or $x131 (or $x124 $x170)))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  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))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1293
(let (($x183 (= (or (and $x40 (< m$ n$a)) $x67) (or $x137 (or $x134 (or $x131 (or $x124 $x170)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1294
(let (($x171 (= (or (and $x48 (< n$ m$)) (or (and $x50 (< m$ n$)) $x62)) $x170)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1295
(let (($x168 (= (or (and $x50 (< m$ n$)) $x62) (or $x114 (or $x111 (or $x108 (or $x99 (or $x91 (or $x84 $x57)))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1296
(let (($x162 (= (or (and (< m$ n$) $x48) $x60) (or $x108 (or $x99 (or $x91 (or $x84 $x57)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1297
(let (($x156 (= (or (and $x44 (< n$ n$a)) (or (and $x33 (< n$a n$)) $x57)) (or $x91 (or $x84 $x57)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1298
(let ((@x83 (rewrite (= (< n$a n$) $x81))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1299
(let ((@x154 (monotonicity (monotonicity @x83 (= (and $x33 (< n$a n$)) $x84)) (= (or (and $x33 (< n$a n$)) $x57) (or $x84 $x57)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1300
(let ((@x90 (rewrite (= (< n$ n$a) $x87))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1301
(let ((@x157 (monotonicity (monotonicity @x90 (= (and $x44 (< n$ n$a)) $x91)) @x154 $x156)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1302
(let ((@x98 (rewrite (= (< m$ n$a) $x94))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1303
(let ((@x101 (monotonicity @x98 @x83 (= (and (< m$ n$a) (< n$a n$)) $x99))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1304
(let ((@x160 (monotonicity @x101 @x157 (= $x60 (or $x99 (or $x91 (or $x84 $x57)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1305
(let ((@x107 (rewrite (= (< m$ n$) $x105))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1306
(let ((@x163 (monotonicity (monotonicity @x107 (= (and (< m$ n$) $x48) $x108)) @x160 $x162)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1307
(let ((@x113 (monotonicity @x107 @x90 (= (and (< m$ n$) (< n$ n$a)) $x111))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1308
(let ((@x166 (monotonicity @x113 @x163 (= $x62 (or $x111 (or $x108 (or $x99 (or $x91 (or $x84 $x57)))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1309
(let ((@x169 (monotonicity (monotonicity @x107 (= (and $x50 (< m$ n$)) $x114)) @x166 $x168)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1310
(let ((@x120 (rewrite (= (< n$ m$) $x117))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1311
(let ((@x172 (monotonicity (monotonicity @x120 (= (and $x48 (< n$ m$)) $x121)) @x169 $x171)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1312
(let ((@x126 (monotonicity @x83 @x120 (= (and (< n$a n$) (< n$ m$)) $x124))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1313
(let ((@x130 (rewrite (= (< n$a m$) $x128))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  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))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1315
(let ((@x136 (monotonicity @x130 @x107 (= (and (< n$a m$) (< m$ n$)) $x134))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1316
(let ((@x181 (monotonicity @x136 @x178 (= $x67 (or $x134 (or $x131 (or $x124 $x170)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1317
(let ((@x184 (monotonicity (monotonicity @x98 (= (and $x40 (< m$ n$a)) $x137)) @x181 $x183)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1318
(let ((@x187 (monotonicity (monotonicity @x130 (= (and $x38 (< n$a m$)) $x140)) @x184 $x186)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1319
(let ((@x145 (monotonicity @x90 @x130 (= (and (< n$ n$a) (< n$a m$)) $x143))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1320
(let ((@x193 (monotonicity (monotonicity @x120 (= (and (< n$ m$) $x33) $x146)) (monotonicity @x145 @x187 $x189) (= (or (and (< n$ m$) $x33) $x70) $x191))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1321
(let ((@x151 (monotonicity @x120 @x98 (= (and (< n$ m$) (< m$ n$a)) $x149))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1322
(let ((@x201 (trans (monotonicity @x151 @x193 (= $x72 (or $x149 $x191))) (rewrite (= (or $x149 $x191) $x197)) (= $x72 $x197))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1323
(let ((@x205 (mp (asserted $x73) (monotonicity @x201 (= $x73 (not $x197))) (not $x197))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1324
(let ((@x272 (mp (not-or-elim @x205 $x210) @x271 $x239)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1325
(let (($x273 (not $x38)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1326
(let (($x274 (or $x273 $x127)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1327
(let ((@x280 (monotonicity (rewrite (= $x140 (not $x274))) (= (not $x140) (not (not $x274))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1328
(let ((@x284 (trans @x280 (rewrite (= (not (not $x274)) $x274)) (= (not $x140) $x274))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1329
(let ((@x285 (mp (not-or-elim @x205 (not $x140)) @x284 $x274)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1330
(let (($x286 (not $x40)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1331
(let (($x311 (not $x44)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1332
(let ((@x434 (hypothesis $x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1333
(let (($x386 (or $x95 $x80)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1334
(let ((@x392 (monotonicity (rewrite (= $x99 (not $x386))) (= (not $x99) (not (not $x386))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1335
(let ((@x396 (trans @x392 (rewrite (= (not (not $x386)) $x386)) (= (not $x99) $x386))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1336
(let ((@x397 (mp (not-or-elim @x205 (not $x99)) @x396 $x386)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1337
(let (($x246 (not $x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1338
(let (($x410 (or $x246 $x80)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1339
(let ((@x416 (monotonicity (rewrite (= $x84 (not $x410))) (= (not $x84) (not (not $x410))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1340
(let ((@x420 (trans @x416 (rewrite (= (not (not $x410)) $x410)) (= (not $x84) $x410))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1341
(let ((@x421 (mp (not-or-elim @x205 (not $x84)) @x420 $x410)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1342
(let ((@x439 ((_ th-lemma arith triangle-eq) (or $x33 $x128 $x94))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1343
(let ((@x440 (unit-resolution @x439 (unit-resolution @x421 @x434 $x246) (unit-resolution @x397 @x434 $x95) $x128)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1344
(let (($x312 (or $x127 $x311)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1345
(let ((@x318 (monotonicity (rewrite (= $x131 (not $x312))) (= (not $x131) (not (not $x312))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1346
(let ((@x322 (trans @x318 (rewrite (= (not (not $x312)) $x312)) (= (not $x131) $x312))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1347
(let ((@x323 (mp (not-or-elim @x205 (not $x131)) @x322 $x312)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1348
(let ((@x450 (mp (unit-resolution @x323 @x440 $x311) (monotonicity (commutativity (= $x44 $x40)) (= $x311 $x286)) $x286)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1349
(let (($x324 (or $x80 $x118)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1350
(let ((@x330 (monotonicity (rewrite (= $x124 (not $x324))) (= (not $x124) (not (not $x324))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1351
(let ((@x334 (trans @x330 (rewrite (= (not (not $x324)) $x324)) (= (not $x124) $x324))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1352
(let ((@x335 (mp (not-or-elim @x205 (not $x124)) @x334 $x324)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1353
(let (($x299 (or $x127 $x104)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1354
(let ((@x305 (monotonicity (rewrite (= $x134 (not $x299))) (= (not $x134) (not (not $x299))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1355
(let ((@x309 (trans @x305 (rewrite (= (not (not $x299)) $x299)) (= (not $x134) $x299))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1356
(let ((@x310 (mp (not-or-elim @x205 (not $x134)) @x309 $x299)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1358
(let ((@x459 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x38 $x81 $x87)) (lemma (unit-resolution @x444 @x450 false) $x80) (or $x38 $x87))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1359
(let ((@x460 (unit-resolution @x459 (unit-resolution @x285 (hypothesis $x128) $x273) (unit-resolution @x272 (hypothesis $x128) $x88) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1360
(let ((@x461 (lemma @x460 $x127)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1361
(let (($x254 (or $x118 $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1362
(let ((@x262 (monotonicity (rewrite (= $x149 (not $x254))) (= (not $x149) (not (not $x254))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1363
(let ((@x256 (trans @x262 (rewrite (= (not (not $x254)) $x254)) (= (not $x149) $x254))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1364
(let ((@x257 (mp (not-or-elim @x205 (not $x149)) @x256 $x254)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1365
(let (($x247 (or $x118 $x246)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1366
(let ((@x259 (monotonicity (rewrite (= $x146 (not $x247))) (= (not $x146) (not (not $x247))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1367
(let ((@x245 (trans @x259 (rewrite (= (not (not $x247)) $x247)) (= (not $x146) $x247))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1368
(let ((@x238 (mp (not-or-elim @x205 (not $x146)) @x245 $x247)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1369
(let ((@x465 (unit-resolution @x439 (unit-resolution @x238 (hypothesis $x117) $x246) (unit-resolution @x257 (hypothesis $x117) $x95) @x461 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1370
(let (($x336 (not $x48)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1371
(let (($x374 (or $x104 $x336)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1372
(let ((@x380 (monotonicity (rewrite (= $x108 (not $x374))) (= (not $x108) (not (not $x374))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1373
(let ((@x384 (trans @x380 (rewrite (= (not (not $x374)) $x374)) (= (not $x108) $x374))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1374
(let ((@x385 (mp (not-or-elim @x205 (not $x108)) @x384 $x374)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1375
(let ((@x475 (mp (unit-resolution @x385 (hypothesis $x105) $x336) (monotonicity (commutativity (= $x48 $x38)) (= $x336 $x273)) $x273)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1376
(let (($x362 (or $x104 $x88)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1377
(let ((@x368 (monotonicity (rewrite (= $x111 (not $x362))) (= (not $x111) (not (not $x362))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1378
(let ((@x372 (trans @x368 (rewrite (= (not (not $x362)) $x362)) (= (not $x111) $x362))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1379
(let ((@x373 (mp (not-or-elim @x205 (not $x111)) @x372 $x362)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1380
(let ((@x469 (unit-resolution @x459 (unit-resolution @x373 (hypothesis $x105) $x88) $x38)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1382
(let (($x287 (or $x286 $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1383
(let ((@x293 (monotonicity (rewrite (= $x137 (not $x287))) (= (not $x137) (not (not $x287))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1384
(let ((@x297 (trans @x293 (rewrite (= (not (not $x287)) $x287)) (= (not $x137) $x287))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1385
(let ((@x298 (mp (not-or-elim @x205 (not $x137)) @x297 $x287)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1386
(let ((@x488 (mp (unit-resolution @x439 (unit-resolution @x298 @x478 $x95) @x461 $x33) (symm (commutativity (= $x50 $x33)) (= $x33 $x50)) $x50)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1387
(let (($x422 (or (not $x50) $x311)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1388
(let ((@x428 (monotonicity (rewrite (= $x57 (not $x422))) (= (not $x57) (not (not $x422))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1389
(let ((@x432 (trans @x428 (rewrite (= (not (not $x422)) $x422)) (= (not $x57) $x422))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1390
(let ((@x433 (mp (not-or-elim @x205 (not $x57)) @x432 $x422)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1391
(unit-resolution @x433 @x488 (mp @x478 @x480 $x44) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1392
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1393
32286f9c5e71eb2b15c18f86f04c80931e2e307b 878 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
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1397
(let ((?x184 (* (- 1) x7$)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1398
(let (($x363 (>= x7$ 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1399
(let ((?x370 (ite $x363 x7$ ?x184)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1400
(let ((?x381 (* (- 1) ?x370)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1401
(let ((?x668 (+ x7$ ?x381)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1402
(let (($x670 (>= ?x668 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1403
(let (($x707 (not $x670)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1404
(let ((?x655 (* (- 1) x11$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1405
(let ((?x656 (+ x2$ ?x655)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1406
(let (($x657 (<= ?x656 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1407
(let (($x766 (not $x657)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1408
(let (($x92 (= x2$ x11$)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1409
(let (($x583 (not $x92)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1410
(let (($x91 (= x1$ x10$)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1411
(let ((?x235 (* (- 1) x10$)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1412
(let ((?x652 (+ x1$ ?x235)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1413
(let (($x653 (<= ?x652 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1414
(let ((?x133 (* (- 1) x4$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1415
(let (($x438 (>= x4$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1416
(let ((?x445 (ite $x438 x4$ ?x133)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1417
(let ((?x456 (* (- 1) ?x445)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1418
(let ((?x677 (+ x4$ ?x456)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1419
(let (($x678 (<= ?x677 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1420
(let ((?x150 (* (- 1) x5$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1421
(let (($x413 (>= x5$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1422
(let ((?x420 (ite $x413 x5$ ?x150)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1423
(let ((?x431 (* (- 1) ?x420)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1424
(let ((?x757 (+ x5$ ?x431)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1425
(let (($x776 (>= ?x757 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1426
(let (($x604 (= x5$ ?x420)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1427
(let (($x313 (>= x10$ 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1428
(let ((?x320 (ite $x313 x10$ ?x235)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1429
(let ((?x331 (* (- 1) ?x320)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1430
(let ((?x662 (+ x10$ ?x331)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1431
(let (($x1381 (<= ?x662 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1432
(let (($x644 (= x10$ ?x320)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1433
(let (($x645 (= ?x235 ?x320)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1434
(let (($x1121 (not $x645)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1435
(let ((?x1103 (+ ?x235 ?x331)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1436
(let (($x1249 (<= ?x1103 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1437
(let (($x1261 (not $x1249)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1438
(let ((?x218 (* (- 1) x9$)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1439
(let (($x288 (>= x9$ 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1440
(let ((?x295 (ite $x288 x9$ ?x218)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1441
(let ((?x306 (* (- 1) ?x295)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1442
(let ((?x1356 (+ ?x218 ?x306)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1443
(let (($x1369 (>= ?x1356 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1444
(let (($x637 (= ?x218 ?x295)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1445
(let (($x289 (not $x288)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1446
(let (($x414 (not $x413)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1447
(let ((@x844 (hypothesis $x414)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1448
(let (($x388 (>= x6$ 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1449
(let (($x596 (= x4$ ?x445)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1450
(let ((@x1078 (hypothesis $x288)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1451
(let ((?x201 (* (- 1) x8$)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1452
(let (($x338 (>= x8$ 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1453
(let ((?x345 (ite $x338 x8$ ?x201)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1454
(let ((?x356 (* (- 1) ?x345)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1455
(let ((?x665 (+ x8$ ?x356)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1456
(let (($x667 (>= ?x665 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1457
(let (($x860 (not $x667)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1458
(let (($x439 (not $x438)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1459
(let ((@x763 (hypothesis $x439)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1460
(let ((?x432 (+ x4$ x6$ ?x431)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1461
(let (($x611 (>= ?x432 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1462
(let (($x433 (= ?x432 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1463
(let ((?x332 (+ x9$ x11$ ?x331)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1464
(let (($x333 (= ?x332 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1465
(let ((?x307 (+ x8$ x10$ ?x306)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1466
(let (($x308 (= ?x307 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1467
(let ((?x357 (+ x7$ x9$ ?x356)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1468
(let (($x358 (= ?x357 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1469
(let ((?x382 (+ x6$ x8$ ?x381)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1470
(let (($x383 (= ?x382 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1471
(let ((?x167 (* (- 1) x6$)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1472
(let ((?x395 (ite $x388 x6$ ?x167)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1473
(let ((?x406 (* (- 1) ?x395)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1474
(let ((?x407 (+ x5$ x7$ ?x406)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1475
(let (($x408 (= ?x407 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1476
(let ((?x457 (+ x3$ x5$ ?x456)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1477
(let (($x458 (= ?x457 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1478
(let ((?x116 (* (- 1) x3$)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1479
(let (($x463 (>= x3$ 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1480
(let ((?x470 (ite $x463 x3$ ?x116)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1481
(let ((?x481 (* (- 1) ?x470)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1482
(let ((?x482 (+ x2$ x4$ ?x481)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1483
(let (($x483 (= ?x482 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1484
(let ((?x98 (* (- 1) x2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1485
(let (($x488 (>= x2$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1486
(let ((?x495 (ite $x488 x2$ ?x98)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1487
(let ((?x506 (* (- 1) ?x495)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1488
(let ((?x507 (+ x3$ x1$ ?x506)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1489
(let (($x508 (= ?x507 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1490
(let (($x537 (and $x508 $x483 $x458 $x433 $x408 $x383 $x358 $x308 $x333)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1491
(let (($x548 (not (or (not $x537) (and $x91 $x92)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1492
(let (($x93 (and $x91 $x92)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1493
(let (($x83 (and (= x10$ (- (ite (< x9$ 0) (- x9$) x9$) x8$)) (= x11$ (- (ite (< x10$ 0) (- x10$) x10$) x9$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1494
(let (($x85 (and (= x8$ (- (ite (< x7$ 0) (- x7$) x7$) x6$)) (and (= x9$ (- (ite (< x8$ 0) (- x8$) x8$) x7$)) $x83))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1495
(let (($x87 (and (= x6$ (- (ite (< x5$ 0) (- x5$) x5$) x4$)) (and (= x7$ (- (ite (< x6$ 0) (- x6$) x6$) x5$)) $x85))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1496
(let (($x89 (and (= x4$ (- (ite (< x3$ 0) (- x3$) x3$) x2$)) (and (= x5$ (- (ite (< x4$ 0) (- x4$) x4$) x3$)) $x87))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1497
(let (($x94 (=> (and (= x3$ (- (ite (< x2$ 0) (- x2$) x2$) x1$)) $x89) $x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1498
(let (($x95 (not $x94)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1499
(let (($x78 (< x10$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1500
(let ((?x238 (ite $x78 ?x235 x10$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1501
(let ((?x244 (+ ?x218 ?x238)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1502
(let (($x249 (= x11$ ?x244)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1503
(let (($x72 (< x9$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1504
(let ((?x221 (ite $x72 ?x218 x9$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1505
(let ((?x227 (+ ?x201 ?x221)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1506
(let (($x232 (= x10$ ?x227)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1507
(let (($x252 (and $x232 $x249)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1508
(let (($x66 (< x8$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1509
(let ((?x204 (ite $x66 ?x201 x8$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1510
(let ((?x210 (+ ?x184 ?x204)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1511
(let (($x215 (= x9$ ?x210)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1512
(let (($x255 (and $x215 $x252)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1513
(let (($x60 (< x7$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1514
(let ((?x187 (ite $x60 ?x184 x7$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1515
(let ((?x193 (+ ?x167 ?x187)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1516
(let (($x198 (= x8$ ?x193)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1517
(let (($x258 (and $x198 $x255)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1518
(let (($x54 (< x6$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1519
(let ((?x170 (ite $x54 ?x167 x6$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1520
(let ((?x176 (+ ?x150 ?x170)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1521
(let (($x181 (= x7$ ?x176)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1522
(let (($x261 (and $x181 $x258)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1523
(let (($x48 (< x5$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1524
(let ((?x153 (ite $x48 ?x150 x5$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1525
(let ((?x159 (+ ?x133 ?x153)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1526
(let (($x164 (= x6$ ?x159)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1527
(let (($x264 (and $x164 $x261)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1528
(let (($x42 (< x4$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1529
(let ((?x136 (ite $x42 ?x133 x4$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1530
(let ((?x142 (+ ?x116 ?x136)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1531
(let (($x147 (= x5$ ?x142)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1532
(let (($x267 (and $x147 $x264)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1533
(let (($x36 (< x3$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1534
(let ((?x119 (ite $x36 ?x116 x3$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1535
(let ((?x125 (+ ?x98 ?x119)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1536
(let (($x130 (= x4$ ?x125)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1537
(let (($x270 (and $x130 $x267)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1538
(let (($x29 (< x2$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1539
(let ((?x101 (ite $x29 ?x98 x2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1540
(let ((?x108 (+ (* (- 1) x1$) ?x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1541
(let (($x113 (= x3$ ?x108)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1542
(let (($x273 (and $x113 $x270)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1543
(let (($x280 (or (not $x273) $x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1544
(let (($x528 (and $x458 (and $x433 (and $x408 (and $x383 (and $x358 (and $x308 $x333))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1545
(let (($x526 (= $x264 (and $x433 (and $x408 (and $x383 (and $x358 (and $x308 $x333))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1546
(let ((@x319 (monotonicity (rewrite (= $x78 (not $x313))) (= ?x238 (ite (not $x313) ?x235 x10$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1547
(let ((@x324 (trans @x319 (rewrite (= (ite (not $x313) ?x235 x10$) ?x320)) (= ?x238 ?x320))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1548
(let ((@x330 (monotonicity (monotonicity @x324 (= ?x244 (+ ?x218 ?x320))) (= $x249 (= x11$ (+ ?x218 ?x320))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1549
(let ((@x337 (trans @x330 (rewrite (= (= x11$ (+ ?x218 ?x320)) $x333)) (= $x249 $x333))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1550
(let ((@x294 (monotonicity (rewrite (= $x72 $x289)) (= ?x221 (ite $x289 ?x218 x9$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1551
(let ((@x302 (monotonicity (trans @x294 (rewrite (= (ite $x289 ?x218 x9$) ?x295)) (= ?x221 ?x295)) (= ?x227 (+ ?x201 ?x295)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1552
(let ((@x312 (trans (monotonicity @x302 (= $x232 (= x10$ (+ ?x201 ?x295)))) (rewrite (= (= x10$ (+ ?x201 ?x295)) $x308)) (= $x232 $x308))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1553
(let ((@x344 (monotonicity (rewrite (= $x66 (not $x338))) (= ?x204 (ite (not $x338) ?x201 x8$)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1554
(let ((@x349 (trans @x344 (rewrite (= (ite (not $x338) ?x201 x8$) ?x345)) (= ?x204 ?x345))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1555
(let ((@x355 (monotonicity (monotonicity @x349 (= ?x210 (+ ?x184 ?x345))) (= $x215 (= x9$ (+ ?x184 ?x345))))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1556
(let ((@x362 (trans @x355 (rewrite (= (= x9$ (+ ?x184 ?x345)) $x358)) (= $x215 $x358))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1557
(let ((@x518 (monotonicity @x362 (monotonicity @x312 @x337 (= $x252 (and $x308 $x333))) (= $x255 (and $x358 (and $x308 $x333))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1558
(let ((@x369 (monotonicity (rewrite (= $x60 (not $x363))) (= ?x187 (ite (not $x363) ?x184 x7$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1559
(let ((@x374 (trans @x369 (rewrite (= (ite (not $x363) ?x184 x7$) ?x370)) (= ?x187 ?x370))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1560
(let ((@x380 (monotonicity (monotonicity @x374 (= ?x193 (+ ?x167 ?x370))) (= $x198 (= x8$ (+ ?x167 ?x370))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1561
(let ((@x387 (trans @x380 (rewrite (= (= x8$ (+ ?x167 ?x370)) $x383)) (= $x198 $x383))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1562
(let ((@x521 (monotonicity @x387 @x518 (= $x258 (and $x383 (and $x358 (and $x308 $x333)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1563
(let ((@x394 (monotonicity (rewrite (= $x54 (not $x388))) (= ?x170 (ite (not $x388) ?x167 x6$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1564
(let ((@x399 (trans @x394 (rewrite (= (ite (not $x388) ?x167 x6$) ?x395)) (= ?x170 ?x395))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1565
(let ((@x405 (monotonicity (monotonicity @x399 (= ?x176 (+ ?x150 ?x395))) (= $x181 (= x7$ (+ ?x150 ?x395))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1566
(let ((@x412 (trans @x405 (rewrite (= (= x7$ (+ ?x150 ?x395)) $x408)) (= $x181 $x408))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1567
(let ((@x524 (monotonicity @x412 @x521 (= $x261 (and $x408 (and $x383 (and $x358 (and $x308 $x333))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1568
(let ((@x419 (monotonicity (rewrite (= $x48 $x414)) (= ?x153 (ite $x414 ?x150 x5$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1569
(let ((@x427 (monotonicity (trans @x419 (rewrite (= (ite $x414 ?x150 x5$) ?x420)) (= ?x153 ?x420)) (= ?x159 (+ ?x133 ?x420)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1570
(let ((@x437 (trans (monotonicity @x427 (= $x164 (= x6$ (+ ?x133 ?x420)))) (rewrite (= (= x6$ (+ ?x133 ?x420)) $x433)) (= $x164 $x433))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1571
(let ((@x444 (monotonicity (rewrite (= $x42 $x439)) (= ?x136 (ite $x439 ?x133 x4$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1572
(let ((@x452 (monotonicity (trans @x444 (rewrite (= (ite $x439 ?x133 x4$) ?x445)) (= ?x136 ?x445)) (= ?x142 (+ ?x116 ?x445)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1573
(let ((@x462 (trans (monotonicity @x452 (= $x147 (= x5$ (+ ?x116 ?x445)))) (rewrite (= (= x5$ (+ ?x116 ?x445)) $x458)) (= $x147 $x458))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1574
(let ((@x469 (monotonicity (rewrite (= $x36 (not $x463))) (= ?x119 (ite (not $x463) ?x116 x3$)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1575
(let ((@x474 (trans @x469 (rewrite (= (ite (not $x463) ?x116 x3$) ?x470)) (= ?x119 ?x470))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1576
(let ((@x480 (monotonicity (monotonicity @x474 (= ?x125 (+ ?x98 ?x470))) (= $x130 (= x4$ (+ ?x98 ?x470))))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1577
(let ((@x487 (trans @x480 (rewrite (= (= x4$ (+ ?x98 ?x470)) $x483)) (= $x130 $x483))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1578
(let ((@x533 (monotonicity @x487 (monotonicity @x462 (monotonicity @x437 @x524 $x526) (= $x267 $x528)) (= $x270 (and $x483 $x528)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1579
(let ((@x494 (monotonicity (rewrite (= $x29 (not $x488))) (= ?x101 (ite (not $x488) ?x98 x2$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1580
(let ((@x499 (trans @x494 (rewrite (= (ite (not $x488) ?x98 x2$) ?x495)) (= ?x101 ?x495))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1581
(let ((@x505 (monotonicity (monotonicity @x499 (= ?x108 (+ (* (- 1) x1$) ?x495))) (= $x113 (= x3$ (+ (* (- 1) x1$) ?x495))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1582
(let ((@x512 (trans @x505 (rewrite (= (= x3$ (+ (* (- 1) x1$) ?x495)) $x508)) (= $x113 $x508))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1583
(let ((@x541 (trans (monotonicity @x512 @x533 (= $x273 (and $x508 (and $x483 $x528)))) (rewrite (= (and $x508 (and $x483 $x528)) $x537)) (= $x273 $x537))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1584
(let ((@x547 (monotonicity (monotonicity @x541 (= (not $x273) (not $x537))) (= $x280 (or (not $x537) $x93)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1585
(let ((@x240 (monotonicity (rewrite (= (- x10$) ?x235)) (= (ite $x78 (- x10$) x10$) ?x238))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1586
(let ((@x243 (monotonicity @x240 (= (- (ite $x78 (- x10$) x10$) x9$) (- ?x238 x9$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1587
(let ((@x248 (trans @x243 (rewrite (= (- ?x238 x9$) ?x244)) (= (- (ite $x78 (- x10$) x10$) x9$) ?x244))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1588
(let ((@x251 (monotonicity @x248 (= (= x11$ (- (ite $x78 (- x10$) x10$) x9$)) $x249))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1589
(let ((@x223 (monotonicity (rewrite (= (- x9$) ?x218)) (= (ite $x72 (- x9$) x9$) ?x221))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1590
(let ((@x226 (monotonicity @x223 (= (- (ite $x72 (- x9$) x9$) x8$) (- ?x221 x8$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1591
(let ((@x231 (trans @x226 (rewrite (= (- ?x221 x8$) ?x227)) (= (- (ite $x72 (- x9$) x9$) x8$) ?x227))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1592
(let ((@x234 (monotonicity @x231 (= (= x10$ (- (ite $x72 (- x9$) x9$) x8$)) $x232))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1593
(let ((@x206 (monotonicity (rewrite (= (- x8$) ?x201)) (= (ite $x66 (- x8$) x8$) ?x204))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1594
(let ((@x209 (monotonicity @x206 (= (- (ite $x66 (- x8$) x8$) x7$) (- ?x204 x7$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1595
(let ((@x214 (trans @x209 (rewrite (= (- ?x204 x7$) ?x210)) (= (- (ite $x66 (- x8$) x8$) x7$) ?x210))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1596
(let ((@x217 (monotonicity @x214 (= (= x9$ (- (ite $x66 (- x8$) x8$) x7$)) $x215))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1597
(let ((@x257 (monotonicity @x217 (monotonicity @x234 @x251 (= $x83 $x252)) (= (and (= x9$ (- (ite $x66 (- x8$) x8$) x7$)) $x83) $x255))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1598
(let ((@x189 (monotonicity (rewrite (= (- x7$) ?x184)) (= (ite $x60 (- x7$) x7$) ?x187))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1599
(let ((@x192 (monotonicity @x189 (= (- (ite $x60 (- x7$) x7$) x6$) (- ?x187 x6$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1600
(let ((@x197 (trans @x192 (rewrite (= (- ?x187 x6$) ?x193)) (= (- (ite $x60 (- x7$) x7$) x6$) ?x193))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1601
(let ((@x200 (monotonicity @x197 (= (= x8$ (- (ite $x60 (- x7$) x7$) x6$)) $x198))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1602
(let ((@x172 (monotonicity (rewrite (= (- x6$) ?x167)) (= (ite $x54 (- x6$) x6$) ?x170))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1603
(let ((@x175 (monotonicity @x172 (= (- (ite $x54 (- x6$) x6$) x5$) (- ?x170 x5$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1604
(let ((@x180 (trans @x175 (rewrite (= (- ?x170 x5$) ?x176)) (= (- (ite $x54 (- x6$) x6$) x5$) ?x176))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1605
(let ((@x183 (monotonicity @x180 (= (= x7$ (- (ite $x54 (- x6$) x6$) x5$)) $x181))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1606
(let ((@x263 (monotonicity @x183 (monotonicity @x200 @x257 (= $x85 $x258)) (= (and (= x7$ (- (ite $x54 (- x6$) x6$) x5$)) $x85) $x261))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1607
(let ((@x155 (monotonicity (rewrite (= (- x5$) ?x150)) (= (ite $x48 (- x5$) x5$) ?x153))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1608
(let ((@x158 (monotonicity @x155 (= (- (ite $x48 (- x5$) x5$) x4$) (- ?x153 x4$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1609
(let ((@x163 (trans @x158 (rewrite (= (- ?x153 x4$) ?x159)) (= (- (ite $x48 (- x5$) x5$) x4$) ?x159))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1610
(let ((@x166 (monotonicity @x163 (= (= x6$ (- (ite $x48 (- x5$) x5$) x4$)) $x164))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1611
(let ((@x138 (monotonicity (rewrite (= (- x4$) ?x133)) (= (ite $x42 (- x4$) x4$) ?x136))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1612
(let ((@x141 (monotonicity @x138 (= (- (ite $x42 (- x4$) x4$) x3$) (- ?x136 x3$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1613
(let ((@x146 (trans @x141 (rewrite (= (- ?x136 x3$) ?x142)) (= (- (ite $x42 (- x4$) x4$) x3$) ?x142))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1614
(let ((@x149 (monotonicity @x146 (= (= x5$ (- (ite $x42 (- x4$) x4$) x3$)) $x147))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1615
(let ((@x269 (monotonicity @x149 (monotonicity @x166 @x263 (= $x87 $x264)) (= (and (= x5$ (- (ite $x42 (- x4$) x4$) x3$)) $x87) $x267))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1616
(let ((@x121 (monotonicity (rewrite (= (- x3$) ?x116)) (= (ite $x36 (- x3$) x3$) ?x119))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1617
(let ((@x124 (monotonicity @x121 (= (- (ite $x36 (- x3$) x3$) x2$) (- ?x119 x2$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1618
(let ((@x129 (trans @x124 (rewrite (= (- ?x119 x2$) ?x125)) (= (- (ite $x36 (- x3$) x3$) x2$) ?x125))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1619
(let ((@x132 (monotonicity @x129 (= (= x4$ (- (ite $x36 (- x3$) x3$) x2$)) $x130))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1620
(let ((@x103 (monotonicity (rewrite (= (- x2$) ?x98)) (= (ite $x29 (- x2$) x2$) ?x101))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1621
(let ((@x106 (monotonicity @x103 (= (- (ite $x29 (- x2$) x2$) x1$) (- ?x101 x1$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1622
(let ((@x112 (trans @x106 (rewrite (= (- ?x101 x1$) ?x108)) (= (- (ite $x29 (- x2$) x2$) x1$) ?x108))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1623
(let ((@x115 (monotonicity @x112 (= (= x3$ (- (ite $x29 (- x2$) x2$) x1$)) $x113))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1624
(let ((@x275 (monotonicity @x115 (monotonicity @x132 @x269 (= $x89 $x270)) (= (and (= x3$ (- (ite $x29 (- x2$) x2$) x1$)) $x89) $x273))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1625
(let ((@x284 (trans (monotonicity @x275 (= $x94 (=> $x273 $x93))) (rewrite (= (=> $x273 $x93) $x280)) (= $x94 $x280))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1626
(let ((@x552 (trans (monotonicity @x284 (= $x95 (not $x280))) (monotonicity @x547 (= (not $x280) $x548)) (= $x95 $x548))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1627
(let ((@x554 (not-or-elim (mp (asserted $x95) @x552 $x548) $x537)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1628
(let ((@x558 (and-elim @x554 $x433)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1629
(let ((@x799 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x433) $x611)) @x558 $x611)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1630
(let ((?x931 (+ ?x150 ?x431)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1631
(let (($x933 (<= ?x931 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1632
(let (($x605 (= ?x150 ?x420)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1633
(let ((@x1000 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x605) $x933)) (unit-resolution (def-axiom (or $x413 $x605)) @x844 $x605) $x933)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1634
(let (($x634 (<= ?x357 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1635
(let ((@x561 (and-elim @x554 $x358)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1636
(let ((@x857 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x358) $x634)) @x561 $x634)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1637
(let (($x620 (= x7$ ?x370)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1638
(let ((?x777 (+ ?x167 ?x406)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1639
(let (($x780 (<= ?x777 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1640
(let (($x613 (= ?x167 ?x395)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1641
(let (($x389 (not $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1642
(let (($x364 (not $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1643
(let ((@x1027 (hypothesis $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1644
(let ((@x1026 (hypothesis $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1645
(let (($x619 (>= ?x407 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1646
(let ((@x559 (and-elim @x554 $x408)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1647
(let ((@x853 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x408) $x619)) @x559 $x619)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1648
(let ((?x671 (+ x6$ ?x406)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1649
(let (($x936 (<= ?x671 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1650
(let (($x612 (= x6$ ?x395)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1651
(let ((@x615 (def-axiom (or $x389 $x612))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1652
(let ((@x950 ((_ th-lemma arith triangle-eq) (or (not $x612) $x936))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1653
(let ((@x1029 (unit-resolution @x950 (unit-resolution @x615 @x1026 $x612) $x936)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1654
(let ((@x1032 (lemma ((_ th-lemma arith farkas 1 1 1 1 1) @x1029 @x853 @x1027 @x844 @x1026 false) (or $x363 $x413 $x389))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1655
(let ((@x617 (def-axiom (or $x388 $x613))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1656
(let ((@x1063 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x613) $x780)) (unit-resolution @x617 (unit-resolution @x1032 @x1027 @x844 $x389) $x613) $x780)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1657
(let ((@x1064 ((_ th-lemma arith farkas 1 1 1 1 1) (unit-resolution @x1032 @x1027 @x844 $x389) @x1027 @x853 @x844 @x1063 false)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1658
(let ((@x623 (def-axiom (or $x364 $x620))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1659
(let ((@x1087 (unit-resolution @x623 (unit-resolution (lemma @x1064 (or $x363 $x413)) @x844 $x363) $x620)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1660
(let ((@x926 ((_ th-lemma arith triangle-eq) (or (not $x620) $x670))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1661
(let ((@x1088 (unit-resolution @x926 @x1087 $x670)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1662
(let (($x626 (<= ?x382 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1663
(let ((@x560 (and-elim @x554 $x383)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1664
(let ((@x703 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x383) $x626)) @x560 $x626)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1665
(let ((@x858 (hypothesis $x667)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1666
(let ((@x1104 (lemma ((_ th-lemma arith farkas 1 1 1 1 1 1 1 1 1) @x858 @x703 @x1088 @x857 @x763 @x1000 @x844 @x799 @x1078 false) (or $x438 $x860 $x413 $x289))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1667
(let (($x628 (= x8$ ?x345)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1668
(let (($x840 (<= ?x668 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1669
(let ((@x865 ((_ th-lemma arith triangle-eq) (or (not $x620) $x840))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1670
(let ((@x1089 (unit-resolution @x865 @x1087 $x840)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1671
(let (($x627 (>= ?x382 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1672
(let ((@x835 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x383) $x627)) @x560 $x627)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1673
(let ((@x1241 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x438 (not $x933) $x413 (not $x611) $x388)) @x763 @x799 @x1000 @x844 $x388)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1674
(let ((@x1094 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x338 (not $x627) (not $x840) (not $x936) (not $x619) $x413))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1675
(let ((@x1244 (unit-resolution @x1094 (unit-resolution @x950 (unit-resolution @x615 @x1241 $x612) $x936) @x835 @x844 @x1089 @x853 $x338)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1676
(let ((@x631 (def-axiom (or (not $x338) $x628))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1677
(let ((@x1117 ((_ th-lemma arith triangle-eq) (or (not $x628) $x667))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1678
(let ((@x1246 (unit-resolution @x1117 (unit-resolution @x631 @x1244 $x628) (unit-resolution @x1104 @x763 @x844 @x1078 $x860) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1679
(let ((@x599 (def-axiom (or $x439 $x596))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1680
(let ((@x1327 (unit-resolution @x599 (unit-resolution (lemma @x1246 (or $x438 $x413 $x289)) @x844 @x1078 $x438) $x596)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1681
(let ((@x693 ((_ th-lemma arith triangle-eq) (or (not $x596) $x678))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1682
(let ((?x659 (+ x9$ ?x306)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1683
(let (($x661 (>= ?x659 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1684
(let (($x636 (= x9$ ?x295)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1685
(let ((@x639 (def-axiom (or $x289 $x636))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1686
(let ((@x1146 ((_ th-lemma arith triangle-eq) (or (not $x636) $x661))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1687
(let ((@x1147 (unit-resolution @x1146 (unit-resolution @x639 @x1078 $x636) $x661)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1688
(let (($x660 (<= ?x659 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1689
(let ((@x1151 ((_ th-lemma arith triangle-eq) (or (not $x636) $x660))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1690
(let ((@x1152 (unit-resolution @x1151 (unit-resolution @x639 @x1078 $x636) $x660)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1691
(let (($x658 (>= ?x656 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1692
(let (($x673 (>= ?x671 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1693
(let (($x706 (not $x673)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1694
(let (($x663 (<= ?x665 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1695
(let (($x643 (>= ?x307 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1696
(let ((@x562 (and-elim @x554 $x308)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1697
(let ((@x1138 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x308) $x643)) @x562 $x643)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1698
(let (($x314 (not $x313)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1699
(let (($x1164 (not $x644)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1700
(let (($x664 (>= ?x662 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1701
(let (($x734 (not $x664)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1702
(let (($x710 (not $x658)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1703
(let ((@x711 (hypothesis $x710)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1704
(let ((@x731 (hypothesis $x661)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1705
(let ((@x716 (hypothesis $x664)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1706
(let (($x621 (= ?x184 ?x370)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1707
(let (($x823 (not $x621)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1708
(let ((?x778 (+ ?x184 ?x381)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1709
(let (($x779 (<= ?x778 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1710
(let (($x902 (not $x779)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1711
(let (($x669 (>= ?x677 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1712
(let (($x464 (not $x463)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1713
(let ((@x688 (hypothesis $x464)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1714
(let (($x847 (not $x613)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1715
(let (($x839 (>= ?x777 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1716
(let (($x872 (not $x839)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1717
(let ((?x680 (+ x3$ ?x481)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1718
(let (($x681 (<= ?x680 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1719
(let ((?x676 (+ ?x116 ?x481)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1720
(let (($x679 (<= ?x676 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1721
(let (($x589 (= ?x116 ?x470)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1722
(let ((@x758 (unit-resolution (def-axiom (or $x463 $x589)) @x688 $x589)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1723
(let ((@x762 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x589) $x679)) @x758 $x679)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1724
(let ((?x674 (+ ?x133 ?x456)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1725
(let (($x675 (<= ?x674 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1726
(let (($x597 (= ?x133 ?x445)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1727
(let ((@x601 (def-axiom (or $x438 $x597))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1728
(let ((@x941 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x597) $x675)) (unit-resolution @x601 @x763 $x597) $x675)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1729
(let ((@x944 (unit-resolution ((_ th-lemma arith assign-bounds 2 1) (or $x678 $x438 (not $x675))) @x941 @x763 $x678)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1730
(let ((@x869 (hypothesis $x681)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1731
(let ((@x868 (hypothesis $x678)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1732
(let ((@x867 (hypothesis $x839)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1733
(let ((@x866 (unit-resolution @x865 (unit-resolution @x623 (hypothesis $x363) $x620) $x840)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1734
(let ((@x841 (hypothesis $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1735
(let (($x618 (<= ?x407 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1736
(let ((@x698 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x408) $x618)) @x559 $x618)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1737
(let (($x603 (>= ?x457 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1738
(let ((@x557 (and-elim @x554 $x458)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1739
(let ((@x687 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x458) $x603)) @x557 $x603)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1740
(let (($x650 (<= ?x332 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1741
(let ((@x563 (and-elim @x554 $x333)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1742
(let ((@x715 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x333) $x650)) @x563 $x650)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1743
(let (($x595 (>= ?x482 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1744
(let ((@x556 (and-elim @x554 $x483)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1745
(let ((@x720 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x483) $x595)) @x556 $x595)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1746
(let (($x642 (<= ?x307 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1747
(let ((@x730 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x308) $x642)) @x562 $x642)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1748
(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)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1749
(let ((@x874 (lemma @x870 (or $x364 (not $x681) (not $x661) $x734 $x658 (not $x678) $x872))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1750
(let ((@x625 (def-axiom (or $x363 $x621))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1751
(let ((@x880 (unit-resolution @x625 (unit-resolution @x874 @x867 @x731 @x716 @x711 @x868 @x869 $x364) $x621)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1752
(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 ((_ th-lemma arith triangle-eq) (or $x823 $x779)) @x880 $x779) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1753
(let ((@x884 (lemma @x882 (or $x872 (not $x681) (not $x661) $x734 $x658 (not $x678)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1754
(let ((@x945 (unit-resolution @x884 @x944 @x731 @x716 @x711 (unit-resolution ((_ th-lemma arith assign-bounds 1 2) (or $x681 (not $x679) $x463)) @x762 @x688 $x681) $x872)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1755
(let ((@x892 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x847 $x839)) (hypothesis $x613) (hypothesis $x872) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1756
(let ((@x893 (lemma @x892 (or $x847 $x839))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1757
(let ((@x948 (unit-resolution @x615 (unit-resolution @x617 (unit-resolution @x893 @x945 $x847) $x388) $x612)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1758
(let (($x775 (<= ?x757 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1759
(let ((@x954 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x413 (not $x675) (not $x603) $x463 $x438)) @x763 @x687 @x688 @x941 $x413)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1760
(let ((@x607 (def-axiom (or $x414 $x604))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1761
(let ((@x794 ((_ th-lemma arith triangle-eq) (or (not $x604) $x775))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1762
(let ((@x960 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x363 (not $x936) (not $x619) $x438 (not $x775) (not $x611)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1763
(let ((@x961 (unit-resolution @x960 @x763 @x853 @x799 (unit-resolution @x794 (unit-resolution @x607 @x954 $x604) $x775) (unit-resolution @x950 @x948 $x936) $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1764
(let (($x602 (<= ?x457 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1765
(let ((@x832 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x458) $x602)) @x557 $x602)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1766
(let (($x932 (>= ?x674 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1767
(let ((@x966 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x597) $x932)) (unit-resolution @x601 @x763 $x597) $x932)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1768
(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)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1769
(let ((@x974 (unit-resolution (lemma @x967 (or $x438 (not $x661) $x734 $x658 $x463)) @x688 @x716 @x711 @x731 $x438)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1770
(let ((@x828 ((_ th-lemma arith triangle-eq) (or (not $x596) $x669))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1771
(let ((@x978 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x413 (not $x603) $x463 $x439 (not $x678))) (unit-resolution @x693 (unit-resolution @x599 @x974 $x596) $x678) @x687 @x688 @x974 $x413)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1772
(let ((@x791 ((_ th-lemma arith triangle-eq) (or (not $x604) $x776))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1773
(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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1774
(let ((@x984 (unit-resolution @x615 (unit-resolution @x617 (unit-resolution @x893 @x981 $x847) $x388) $x612)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1775
(let ((@x808 ((_ th-lemma arith triangle-eq) (or (not $x612) $x673))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1776
(let (($x903 (not $x669)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1777
(let (($x817 (not $x776)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1778
(let (($x813 (not $x679)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1779
(let (($x733 (not $x661)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1780
(let ((@x900 (hypothesis $x669)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1781
(let (($x610 (<= ?x432 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1782
(let ((@x812 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x433) $x610)) @x558 $x610)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1783
(let ((@x699 (hypothesis $x673)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1784
(let ((@x934 (hypothesis $x679)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1785
(let ((@x935 ((_ th-lemma arith farkas -1 -1 1 1 -1 -1 1 1 -1 1 -2 2 -1 1 1) @x835 @x731 @x730 @x934 @x720 @x716 @x715 @x711 @x699 @x698 (hypothesis $x776) @x812 @x900 @x832 (hypothesis $x779) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1786
(let ((@x986 (unit-resolution (lemma @x935 (or $x902 $x733 $x813 $x734 $x658 $x706 $x817 $x903)) @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)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1787
(let ((@x906 (hypothesis $x902)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1788
(let ((@x908 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x823 $x779)) (hypothesis $x621) @x906 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1789
(let ((@x909 (lemma @x908 (or $x823 $x779))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1790
(let ((@x989 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x909 @x986 $x823) $x363) $x620)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1791
(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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1792
(let ((@x972 (unit-resolution (lemma @x991 (or $x463 $x733 $x734 $x658)) @x716 @x731 @x711 $x463)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1793
(let (($x588 (= x3$ ?x470)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1794
(let ((@x591 (def-axiom (or $x464 $x588))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1795
(let ((@x725 ((_ th-lemma arith triangle-eq) (or (not $x588) $x681))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1796
(let ((@x994 (unit-resolution @x725 (unit-resolution @x591 @x972 $x588) $x681)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1797
(let ((@x1011 (unit-resolution @x893 (unit-resolution @x884 @x944 @x731 @x716 @x711 @x994 $x872) $x847)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1798
(let ((@x1014 (unit-resolution @x950 (unit-resolution @x615 (unit-resolution @x617 @x1011 $x388) $x612) $x936)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1799
(let ((@x1001 (hypothesis $x936)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1800
(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))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1801
(let ((@x1006 (unit-resolution @x623 (unit-resolution @x1004 @x844 @x799 @x853 @x763 @x1001 @x1000 $x363) $x620)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1802
(let ((@x764 (hypothesis $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1803
(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)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1804
(let ((@x1015 (unit-resolution (lemma @x1008 (or $x413 (not $x936) $x733 $x734 $x766 (not $x681) $x438)) @x1014 @x731 @x716 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x658 $x657)) @x711 $x657) @x994 @x763 $x413)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1805
(let ((@x1018 (unit-resolution @x960 (unit-resolution @x794 (unit-resolution @x607 @x1015 $x604) $x775) @x853 @x763 @x1014 @x799 $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1806
(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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1807
(let ((@x1025 (unit-resolution (lemma @x1021 (or $x438 $x733 $x734 $x658)) @x716 @x731 @x711 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1808
(let ((@x1035 (unit-resolution @x884 (unit-resolution @x693 (unit-resolution @x599 @x1025 $x596) $x678) @x731 @x716 @x711 @x994 $x872)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1809
(let ((@x1037 (unit-resolution @x617 (unit-resolution @x893 @x1035 $x847) $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1810
(let (($x1024 (>= ?x931 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1811
(let ((@x1040 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x605) $x1024)) (unit-resolution (def-axiom (or $x413 $x605)) @x844 $x605) $x1024)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1812
(let ((@x1043 (unit-resolution @x865 (unit-resolution @x623 (unit-resolution @x1032 @x844 @x1037 $x363) $x620) $x840)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1813
(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)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1814
(let ((@x1051 (unit-resolution (lemma @x1046 (or $x413 $x733 $x734 $x658)) @x716 @x731 @x711 $x413)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1815
(let ((@x897 (unit-resolution @x725 (unit-resolution @x591 (hypothesis $x463) $x588) $x681)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1816
(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 (hypothesis $x463) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1817
(let ((@x1054 (unit-resolution (lemma @x901 (or $x902 $x903 $x817 $x733 $x734 $x658 $x706 $x464)) (unit-resolution @x791 (unit-resolution @x607 @x1051 $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)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1818
(let ((@x1057 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x909 @x1054 $x823) $x363) $x620)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1819
(let ((@x1059 ((_ th-lemma arith farkas 1 -1 1/2 -1/2 1 1/2 -1/2 -1/2 1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 -1/2 1) (unit-resolution @x791 (unit-resolution @x607 @x1051 $x604) $x776) @x812 (unit-resolution @x828 (unit-resolution @x599 @x1025 $x596) $x669) @x832 (unit-resolution @x625 (unit-resolution @x909 @x1054 $x823) $x363) (unit-resolution @x808 (unit-resolution @x615 @x1037 $x612) $x673) @x698 (unit-resolution @x865 @x1057 $x840) @x835 @x731 @x730 @x720 @x716 @x715 @x711 @x994 @x972 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1820
(let ((@x1167 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1164 $x664)) (hypothesis $x644) (hypothesis $x734) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1821
(let ((@x1168 (lemma @x1167 (or $x1164 $x664))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1822
(let ((@x1170 (unit-resolution @x1168 (unit-resolution (lemma @x1059 (or $x734 $x733 $x658)) @x711 @x1147 $x734) $x1164)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1823
(let ((@x647 (def-axiom (or $x314 $x644))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1824
(let ((@x1171 (unit-resolution @x647 @x1170 $x314)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1825
(let ((@x1193 ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x338 $x313 (not $x660) (not $x643) $x289))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1826
(let ((@x1218 (unit-resolution @x631 (unit-resolution @x1193 @x1171 @x1138 @x1078 @x1152 $x338) $x628)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1827
(let ((@x1129 ((_ th-lemma arith triangle-eq) (or (not $x628) $x663))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1828
(let ((@x1219 (unit-resolution @x1129 @x1218 $x663)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1829
(let (($x784 (not $x678)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1830
(let (($x745 (not $x675)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1831
(let ((@x845 (hypothesis $x389)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1832
(let ((@x803 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x388 (not $x775) (not $x603) $x463 $x784 (not $x611)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1833
(let ((@x1070 (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)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1834
(let ((@x1073 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x438 (not $x933) $x413 (not $x611) $x388)) @x845 @x799 @x844 @x1000 $x438)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1835
(let ((@x1077 (lemma (unit-resolution @x693 (unit-resolution @x599 @x1073 $x596) @x1070 false) (or $x388 $x463 $x413))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1836
(let ((@x1083 (unit-resolution ((_ th-lemma arith assign-bounds -1 1 -1 1 -1) (or $x745 (not $x603) $x463 (not $x1024) (not $x610) $x389)) (unit-resolution @x1077 @x688 @x844 $x388) @x812 @x687 @x688 @x1040 $x745)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1837
(let ((@x1085 (unit-resolution @x808 (unit-resolution @x615 (unit-resolution @x1077 @x688 @x844 $x388) $x612) $x673)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1838
(let ((@x1090 (unit-resolution @x950 (unit-resolution @x615 (unit-resolution @x1077 @x688 @x844 $x388) $x612) $x936)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1839
(let ((@x683 (hypothesis $x670)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1840
(let ((@x694 (unit-resolution @x693 (unit-resolution @x599 (hypothesis $x438) $x596) $x678)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1841
(let ((@x689 (hypothesis $x438)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1842
(let ((@x704 (hypothesis $x338)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1843
(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 (not $x338) $x706 $x439 $x707))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1844
(let ((@x1096 (unit-resolution @x709 (unit-resolution @x1094 @x1090 @x835 @x844 @x853 @x1089 $x338) @x1088 @x688 @x1085 $x439)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1845
(let ((@x1098 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x597) $x675)) (unit-resolution @x601 @x1096 $x597) @x1083 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1846
(let ((@x1132 (unit-resolution @x591 (unit-resolution (lemma @x1098 (or $x463 $x413)) @x844 $x463) $x588)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1847
(let ((@x1133 (unit-resolution @x725 @x1132 $x681)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1848
(let (($x1105 (>= ?x1103 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1849
(let ((@x1160 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1121 $x1105)) (hypothesis $x645) (hypothesis (not $x1105)) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1850
(let ((@x1161 (lemma @x1160 (or $x1121 $x1105))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1851
(let ((@x1173 (unit-resolution @x1161 (unit-resolution (def-axiom (or $x313 $x645)) @x1171 $x645) $x1105)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1852
(let ((@x850 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x847 $x780)) (unit-resolution @x617 @x845 $x613) $x780)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1853
(let ((@x1112 (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)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1854
(let ((@x1114 (unit-resolution @x631 (unit-resolution @x1094 @x1112 @x835 @x853 @x844 @x1089 $x338) $x628)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1855
(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)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1856
(let ((@x1119 (unit-resolution (lemma @x859 (or $x413 $x860 $x388 $x733 $x314)) (unit-resolution @x1117 @x1114 $x667) @x844 @x731 @x845 $x314)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1857
(let ((@x649 (def-axiom (or $x313 $x645))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1858
(let ((@x1124 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1121 $x1105)) (unit-resolution @x649 @x1119 $x645) $x1105)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1859
(let (($x635 (>= ?x357 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1860
(let ((@x1127 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x358) $x635)) @x561 $x635)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1861
(let ((@x1135 (unit-resolution @x893 (unit-resolution @x617 @x845 $x613) $x839)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1862
(let ((@x1139 (hypothesis $x660)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1863
(let ((@x1140 ((_ th-lemma arith farkas 1 -1 1 -1 -1 1 -1 -1 1 -1 1 -1 -2 2 1) @x835 @x1139 @x1138 @x1089 @x698 @x1135 @x715 @x711 @x720 (unit-resolution @x693 (unit-resolution @x599 @x1073 $x596) $x678) @x687 @x1133 (unit-resolution @x1129 @x1114 $x663) @x1127 @x1124 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1864
(let ((@x1174 (unit-resolution (lemma @x1140 (or $x388 (not $x660) $x658 $x413 $x733)) @x844 @x711 @x1152 @x1147 $x388)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1865
(let ((@x1154 ((_ 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) @x703 @x683 @x699 @x698 (hypothesis $x1105) @x1152 @x1138 @x715 @x711 @x720 @x868 @x687 @x869 @x1078 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1866
(let ((@x1177 (unit-resolution (lemma @x1154 (or (not $x1105) $x707 $x706 $x658 $x784 (not $x681) $x289)) (unit-resolution @x808 (unit-resolution @x615 @x1174 $x612) $x673) @x1173 @x711 @x1133 @x1088 @x1078 $x784)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1867
(let ((@x1179 (unit-resolution @x1094 @x1089 @x835 @x844 (unit-resolution @x950 (unit-resolution @x615 @x1174 $x612) $x936) @x853 $x338)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1868
(let ((@x1182 (unit-resolution @x1104 (unit-resolution @x1117 (unit-resolution @x631 @x1179 $x628) $x667) @x844 @x1078 $x438)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1869
(let ((@x1186 (lemma (unit-resolution @x693 (unit-resolution @x599 @x1182 $x596) @x1177 false) (or $x413 $x289 $x658))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1870
(let ((@x1222 (unit-resolution @x791 (unit-resolution @x607 (unit-resolution @x1186 @x711 @x1078 $x413) $x604) $x776)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1871
(let ((@x1189 (unit-resolution @x794 (unit-resolution @x607 (hypothesis $x413) $x604) $x775)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1872
(let ((@x1195 (unit-resolution @x631 (unit-resolution @x1193 (hypothesis $x314) @x1138 @x1078 @x1152 $x338) $x628)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1873
(let ((@x1190 (hypothesis $x314)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1874
(let ((@x1201 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x363 $x313 (not $x663) (not $x635) (not $x660) (not $x643)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1875
(let ((@x1202 (unit-resolution @x1201 (unit-resolution @x1129 @x1195 $x663) @x1138 @x1190 @x1152 @x1127 $x363)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1876
(let ((@x1187 (hypothesis $x413)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1877
(let ((@x1205 ((_ th-lemma arith farkas -1 1 -1 -1 -1 1 1 -1 1) @x1187 @x703 (unit-resolution @x926 (unit-resolution @x623 @x1202 $x620) $x670) @x1078 (unit-resolution @x1117 @x1195 $x667) @x857 @x763 @x799 @x1189 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1878
(let ((@x1207 (lemma @x1205 (or $x438 $x414 $x289 $x313))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1879
(let ((@x1223 (unit-resolution @x1207 (unit-resolution @x1186 @x711 @x1078 $x413) @x1078 @x1171 $x438)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1880
(let (($x818 (not $x610)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1881
(let (($x1199 (not $x635)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1882
(let (($x1198 (not $x663)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1883
(let (($x1191 (not $x643)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1884
(let (($x1141 (not $x660)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1885
(let (($x743 (not $x618)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1886
(let ((@x1226 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1 -1 1 1 -1 1 1 -1) (or $x706 $x743 $x313 $x1141 $x1191 $x817 $x1198 $x1199 $x439 $x818)) @x1171 @x698 @x1127 @x1138 @x812 @x1152 @x1223 @x1222 @x1219 $x706)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1887
(let ((@x1227 (unit-resolution @x794 (unit-resolution @x607 (unit-resolution @x1186 @x711 @x1078 $x413) $x604) $x775)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1888
(let ((@x1231 (unit-resolution @x623 (unit-resolution @x1201 @x1219 @x1138 @x1171 @x1152 @x1127 $x363) $x620)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1889
(let ((@x1208 (hypothesis $x840)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1890
(let ((@x1211 (unit-resolution @x591 (unit-resolution @x803 @x845 @x799 (hypothesis $x775) @x868 @x687 $x463) $x588)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1891
(let ((@x1213 (hypothesis $x663)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1892
(let ((@x1214 ((_ th-lemma arith farkas -1 -2 2 -1 1 1 -1 -1 1 -1 1 -1 -1 1 1) @x698 @x1213 @x1127 @x1139 @x1138 (hypothesis $x1105) @x715 @x711 @x720 (unit-resolution @x725 @x1211 $x681) @x835 @x1208 @x868 @x687 @x1135 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1893
(let ((@x1216 (lemma @x1214 (or $x388 $x1198 $x1141 (not $x1105) $x658 (not $x840) $x784 (not $x775)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1894
(let ((@x1233 (unit-resolution @x1216 @x1219 @x1152 @x1173 @x711 (unit-resolution @x865 @x1231 $x840) (unit-resolution @x693 (unit-resolution @x599 @x1223 $x596) $x678) @x1227 $x388)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1895
(let ((@x1237 (lemma (unit-resolution @x808 (unit-resolution @x615 @x1233 $x612) @x1226 false) (or $x658 $x289))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1896
(let (($x582 (not $x91)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1897
(let ((@x1267 (unit-resolution @x631 (unit-resolution @x1094 @x1112 @x835 @x844 @x1089 @x853 $x338) $x628)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1898
(let (($x672 (>= ?x680 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1899
(let ((@x1270 ((_ th-lemma arith triangle-eq) (or (not $x588) $x672))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1900
(let ((@x1271 (unit-resolution @x1270 @x1132 $x672)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1901
(let ((@x1272 (unit-resolution (lemma @x859 (or $x413 $x860 $x388 $x733 $x314)) (unit-resolution @x1117 @x1267 $x667) @x844 @x731 @x845 $x314)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1902
(let ((@x1276 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1121 $x1249)) (unit-resolution @x649 @x1272 $x645) $x1249)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1903
(let ((@x1250 (hypothesis $x780)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1904
(let ((@x1251 (hypothesis $x672)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1905
(let (($x594 (<= ?x482 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1906
(let ((@x1254 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x483) $x594)) @x556 $x594)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1907
(let ((@x1255 (hypothesis $x766)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1908
(let (($x651 (>= ?x332 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1909
(let ((@x1258 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x333) $x651)) @x563 $x651)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1910
(let ((@x1260 ((_ 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 $x1249) @x1258 @x1255 @x1254 @x1251 @x832 @x731 @x730 @x900 @x1250 @x853 @x858 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1911
(let ((@x1264 (lemma @x1260 (or $x657 $x707 $x1261 (not $x672) $x733 $x903 (not $x780) $x860))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1912
(let ((@x1277 (unit-resolution @x1264 @x1276 @x1088 @x1271 @x731 @x900 @x850 (unit-resolution @x1117 @x1267 $x667) $x657)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1913
(let ((@x1279 ((_ th-lemma arith triangle-eq) (or $x92 $x766 $x710))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1914
(let (($x570 (or $x582 $x583)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1915
(let ((@x578 (monotonicity (rewrite (= $x93 (not $x570))) (= (not $x93) (not (not $x570))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1916
(let ((@x568 (trans @x578 (rewrite (= (not (not $x570)) $x570)) (= (not $x93) $x570))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1917
(let ((@x569 (mp (not-or-elim (mp (asserted $x95) @x552 $x548) (not $x93)) @x568 $x570)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1918
(let ((@x1281 (unit-resolution @x569 (unit-resolution @x1279 @x1277 (hypothesis $x658) $x92) $x582)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1919
(let (($x654 (>= ?x652 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1920
(let (($x587 (>= ?x507 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1921
(let ((@x555 (and-elim @x554 $x508)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1922
(let ((@x1286 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x508) $x587)) @x555 $x587)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1923
(let ((?x1144 (+ x2$ ?x506)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1924
(let (($x1238 (<= ?x1144 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1925
(let (($x584 (= x2$ ?x495)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1926
(let ((@x1288 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x488 (not $x595) $x413 $x784 (not $x603) (not $x681)))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1927
(let ((@x573 (def-axiom (or (not $x488) $x584))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1928
(let ((@x1290 (unit-resolution @x573 (unit-resolution @x1288 @x868 @x687 @x844 @x1133 @x720 $x488) $x584)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1929
(let ((@x1293 ((_ th-lemma arith triangle-eq) (or (not $x584) $x1238))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1930
(let ((@x1295 ((_ 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 @x1293 @x1290 $x1238) @x720 @x1133 @x1286 @x1089 @x731 @x730 @x835 @x1040 @x812 @x850 @x853 (unit-resolution @x1161 (unit-resolution @x649 @x1272 $x645) $x1105) @x715 @x1277 @x687 @x868 $x654)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1931
(let (($x586 (<= ?x507 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1932
(let ((@x1298 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x508) $x586)) @x555 $x586)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1933
(let (($x1239 (>= ?x1144 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1934
(let ((@x1300 ((_ th-lemma arith triangle-eq) (or (not $x584) $x1239))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1935
(let ((@x1302 ((_ 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 @x1300 @x1290 $x1239) @x1254 @x1271 @x1298 @x1088 @x1139 @x1138 @x703 @x1000 @x799 @x1135 @x698 @x1276 @x1258 (hypothesis $x658) @x832 @x900 $x653)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1936
(let ((@x1306 ((_ th-lemma arith triangle-eq) (or $x91 (not $x653) (not $x654)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1937
(let ((@x1309 (lemma (unit-resolution @x1306 @x1302 @x1295 @x1281 false) (or $x388 $x1141 $x710 $x903 $x733 $x784 $x413))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1938
(let ((@x1331 (unit-resolution @x1309 (unit-resolution @x828 @x1327 $x669) (unit-resolution @x1237 @x1078 $x658) @x1152 @x1147 (unit-resolution @x693 @x1327 $x678) @x844 $x388)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1939
(let (($x1304 (not $x654)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1940
(let ((@x1333 (unit-resolution @x950 (unit-resolution @x615 @x1331 $x612) $x936)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1941
(let ((@x1338 (unit-resolution @x631 (unit-resolution @x1094 @x1333 @x835 @x844 @x1089 @x853 $x338) $x628)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1942
(let ((@x1339 (unit-resolution @x1117 @x1338 $x667)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1943
(let ((@x1315 (unit-resolution @x631 (unit-resolution @x1094 @x1029 @x835 @x844 @x1089 @x853 $x338) $x628)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1944
(let ((@x1317 ((_ th-lemma arith farkas -1 -1 -1 1 -1 1 -1 1 1) @x1026 (hypothesis $x313) @x731 @x730 @x853 @x844 (unit-resolution @x1117 @x1315 $x667) @x857 @x1029 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1945
(let ((@x1340 (unit-resolution (lemma @x1317 (or $x314 $x389 $x733 $x413)) @x1331 @x1147 @x844 $x314)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1946
(let ((@x1311 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1121 $x1249)) (hypothesis $x645) (hypothesis $x1261) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1947
(let ((@x1312 (lemma @x1311 (or $x1121 $x1249))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1948
(let ((@x1343 (unit-resolution @x1264 (unit-resolution @x1312 (unit-resolution @x649 @x1340 $x645) $x1249) @x1339 @x1271 @x1147 (unit-resolution @x828 @x1327 $x669) (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x780 $x389 (not $x936))) @x1333 @x1331 $x780) @x1088 $x657)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1949
(let ((@x1345 (unit-resolution @x569 (unit-resolution @x1279 @x1343 (unit-resolution @x1237 @x1078 $x658) $x92) $x582)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1950
(let ((@x1346 (unit-resolution @x1288 (unit-resolution @x693 @x1327 $x678) @x687 @x844 @x1133 @x720 $x488)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1951
(let ((@x1320 (hypothesis (not $x653))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1952
(let ((@x1322 ((_ th-lemma arith farkas 1 -1 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 1) @x683 @x703 @x858 @x857 @x699 @x1152 @x1138 @x698 (hypothesis $x1239) @x1254 @x1251 @x1298 @x1320 (hypothesis $x933) @x799 @x1078 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1953
(let ((@x1325 (lemma @x1322 (or $x653 $x707 $x860 $x706 (not $x1239) (not $x672) (not $x933) $x289))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1954
(let ((@x1350 (unit-resolution @x1325 @x1088 @x1339 (unit-resolution @x808 (unit-resolution @x615 @x1331 $x612) $x673) (unit-resolution @x1300 (unit-resolution @x573 @x1346 $x584) $x1239) @x1271 @x1000 @x1078 $x653)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1955
(let ((@x1353 ((_ 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) @x1333 @x1147 @x730 @x853 @x1339 @x857 (unit-resolution @x1293 (unit-resolution @x573 @x1346 $x584) $x1238) @x720 @x1133 @x1286 (unit-resolution @x1306 @x1350 @x1345 $x1304) @x1040 @x812 @x1331 false)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1956
(let ((@x641 (def-axiom (or $x288 $x637))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1957
(let ((@x1399 (unit-resolution @x641 (unit-resolution (lemma @x1353 (or $x413 $x289)) @x844 $x289) $x637)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1958
(let ((@x1405 ((_ th-lemma arith triangle-eq) (or (not $x637) $x1369))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1959
(let ((@x1406 (unit-resolution @x1405 @x1399 $x1369)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1960
(let ((@x1370 (hypothesis $x289)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1961
(let ((@x1373 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x1198 (not $x840) $x1199 $x288 (not $x627) $x388)) @x845 @x1127 @x1370 @x866 @x835 $x1198)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1962
(let ((@x1376 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x338 $x364 (not $x840) (not $x627) $x388)) @x845 @x835 @x841 @x866 $x338)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1963
(let ((@x1380 (lemma (unit-resolution @x1129 (unit-resolution @x631 @x1376 $x628) @x1373 false) (or $x388 $x364 $x288))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1964
(let ((@x1390 (unit-resolution @x1380 (unit-resolution (lemma @x1064 (or $x363 $x413)) @x844 $x363) (unit-resolution (lemma @x1353 (or $x413 $x289)) @x844 $x289) $x388)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1965
(let ((@x1392 (unit-resolution @x950 (unit-resolution @x615 @x1390 $x612) $x936)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1966
(let ((@x1395 (unit-resolution (unit-resolution @x1094 @x835 @x853 (or $x338 (not $x840) (not $x936) $x413)) @x1392 @x844 @x1089 $x338)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1967
(let ((@x1397 (unit-resolution @x1117 (unit-resolution @x631 @x1395 $x628) $x667)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1968
(let ((@x1398 (unit-resolution @x808 (unit-resolution @x615 @x1390 $x612) $x673)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1969
(let (($x1360 (<= ?x1356 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1970
(let ((@x1402 ((_ th-lemma arith triangle-eq) (or (not $x637) $x1360))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1971
(let ((@x1403 (unit-resolution @x1402 @x1399 $x1360)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1972
(let ((@x1407 (unit-resolution @x1129 (unit-resolution @x631 @x1395 $x628) $x663)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1973
(let ((@x1411 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 2) (or $x488 (not $x595) $x413 (not $x603) $x745 (not $x681) $x438)) @x687 @x720 (or $x488 $x413 $x745 (not $x681) $x438))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1974
(let ((@x1413 (unit-resolution @x573 (unit-resolution @x1411 @x941 @x1133 @x844 @x763 $x488) $x584)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1975
(let (($x958 (not $x619)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1976
(let (($x957 (not $x936)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1977
(let (($x1091 (not $x627)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1978
(let (($x1092 (not $x840)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1979
(let (($x814 (not $x642)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1980
(let (($x1386 (not $x1369)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1981
(let (($x1080 (not $x1024)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1982
(let (($x871 (not $x681)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1983
(let (($x1416 (not $x587)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1984
(let (($x815 (not $x595)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1985
(let (($x1415 (not $x1238)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1986
(let (($x1417 (or $x654 $x1415 $x815 $x1416 $x871 $x1080 $x818 $x1386 $x814 $x1092 $x1091 $x957 $x958 $x1198 $x1199)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1987
(let ((@x1419 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1 1 -1 1 2 -2 1 -1 1 -1) $x1417) (unit-resolution @x1293 @x1413 $x1238) @x812 @x853 @x835 @x1127 @x730 @x1286 @x1133 @x1392 @x1089 @x1040 @x1407 @x1406 @x720 $x654)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1988
(let (($x1424 (not $x634)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1989
(let (($x742 (not $x626)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1990
(let (($x1423 (not $x1360)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1991
(let (($x801 (not $x611)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1992
(let (($x1002 (not $x933)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1993
(let (($x1262 (not $x672)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1994
(let (($x1422 (not $x586)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1995
(let (($x1421 (not $x594)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1996
(let (($x1323 (not $x1239)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1997
(let (($x1425 (or $x653 $x1323 $x1421 $x1422 $x1262 $x1002 $x801 $x1423 $x1191 $x707 $x742 $x706 $x743 $x860 $x1424)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1998
(let ((@x1426 ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1 1 -1 1 2 -2 1 -1 1 -1) $x1425)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  1999
(let ((@x1427 (unit-resolution @x1426 (unit-resolution @x1300 @x1413 $x1239) @x799 @x698 @x703 @x857 @x1138 @x1298 @x1398 @x1088 @x1397 @x1271 @x1000 @x1254 @x1403 $x653)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2000
(let ((@x1431 ((_ th-lemma arith assign-bounds 1 1 2 2 1 1 1 1 1 1 1) (or $x313 $x1423 $x1191 $x707 $x742 $x706 $x743 $x1002 $x801 $x438 $x860 $x1424))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2001
(let ((@x1432 (unit-resolution @x1431 @x763 @x698 @x703 @x857 @x1138 @x799 @x1398 @x1088 @x1397 @x1000 @x1403 $x313)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2002
(let ((@x1382 (hypothesis $x675)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2003
(let ((@x1385 ((_ th-lemma arith farkas -1 1 1 -1 1 -1 -2 2 -1 1 3 -3 1 -1 2 -2 1) @x716 @x715 @x711 @x720 @x869 @x687 (hypothesis $x1024) @x812 (hypothesis $x1369) @x730 @x1208 @x835 @x1001 @x853 @x1213 @x1127 @x1382 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2004
(let ((@x1435 (unit-resolution (lemma @x1385 (or $x658 $x734 $x871 $x1080 $x1386 $x1092 $x957 $x1198 $x745)) (unit-resolution @x1168 (unit-resolution @x647 @x1432 $x644) $x664) @x1133 @x1040 @x1406 @x1089 @x1392 @x1407 @x941 $x658)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2005
(let ((@x1436 (unit-resolution @x1279 @x1435 (unit-resolution @x569 (unit-resolution @x1306 @x1427 @x1419 $x91) $x583) $x766)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2006
(let ((@x1438 ((_ th-lemma arith triangle-eq) (or $x1164 $x1381))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2007
(let ((@x1440 ((_ th-lemma arith farkas -1 1 1 -1 1 -1 -2 2 -1 1 3 -3 1 -1 2 -2 1) (unit-resolution @x1438 (unit-resolution @x647 @x1432 $x644) $x1381) @x1258 @x1436 @x1254 @x1271 @x832 @x1000 @x799 @x1403 @x1138 @x1088 @x703 @x1398 @x698 @x1397 @x857 @x966 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2008
(let ((@x1453 (unit-resolution @x599 (unit-resolution (lemma @x1440 (or $x438 $x413)) @x844 $x438) $x596)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2009
(let ((@x1455 (unit-resolution @x693 @x1453 $x678)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2010
(let ((@x1458 (unit-resolution (unit-resolution @x1288 @x687 @x720 (or $x488 $x413 $x784 $x871)) @x1455 @x844 @x1133 $x488)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2011
(let ((@x1461 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1 1 -1 1 2 -2 1 -1 1 -1) $x1417) (unit-resolution @x1293 (unit-resolution @x573 @x1458 $x584) $x1238) @x812 @x853 @x835 @x1127 @x730 @x720 @x1133 @x1392 @x1089 @x1040 @x1407 @x1406 @x1286 $x654)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2012
(let ((@x1463 (unit-resolution @x1426 (unit-resolution @x1300 (unit-resolution @x573 @x1458 $x584) $x1239) @x799 @x698 @x703 @x857 @x1138 @x1254 @x1398 @x1088 @x1397 @x1271 @x1000 @x1298 @x1403 $x653)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2013
(let ((@x1468 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x675 $x439 $x784)) @x1455 (unit-resolution (lemma @x1440 (or $x438 $x413)) @x844 $x438) $x675)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2014
(let ((@x1443 (unit-resolution (lemma @x1385 (or $x658 $x734 $x871 $x1080 $x1386 $x1092 $x957 $x1198 $x745)) @x711 @x869 (hypothesis $x1024) (hypothesis $x1369) @x1208 @x1001 @x1213 @x1382 $x734)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2015
(let ((@x1446 (unit-resolution @x649 (unit-resolution @x647 (unit-resolution @x1168 @x1443 $x1164) $x314) $x645)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2016
(let ((@x1449 ((_ th-lemma arith farkas -1 -1 -1 1 1 -1 1 -1 -1 1 1 -1 1) @x715 @x711 @x868 @x687 @x720 @x869 @x683 @x703 (hypothesis $x1360) @x1138 @x699 @x698 (unit-resolution @x1161 @x1446 $x1105) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2017
(let ((@x1451 (lemma @x1449 (or $x658 $x784 $x871 $x707 $x1423 $x706 $x1080 $x1386 $x1092 $x957 $x1198 $x745))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2018
(let ((@x1469 (unit-resolution @x1451 @x1455 @x1133 @x1088 @x1403 @x1398 @x1040 @x1406 @x1089 @x1392 @x1407 @x1468 $x658)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2019
(let ((@x1470 (unit-resolution @x1279 @x1469 (unit-resolution @x569 (unit-resolution @x1306 @x1463 @x1461 $x91) $x583) $x766)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2020
(let (($x1472 (not $x602)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2021
(let (($x1471 (not $x651)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2022
(let (($x1473 (or $x1261 $x1471 $x657 $x903 $x1472 $x1421 $x1262 $x1092 $x1091 $x1386 $x814 $x957 $x958)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2023
(let ((@x1475 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1 -1 1 1 -1 1 -1 -1 1 1 -1) $x1473) @x1470 @x853 @x835 @x730 @x1258 @x832 (unit-resolution @x828 @x1453 $x669) @x1271 @x1392 @x1089 @x1254 @x1406 $x1261)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2024
(let ((@x1478 (unit-resolution @x647 (unit-resolution @x649 (unit-resolution @x1312 @x1475 $x1121) $x313) $x644)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2025
(let ((@x1480 ((_ th-lemma arith farkas -1 -1 -2 -1 1 1 -1 1 -1 -1 1 1 -1 1) @x1258 @x1470 (unit-resolution @x649 (unit-resolution @x1312 @x1475 $x1121) $x313) (unit-resolution @x828 @x1453 $x669) @x832 @x1254 @x1271 @x1089 @x835 @x1406 @x730 @x1392 @x853 (unit-resolution @x1438 @x1478 $x1381) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2026
(let ((@x1481 (lemma @x1480 $x413)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2027
(let ((@x1538 (unit-resolution @x791 (unit-resolution @x607 @x1481 $x604) $x776)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2028
(let ((?x666 (+ ?x201 ?x356)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2029
(let (($x1699 (>= ?x666 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2030
(let (($x629 (= ?x201 ?x345)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2031
(let (($x339 (not $x338)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2032
(let ((@x1701 (hypothesis $x339)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2033
(let ((@x633 (def-axiom (or $x338 $x629))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2034
(let ((@x1712 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x629) $x1699)) (unit-resolution @x633 @x1701 $x629) $x1699)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2035
(let (($x875 (<= ?x666 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2036
(let ((@x1635 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x629) $x875)) (hypothesis $x629) (hypothesis (not $x875)) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2037
(let ((@x1636 (lemma @x1635 (or (not $x629) $x875))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2038
(let ((@x1703 (unit-resolution @x1636 (unit-resolution @x633 @x1701 $x629) $x875)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2039
(let (($x1632 (not $x629)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2040
(let (($x1629 (not $x875)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2041
(let ((@x1517 (unit-resolution @x794 (unit-resolution @x607 @x1481 $x604) $x775)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2042
(let ((@x1359 (lemma ((_ th-lemma arith farkas 1 1 1 1 1) @x1187 @x799 @x763 @x845 @x1189 false) (or $x438 $x414 $x388))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2043
(let ((@x1520 (unit-resolution @x693 (unit-resolution @x599 (unit-resolution @x1359 @x845 @x1481 $x438) $x596) $x678)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2044
(let ((@x1523 (unit-resolution (unit-resolution @x803 @x799 @x687 (or $x388 (not $x775) $x463 $x784)) @x1520 @x1517 @x845 $x463)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2045
(let ((@x1525 (unit-resolution @x1270 (unit-resolution @x591 @x1523 $x588) $x672)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2046
(let ((@x1526 (unit-resolution @x828 (unit-resolution @x599 (unit-resolution @x1359 @x845 @x1481 $x438) $x596) $x669)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2047
(let ((@x1365 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x779 $x364 $x1092)) (unit-resolution @x625 (unit-resolution @x909 @x906 $x823) $x363) @x906 $x1092)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2048
(let ((@x1366 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x909 @x906 $x823) $x363) $x620)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2049
(let ((@x1368 (lemma (unit-resolution @x865 @x1366 @x1365 false) $x779)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2050
(let ((@x1486 (unit-resolution ((_ th-lemma arith assign-bounds -1 1 -1 1 -1) (or $x902 $x1091 $x338 $x872 $x743 $x414)) @x835 @x1368 @x698 (or $x338 $x872 $x414))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2051
(let ((@x1489 (unit-resolution @x1129 (unit-resolution @x631 (unit-resolution @x1486 @x1135 @x1481 $x338) $x628) $x663)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2052
(let ((@x1491 ((_ th-lemma arith assign-bounds 1 2 2 2 2 2) (or $x872 $x957 $x1198 $x1092 $x1199 $x288 $x1091))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2053
(let ((@x1495 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x840 $x670)) (unit-resolution @x1491 @x1370 @x1127 @x835 @x1135 @x1112 @x1489 $x1092) $x670)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2054
(let ((@x1500 (unit-resolution (unit-resolution ((_ th-lemma arith assign-bounds 2 1) (or $x707 $x363 $x902)) @x1368 (or $x707 $x363)) @x1495 (unit-resolution @x1380 @x1370 @x845 $x364) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2055
(let ((@x1509 (unit-resolution @x639 (unit-resolution (lemma @x1500 (or $x288 $x388)) @x845 $x288) $x636)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2056
(let ((@x1510 (unit-resolution @x1151 @x1509 $x660)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2057
(let ((@x1508 (unit-resolution @x1237 (unit-resolution (lemma @x1500 (or $x288 $x388)) @x845 $x288) $x658)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2058
(let (($x585 (= ?x98 ?x495)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2059
(let (($x1546 (not $x585)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2060
(let ((?x1504 (+ ?x98 ?x506)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2061
(let (($x1506 (>= ?x1504 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2062
(let (($x1558 (not $x1506)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2063
(let ((@x1572 (unit-resolution @x1129 (unit-resolution @x631 (unit-resolution @x1486 @x867 @x1481 $x338) $x628) $x663)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2064
(let (($x800 (not $x775)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2065
(let (($x744 (not $x603)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2066
(let (($x1559 (or $x653 $x1558 $x784 $x744 $x815 $x871 $x1422 $x800 $x801 $x1141 $x1191 $x743 $x1198 $x1199 $x872)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2067
(let ((@x1573 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 2 1 -1 -1 -1 1 -1 1 -1 -1 1 1) $x1559) @x1320 @x687 @x799 @x698 @x1127 @x1138 @x720 @x1139 @x868 @x1517 @x869 @x867 @x1572 @x1298 $x1558)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2068
(let ((@x1568 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1546 $x1506)) (hypothesis $x585) (hypothesis $x1558) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2069
(let ((@x1569 (lemma @x1568 (or $x1546 $x1506))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2070
(let ((@x575 (def-axiom (or $x488 $x585))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2071
(let ((@x1576 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1569 @x1573 $x1546) $x488) $x584)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2072
(let ((@x1578 ((_ 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) @x698 @x867 @x1139 @x1138 @x1572 @x1127 (unit-resolution @x1300 @x1576 $x1239) @x1298 @x1320 @x1517 @x799 @x1254 @x1251 @x1481 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2073
(let ((@x1580 (lemma @x1578 (or $x653 $x872 $x1141 $x1262 $x784 $x871))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2074
(let ((@x1593 (unit-resolution @x1580 @x1135 @x1510 @x1525 @x1520 (unit-resolution @x725 (unit-resolution @x591 @x1523 $x588) $x681) $x653)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2075
(let ((@x1537 (unit-resolution @x1117 (unit-resolution @x631 (unit-resolution @x1486 @x1135 @x1481 $x338) $x628) $x667)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2076
(let ((@x1539 (unit-resolution @x1146 @x1509 $x661)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2077
(let (($x1505 (<= ?x1504 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2078
(let (($x1550 (not $x1505)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2079
(let (($x1106 (not $x780)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2080
(let (($x1551 (or $x654 $x1550 $x903 $x1472 $x1421 $x1262 $x1416 $x817 $x818 $x733 $x814 $x958 $x860 $x1424 $x1106)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2081
(let ((@x1585 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 2 1 -1 -1 -1 1 -1 1 -1 -1 1 1) $x1551) (hypothesis $x1304) @x832 @x812 @x853 @x857 @x730 @x1254 @x731 @x1538 @x858 @x1250 @x900 @x1251 @x1286 $x1550)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2082
(let ((@x1582 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1546 $x1505)) (hypothesis $x585) (hypothesis $x1550) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2083
(let ((@x1583 (lemma @x1582 (or $x1546 $x1505))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2084
(let ((@x1588 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1583 @x1585 $x1546) $x488) $x584)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2085
(let ((@x1590 ((_ 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) @x853 @x1250 @x900 @x832 @x1254 @x1251 @x731 @x730 @x858 @x857 (unit-resolution @x1293 @x1588 $x1238) @x1286 (hypothesis $x1304) @x1538 @x812 (unit-resolution @x575 (unit-resolution @x1583 @x1585 $x1546) $x488) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2086
(let ((@x1592 (lemma @x1590 (or $x654 $x1106 $x903 $x1262 $x733 $x860))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2087
(let ((@x1595 (unit-resolution @x1306 (unit-resolution @x1592 @x850 @x1526 @x1525 @x1539 @x1537 $x654) @x1593 $x91)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2088
(let ((@x1513 (unit-resolution (unit-resolution @x1201 @x1138 @x1127 (or $x363 $x313 $x1198 $x1141)) @x1027 @x1489 @x1510 $x313)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2089
(let (($x1503 (>= ?x778 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2090
(let ((@x1530 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x823 $x1503)) (unit-resolution @x625 @x1027 $x621) $x1503)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2091
(let (($x1532 (not $x1381)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2092
(let (($x1531 (not $x1503)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2093
(let (($x1533 (or $x657 $x1531 $x1532 $x1471 $x742 $x903 $x1472 $x1421 $x1262 $x1141 $x1191 $x958 $x1106)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2094
(let ((@x1534 ((_ th-lemma arith assign-bounds 1 -1 1 -1 1 -1 -1 1 -1 1 1 -1) $x1533)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2095
(let ((@x1535 (unit-resolution @x1534 @x1530 @x853 @x703 @x1138 @x1258 @x1254 @x1510 @x850 @x1526 @x1525 @x832 (unit-resolution @x1438 (unit-resolution @x647 @x1513 $x644) $x1381) $x657)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2096
(let (($x489 (not $x488)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2097
(let ((@x1543 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x489 $x1262 $x1421 $x1472 $x903 $x363 $x958 $x388 $x1106)) @x832 @x853 @x1254 (or $x489 $x1262 $x903 $x363 $x388 $x1106))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2098
(let ((@x1545 (unit-resolution @x575 (unit-resolution @x1543 @x1027 @x845 @x850 @x1526 @x1525 $x489) $x585)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2099
(let ((@x1553 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 2 1 -1 -1 -1 1 -1 1 -1 -1 1 1) $x1551) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1546 $x1505)) @x1545 $x1505) @x832 @x812 @x853 @x857 @x730 @x1286 @x1539 @x1538 @x1537 @x850 @x1526 @x1525 @x1254 $x654)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2100
(let ((@x1561 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 2 1 -1 -1 -1 1 -1 1 -1 -1 1 1) $x1559) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1546 $x1506)) @x1545 $x1506) @x687 @x799 @x698 @x1127 @x1138 @x1298 @x1510 @x1520 @x1517 (unit-resolution @x725 (unit-resolution @x591 @x1523 $x588) $x681) @x1135 @x1489 @x720 $x653)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2101
(let ((@x1563 (unit-resolution @x569 (unit-resolution @x1306 @x1561 @x1553 $x91) (unit-resolution @x1279 @x1535 @x1508 $x92) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2102
(let ((@x1599 (unit-resolution @x623 (unit-resolution (lemma @x1563 (or $x363 $x388)) @x845 $x363) $x620)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2103
(let ((@x1601 (unit-resolution @x1264 (unit-resolution @x1279 (unit-resolution @x569 @x1595 $x583) @x1508 $x766) @x1537 @x1525 @x1539 @x1526 @x850 (unit-resolution @x926 @x1599 $x670) $x1261)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2104
(let ((@x1604 (unit-resolution @x647 (unit-resolution @x649 (unit-resolution @x1312 @x1601 $x1121) $x313) $x644)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2105
(let ((@x1608 (unit-resolution ((_ th-lemma arith assign-bounds -2 2 -2 2 -1 -2) (or $x1503 $x733 $x814 $x860 $x1424 $x707 $x314)) (unit-resolution @x649 (unit-resolution @x1312 @x1601 $x1121) $x313) @x730 @x1539 (unit-resolution @x926 @x1599 $x670) @x1537 @x857 $x1503)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2106
(let ((@x1609 (unit-resolution @x1534 @x1608 (unit-resolution @x1438 @x1604 $x1381) @x853 @x703 @x1138 @x1258 (unit-resolution @x1279 (unit-resolution @x569 @x1595 $x583) @x1508 $x766) @x1510 @x850 @x1526 @x1525 @x832 @x1254 false)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2107
(let ((@x1610 (lemma @x1609 $x388)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2108
(let ((@x1637 ((_ th-lemma arith assign-bounds -1 -1 1 1 -1) (or $x1629 $x1199 $x1531 $x742 $x288 $x389))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2109
(let ((@x1639 (unit-resolution @x1636 (unit-resolution @x1637 @x1530 @x1127 @x1370 @x1610 @x703 $x1629) $x1632)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2110
(let ((@x1642 (unit-resolution @x1129 (unit-resolution @x631 (unit-resolution @x633 @x1639 $x338) $x628) $x663)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2111
(let ((@x1643 ((_ th-lemma arith farkas 1 1 1 1 1) @x1370 @x1642 @x1127 @x1027 (unit-resolution @x633 @x1639 $x338) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2112
(let ((@x1645 (lemma @x1643 (or $x363 $x288))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2113
(let ((@x889 (unit-resolution @x926 (unit-resolution @x623 (unit-resolution @x1645 @x1370 $x363) $x620) $x670)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2114
(let ((@x890 (unit-resolution @x865 (unit-resolution @x623 (unit-resolution @x1645 @x1370 $x363) $x620) $x840)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2115
(let ((@x1650 (unit-resolution @x623 (unit-resolution @x1645 (unit-resolution @x1237 @x711 $x289) $x363) $x620)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2116
(let ((@x1672 (unit-resolution @x950 (unit-resolution @x615 @x1610 $x612) $x936)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2117
(let ((@x1648 (unit-resolution @x1237 @x711 $x289)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2118
(let ((@x1647 (hypothesis $x875)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2119
(let ((@x1617 (unit-resolution @x808 (unit-resolution @x615 @x1610 $x612) $x673)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2120
(let ((@x1651 (unit-resolution @x926 @x1650 $x670)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2121
(let ((@x1656 ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x313 $x1191 $x1423 $x288 $x707 $x706 $x414 $x743 $x742))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2122
(let ((@x1657 (unit-resolution @x1656 @x1648 @x703 @x698 @x1138 @x1481 @x1617 @x1651 (unit-resolution @x1402 (unit-resolution @x641 @x1648 $x637) $x1360) $x313)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2123
(let ((@x1660 ((_ th-lemma arith assign-bounds -1 1 1 -1 -1 1 -1 -1 -3 3 1 1 2 -2 -2 2) (unit-resolution @x1168 (unit-resolution @x647 @x1657 $x644) $x664) @x715 @x711 @x687 @x720 @x730 (unit-resolution @x1405 (unit-resolution @x641 @x1648 $x637) $x1369) @x1651 @x1617 @x698 @x703 @x1382 @x1647 @x1127 @x1538 @x812 $x871)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2124
(let ((@x1662 ((_ th-lemma arith assign-bounds 1 1 1 2 2 1 1 1 1 1 1) (or $x463 $x744 $x745 $x707 $x706 $x743 $x742 $x1629 $x1199 $x288 $x817 $x818))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2125
(let ((@x1663 (unit-resolution @x1662 @x1647 @x812 @x698 @x703 @x1127 @x1648 @x1617 @x1651 @x1382 @x1538 @x687 $x463)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2126
(let ((@x1667 (lemma (unit-resolution @x725 (unit-resolution @x591 @x1663 $x588) @x1660 false) (or $x1629 $x658 $x745))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2127
(let ((@x1669 (unit-resolution @x633 (unit-resolution @x1636 (unit-resolution @x1667 @x941 @x711 $x1629) $x1632) $x338)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2128
(let ((@x1675 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x463 $x707 $x339 $x742 $x706 $x743 $x744 $x745 $x438)) @x687 @x698 @x703 (or $x463 $x707 $x339 $x706 $x745 $x438))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2129
(let ((@x1677 (unit-resolution @x591 (unit-resolution @x1675 @x1669 @x1651 @x941 @x1617 @x763 $x463) $x588)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2130
(let ((@x1681 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 -2 -2 2 2) (or $x1024 $x817 $x339 $x707 $x706 $x743 $x742)) @x1669 @x703 @x1617 @x1651 @x1538 @x698 $x1024)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2131
(let ((@x1682 (unit-resolution @x1451 @x1681 (unit-resolution @x725 @x1677 $x681) @x711 (unit-resolution @x1402 (unit-resolution @x641 @x1648 $x637) $x1360) @x1651 @x1617 @x941 (unit-resolution @x1405 (unit-resolution @x641 @x1648 $x637) $x1369) (unit-resolution @x865 @x1650 $x840) @x1672 (unit-resolution @x1129 (unit-resolution @x631 @x1669 $x628) $x663) @x944 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2132
(let ((@x1688 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 2 -2 -2 2) (or $x1503 $x707 $x706 $x743 $x439 $x817 $x818)) @x1651 @x698 @x1617 @x812 @x1538 (unit-resolution (lemma @x1682 (or $x438 $x658)) @x711 $x438) $x1503)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2133
(let ((@x1690 (unit-resolution @x1636 (unit-resolution @x1637 @x1688 @x1127 @x1648 @x1610 @x703 $x1629) $x1632)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2134
(let ((@x1693 (unit-resolution @x1129 (unit-resolution @x631 (unit-resolution @x633 @x1690 $x338) $x628) $x663)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2135
(let ((@x1696 (unit-resolution ((_ th-lemma arith assign-bounds -3 -2 -2 2 2 -2 -2 2) (or $x839 $x706 $x339 $x707 $x742 $x743 $x439 $x817 $x818)) (unit-resolution @x633 @x1690 $x338) @x698 @x703 @x812 @x1617 @x1651 @x1538 (unit-resolution (lemma @x1682 (or $x438 $x658)) @x711 $x438) $x839)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2136
(let ((@x1697 (unit-resolution @x1491 @x1696 @x1693 @x1127 @x835 @x1648 @x1672 (unit-resolution @x865 @x1650 $x840) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2137
(let ((@x1698 (lemma @x1697 $x658)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2138
(let ((@x1612 (unit-resolution @x1402 (unit-resolution @x641 @x1370 $x637) $x1360)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2139
(let ((@x1741 (unit-resolution (unit-resolution @x960 @x853 @x799 (or $x363 $x957 $x438 $x800)) @x763 @x1672 @x1517 $x363)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2140
(let ((@x1743 (unit-resolution @x926 (unit-resolution @x623 @x1741 $x620) $x670)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2141
(let ((@x1700 (hypothesis $x932)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2142
(let ((@x1704 (unit-resolution @x1662 @x1703 @x812 @x698 @x703 @x1127 @x1370 @x1617 @x683 @x1382 @x1538 @x687 $x463)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2143
(let ((@x1708 (unit-resolution @x647 (unit-resolution @x1656 @x1612 @x703 @x698 @x1138 @x1481 @x1617 @x683 @x1370 $x313) $x644)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2144
(let ((@x1709 (unit-resolution @x1438 @x1708 $x1381)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2145
(let ((@x1713 ((_ th-lemma arith assign-bounds 1 -1 -3/2 3/2 -1 1 -1/2 1/2 -1/2 -1/2 1/2 1/2 -1/2 -1/2 1/2 1/2) @x1712 @x857 @x1672 @x853 @x1517 @x799 @x1709 @x1258 @x832 @x1254 (unit-resolution @x1270 (unit-resolution @x591 @x1704 $x588) $x672) @x1138 @x1612 @x1208 @x835 @x1700 $x657)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2146
(let ((@x1718 (unit-resolution ((_ th-lemma arith assign-bounds 2 1 1 1 1 1 1) (or $x488 $x288 $x1532 $x1471 $x710 $x1191 $x1423 $x338)) @x1701 @x1370 @x1138 @x1258 @x1698 @x1612 @x1709 $x488)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2147
(let (($x1723 (not $x932)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2148
(let (($x1724 (or $x654 $x1415 $x1416 $x1532 $x1471 $x710 $x1472 $x1723 $x1092 $x957 $x958 $x1091 $x815 $x871 $x814 $x1386)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2149
(let ((@x1726 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1/2 -1/2 -1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 -1/2 1/2 1/2 -1/2) $x1724) (unit-resolution @x725 (unit-resolution @x591 @x1704 $x588) $x681) @x832 @x853 @x835 @x730 @x1258 @x1286 @x1698 @x720 @x1672 @x1700 @x1208 (unit-resolution @x1405 (unit-resolution @x641 @x1370 $x637) $x1369) (unit-resolution @x1293 (unit-resolution @x573 @x1718 $x584) $x1238) @x1709 $x654)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2150
(let (($x816 (not $x650)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2151
(let (($x1729 (or $x653 $x1323 $x1422 $x734 $x816 $x766 $x744 $x745 $x707 $x706 $x743 $x742 $x1421 $x1262 $x1191 $x1423)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2152
(let ((@x1731 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1/2 -1/2 -1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 -1/2 1/2 1/2 -1/2) $x1729) @x1713 @x687 @x698 @x703 @x1138 @x715 @x1298 @x1254 (unit-resolution @x1168 @x1708 $x664) @x1617 @x683 @x1382 (unit-resolution @x1270 (unit-resolution @x591 @x1704 $x588) $x672) (unit-resolution @x1300 (unit-resolution @x573 @x1718 $x584) $x1239) @x1612 $x653)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2153
(let ((@x1732 (unit-resolution @x1306 @x1731 @x1726 (unit-resolution @x569 (unit-resolution @x1279 @x1713 @x1698 $x92) $x582) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2154
(let ((@x1734 (lemma @x1732 (or $x338 $x707 $x745 $x1723 $x1092 $x288))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2155
(let ((@x1745 (unit-resolution @x1734 @x1370 @x941 @x966 (unit-resolution @x865 (unit-resolution @x623 @x1741 $x620) $x840) @x1743 $x338)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2156
(let ((@x1747 (unit-resolution @x591 (unit-resolution @x1675 @x1745 @x763 @x941 @x1617 @x1743 $x463) $x588)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2157
(let ((@x1750 (unit-resolution @x647 (unit-resolution @x1656 @x1612 @x703 @x698 @x1138 @x1481 @x1617 @x1743 @x1370 $x313) $x644)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2158
(let ((@x1751 (unit-resolution @x1438 @x1750 $x1381)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2159
(let ((@x1735 (hypothesis $x1381)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2160
(let ((@x1736 ((_ th-lemma arith farkas 3/4 1/4 -1/4 -3/4 1/2 -1/2 -1/2 1/2 -1/4 1/4 1/4 -1/4 -1/4 1/4 1/4 -1/4 1/4 1) @x683 @x1617 @x698 @x703 @x858 @x857 @x1517 @x799 @x1735 @x1258 @x1255 @x832 @x1254 @x1251 @x1138 (hypothesis $x1360) @x1700 @x1481 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2161
(let ((@x1754 (unit-resolution (lemma @x1736 (or $x657 $x707 $x860 $x1532 $x1262 $x1423 $x1723)) (unit-resolution @x1117 (unit-resolution @x631 @x1745 $x628) $x667) @x1743 @x1751 (unit-resolution @x1270 @x1747 $x672) @x1612 @x966 $x657)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2162
(let ((@x1759 ((_ th-lemma arith assign-bounds 2 3/4 3/4 3/4 3/4 3/4 1/2 1/2 3/4 3/4 1/2 1/2 1/4 1/4 1/4 1/4 1/4 1/4) @x1370 @x1751 @x1258 @x1698 @x1138 @x1612 (unit-resolution @x1129 (unit-resolution @x631 @x1745 $x628) $x663) @x1127 @x1617 @x698 @x1538 @x812 @x687 @x720 (unit-resolution @x725 @x1747 $x681) @x1743 @x703 @x941 $x488)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2163
(let ((@x1762 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1/2 -1/2 -1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 -1/2 1/2 1/2 -1/2) $x1724) (unit-resolution @x1293 (unit-resolution @x573 @x1759 $x584) $x1238) @x832 @x853 @x835 @x730 @x1258 @x1286 @x1698 @x720 @x1672 @x966 (unit-resolution @x865 (unit-resolution @x623 @x1741 $x620) $x840) (unit-resolution @x1405 (unit-resolution @x641 @x1370 $x637) $x1369) (unit-resolution @x725 @x1747 $x681) @x1751 $x654)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2164
(let ((@x1767 (unit-resolution @x1426 (unit-resolution @x1300 (unit-resolution @x573 @x1759 $x584) $x1239) @x799 @x698 @x703 @x857 @x1138 @x1617 @x1612 @x1743 (unit-resolution @x1117 (unit-resolution @x631 @x1745 $x628) $x667) (unit-resolution @x1270 @x1747 $x672) (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x933 $x414 $x800)) @x1517 @x1481 $x933) @x1254 @x1298 $x653)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2165
(let ((@x1768 (unit-resolution @x1306 @x1767 @x1762 (unit-resolution @x569 (unit-resolution @x1279 @x1754 @x1698 $x92) $x582) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2166
(let ((@x1770 (lemma @x1768 (or $x288 $x438))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2167
(let ((@x891 (unit-resolution @x1770 @x1370 $x438)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2168
(let ((@x783 (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))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2169
(let ((@x795 (unit-resolution (unit-resolution @x783 @x1538 @x1617 (or $x932 $x364 $x903)) (unit-resolution @x828 (unit-resolution @x599 @x891 $x596) $x669) (unit-resolution @x1645 @x1370 $x363) $x932)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2170
(let ((@x809 (unit-resolution (unit-resolution @x709 @x1617 (or $x463 $x339 $x439 $x707)) @x889 @x688 @x891 $x339)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2171
(let ((@x821 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x675 $x439 $x784)) (unit-resolution @x693 (unit-resolution @x599 @x891 $x596) $x678) @x891 $x675)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2172
(let ((@x836 (lemma (unit-resolution @x1734 @x821 @x809 @x1370 @x795 @x890 @x889 false) (or $x288 $x463))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2173
(let ((@x918 (unit-resolution @x836 @x688 $x288)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2174
(let ((@x722 (unit-resolution @x1151 (unit-resolution @x639 @x918 $x636) $x660)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2175
(let ((@x1807 (unit-resolution (unit-resolution @x1193 @x1138 (or $x338 $x313 $x1141 $x289)) @x1701 @x918 @x722 $x313)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2176
(let ((@x838 (unit-resolution (unit-resolution @x960 @x853 @x799 (or $x363 $x957 $x438 $x800)) @x1672 @x1517 (or $x363 $x438))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2177
(let ((@x910 (unit-resolution @x623 (unit-resolution @x838 @x763 $x363) $x620)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2178
(let ((@x920 (unit-resolution @x1146 (unit-resolution @x639 @x918 $x636) $x661)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2179
(let ((@x916 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x488 $x463 $x813 $x815 $x438)) @x720 (or $x488 $x463 $x813 $x438))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2180
(let ((@x923 (unit-resolution @x1293 (unit-resolution @x573 (unit-resolution @x916 @x763 @x688 @x762 $x488) $x584) $x1238)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2181
(let ((@x924 ((_ th-lemma arith assign-bounds 1 -1 1 -1 1 -1 1 3 -3 1 -1 -1 2 -2 2 -2) @x923 @x1286 @x762 @x720 @x730 (hypothesis $x1699) @x857 @x1672 @x853 @x1517 @x799 @x920 @x832 @x966 (unit-resolution @x865 @x910 $x840) @x835 $x654)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2182
(let (($x886 (>= ?x676 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2183
(let ((@x735 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x589) $x886)) @x758 $x886)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2184
(let ((@x736 (unit-resolution @x1300 (unit-resolution @x573 (unit-resolution @x916 @x763 @x688 @x762 $x488) $x584) $x1239)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2185
(let ((@x682 ((_ th-lemma arith assign-bounds 1 -1 1 -1 1 -1 1 3 -3 1 -1 -1 2 -2 2 -2) @x736 @x1298 @x735 @x1254 @x1138 @x1647 @x1127 @x1617 @x698 @x1538 @x812 @x722 @x687 @x941 (unit-resolution @x926 @x910 $x670) @x703 $x653)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2186
(let (($x741 (not $x886)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2187
(let (($x748 (or $x657 $x741 $x1532 $x1471 $x1421 $x1191 $x706 $x743 $x744 $x745 $x707 $x742 $x1141)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2188
(let ((@x750 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 1 1 -1 1 -1 1 -1 -1) $x748) (unit-resolution @x926 @x910 $x670) @x698 @x703 @x1138 @x1258 @x1254 @x722 @x1617 @x687 @x941 @x1735 @x735 $x657)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2189
(let ((@x755 (unit-resolution @x1279 @x1698 (or $x92 $x766))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2190
(let ((@x917 (unit-resolution @x569 (unit-resolution @x755 @x750 $x92) (unit-resolution @x1306 @x682 @x924 $x91) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2191
(let ((@x1810 (unit-resolution (lemma @x917 (or $x438 $x1532 $x1629 (not $x1699) $x463)) (unit-resolution @x1438 (unit-resolution @x647 @x1807 $x644) $x1381) @x1703 @x1712 @x688 $x438)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2192
(let ((@x1780 (hypothesis $x886)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2193
(let (($x1782 (or $x657 $x1531 $x741 $x1532 $x1471 $x1421 $x1191 $x957 $x958 $x744 $x742 $x1141 $x784 $x800 $x801)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2194
(let ((@x1784 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 -1 1 -1 1 -1 1 1 -1 -1 -1 -2 2) $x1782) (hypothesis $x1503) @x799 @x853 @x703 @x1138 @x1258 @x1254 @x1139 @x868 @x1517 @x1672 @x687 @x1735 @x1780 $x657)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2195
(let ((@x1789 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1) (or $x488 $x338 $x1532 $x1471 $x710 $x1191 $x1141)) @x1701 @x1138 @x1258 @x1698 @x1139 @x1735 $x488)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2196
(let (($x927 (not $x1699)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2197
(let (($x1792 (or $x654 $x1415 $x1416 $x741 $x1421 $x1191 $x927 $x1424 $x957 $x958 $x800 $x801 $x1141 $x1532 $x1471 $x710)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2198
(let ((@x1794 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1 -1 1 1 -1 1 -1 1 2 -2 -2) $x1792) (unit-resolution @x1293 (unit-resolution @x573 @x1789 $x584) $x1238) @x799 @x853 @x857 @x1138 @x1258 @x1286 @x1698 @x1139 @x1517 @x1672 @x1254 @x1735 @x1780 @x1712 $x654)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2199
(let (($x1796 (or $x653 $x1323 $x1422 $x813 $x815 $x814 $x1629 $x1199 $x706 $x743 $x817 $x818 $x733 $x734 $x816 $x766)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2200
(let ((@x1798 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1 -1 1 1 -1 1 -1 1 2 -2 -2) $x1796) @x1784 @x812 @x698 @x1127 @x730 @x715 @x1298 @x720 @x731 @x716 @x1617 @x934 @x1538 @x1703 (unit-resolution @x1300 (unit-resolution @x573 @x1789 $x584) $x1239) $x653)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2201
(let ((@x1799 (unit-resolution @x1306 @x1798 @x1794 (unit-resolution @x569 (unit-resolution @x755 @x1784 $x92) $x582) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2202
(let ((@x1814 (unit-resolution (lemma @x1799 (or $x1531 $x733 $x734 $x813 $x1141 $x1532 $x741 $x784 $x338)) (unit-resolution @x1168 (unit-resolution @x647 @x1807 $x644) $x664) @x920 @x762 @x722 (unit-resolution @x1438 (unit-resolution @x647 @x1807 $x644) $x1381) @x735 (unit-resolution @x693 (unit-resolution @x599 @x1810 $x596) $x678) @x1701 $x1531)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2203
(let ((@x1816 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 2 -2 -2 2) (or $x1503 $x707 $x706 $x743 $x439 $x817 $x818)) @x698 @x1617 @x812 @x1538 (or $x1503 $x707 $x439))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2204
(let ((@x1803 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x823 $x1503)) (hypothesis $x621) (hypothesis $x1531) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2205
(let ((@x1804 (lemma @x1803 (or $x823 $x1503))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2206
(let ((@x1820 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x1804 @x1814 $x823) $x363) $x620)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2207
(let ((@x1821 (unit-resolution @x926 @x1820 (unit-resolution @x1816 @x1814 @x1810 $x707) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2208
(let ((@x1861 (unit-resolution (lemma @x1821 (or $x338 $x463)) @x688 $x338)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2209
(let ((@x1827 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 -1 -1 -1 1 1 -1) (or $x860 $x707 $x414 $x742 $x1424 $x800 $x801 $x289 $x438)) @x799 @x703 @x857 @x1481 @x1517 (or $x860 $x707 $x289 $x438))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2210
(let ((@x1829 (unit-resolution @x926 @x910 (unit-resolution @x1827 @x763 @x1078 @x858 $x707) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2211
(let ((@x1831 (lemma @x1829 (or $x438 $x289 $x860))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2212
(let ((@x1864 (unit-resolution @x1831 @x918 (unit-resolution @x1117 (unit-resolution @x631 @x1861 $x628) $x667) $x438)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2213
(let ((@x1865 (unit-resolution (unit-resolution @x709 @x1617 (or $x463 $x339 $x439 $x707)) @x1864 @x688 @x1861 $x707)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2214
(let ((@x1868 (unit-resolution @x1129 (unit-resolution @x631 @x1861 $x628) $x663)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2215
(let ((@x1619 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1 -1 1 1 -1 1 1 -1) (or $x706 $x743 $x313 $x1141 $x1191 $x817 $x1198 $x1199 $x439 $x818)) @x698 @x1127 @x1138 @x812 (or $x706 $x313 $x1141 $x817 $x1198 $x439))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2216
(let ((@x1871 (unit-resolution (unit-resolution @x1619 @x1538 @x1617 (or $x313 $x1141 $x1198 $x439)) @x1864 @x722 @x1868 $x313)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2217
(let ((@x1836 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1 -1 1 1 -1 1 -1 1 2 -2 -2) $x1796) @x1320 @x812 @x698 @x1127 @x730 @x715 @x1298 @x720 @x731 @x716 @x1617 @x934 @x1538 @x1647 @x764 $x1323)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2218
(let ((@x1833 ((_ th-lemma arith farkas 1 -1 -1 1 -1 1 1 1 -1 1 -1 -1 1) @x1138 @x1139 @x1298 @x1320 @x934 @x720 @x1127 @x1617 @x698 @x1538 @x812 @x1213 (hypothesis $x1506) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2219
(let ((@x1837 (unit-resolution (lemma @x1833 (or $x1558 $x1141 $x653 $x813 $x1198)) @x1320 @x1139 @x934 @x1213 $x1558)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2220
(let ((@x1840 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1569 @x1837 $x1546) $x488) $x584)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2221
(let ((@x1843 (lemma (unit-resolution @x1300 @x1840 @x1836 false) (or $x653 $x1141 $x813 $x1198 $x733 $x734 $x1629 $x766))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2222
(let ((@x1847 (unit-resolution @x1306 (unit-resolution @x1843 @x764 @x934 @x1213 @x731 @x716 @x1647 @x1139 $x653) (unit-resolution @x569 (unit-resolution @x755 @x764 $x92) $x582) $x1304)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2223
(let (($x1848 (or $x1550 $x814 $x733 $x1416 $x654 $x741 $x1421 $x1424 $x957 $x958 $x800 $x801 $x860)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2224
(let ((@x1850 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1 1 1 1 -1 1 -1 -1) $x1848) @x1847 @x799 @x853 @x857 @x730 @x1254 @x731 @x1517 @x858 @x1672 @x1286 @x1780 $x1550)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2225
(let ((@x1853 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1583 @x1850 $x1546) $x488) $x584)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2226
(let ((@x1857 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 -2 2 2 2 -2) (or $x1699 $x860 $x489 $x734 $x816 $x766 $x814 $x733)) @x764 @x715 @x730 @x731 @x716 @x858 (unit-resolution @x575 (unit-resolution @x1583 @x1850 $x1546) $x488) $x1699)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2227
(let ((@x1858 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1 -1 1 1 -1 1 -1 1 2 -2 -2) $x1792) @x1857 (unit-resolution @x1293 @x1853 $x1238) @x799 @x853 @x857 @x1138 @x1258 @x1735 @x1698 @x1139 @x1517 @x1672 @x1847 @x1254 @x1780 @x1286 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2228
(let ((@x1878 (unit-resolution (lemma @x1858 (or $x766 $x1532 $x1141 $x741 $x733 $x734 $x860 $x813 $x1198 $x1629)) (unit-resolution @x1438 (unit-resolution @x647 @x1871 $x644) $x1381) @x722 @x735 @x920 (unit-resolution @x1168 (unit-resolution @x647 @x1871 $x644) $x664) (unit-resolution @x1117 (unit-resolution @x631 @x1861 $x628) $x667) @x762 @x1868 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2) (or $x875 $x1198 $x339)) @x1861 @x1868 $x875) $x766)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2229
(let ((@x1879 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 -1 1 -1 1 -1 1 1 -1 -1 -1 -2 2) $x1782) @x1878 @x799 @x853 @x703 @x1138 @x1258 (unit-resolution @x1438 (unit-resolution @x647 @x1871 $x644) $x1381) @x722 (unit-resolution @x693 (unit-resolution @x599 @x1864 $x596) $x678) @x1517 @x1672 @x687 @x1254 @x735 $x1531)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2230
(let ((@x1882 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x1804 @x1879 $x823) $x363) $x620)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2231
(let ((@x1884 (lemma (unit-resolution @x926 @x1882 @x1865 false) $x463)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2232
(let ((@x1943 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 1) (or $x678 $x389 $x1472 $x817 $x818 $x464)) @x832 @x812 @x1610 @x1884 @x1538 $x678)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2233
(let ((@x1906 (unit-resolution @x1770 @x763 $x288)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2234
(let ((@x1910 (unit-resolution (unit-resolution @x1207 @x1481 (or $x438 $x289 $x313)) @x763 @x1906 $x313)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2235
(let ((@x1915 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x663 $x667)) (unit-resolution @x1831 @x1906 @x763 $x860) $x663)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2236
(let ((@x1886 (unit-resolution @x1270 (unit-resolution @x591 @x1884 $x588) $x672)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2237
(let ((@x1887 ((_ th-lemma arith farkas -1 1 -1 1 -3/2 3/2 -1/2 1/2 1/2 -1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 1/2 1) @x857 @x1078 @x1517 @x799 @x1672 @x853 @x1735 @x1258 @x1255 @x1254 @x1700 @x832 @x1886 @x1138 @x1152 @x1208 @x835 (hypothesis $x1699) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2238
(let ((@x1890 (unit-resolution (lemma @x1887 (or $x657 $x289 $x1532 $x1723 $x1092 $x927)) @x1712 @x1735 @x1700 @x1208 @x1078 $x657)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2239
(let ((@x1772 (hypothesis $x871)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2240
(let ((@x1774 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x589) $x679)) @x758 (unit-resolution ((_ th-lemma arith assign-bounds 1 2) (or $x681 $x813 $x463)) @x688 @x1772 $x813) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2241
(let ((@x1777 (unit-resolution @x591 (unit-resolution (lemma @x1774 (or $x463 $x681)) @x1772 $x463) $x588)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2242
(let ((@x1779 (lemma (unit-resolution @x725 @x1777 @x1772 false) $x681)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2243
(let ((@x1897 (unit-resolution (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x679 $x464 $x871)) @x1779 (or $x679 $x464)) @x1884 $x679)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2244
(let ((@x1899 (unit-resolution @x1306 (unit-resolution @x1843 @x1890 @x1897 @x1213 @x1147 @x716 @x1703 @x1152 $x653) (unit-resolution @x569 (unit-resolution @x755 @x1890 $x92) $x582) $x1304)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2245
(let ((@x1900 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1) (or $x488 $x338 $x1532 $x1471 $x710 $x1191 $x1141)) @x1701 @x1138 @x1258 @x1698 @x1152 @x1735 $x488)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2246
(let ((@x1903 ((_ th-lemma arith farkas -1 -1 1 -2 2 -1 1 1 1 -1 -1 1 -1 1 -1 1) @x857 @x1517 @x799 @x1672 @x853 @x1735 @x1258 @x1698 @x1700 @x832 @x1208 @x835 (unit-resolution @x1293 (unit-resolution @x573 @x1900 $x584) $x1238) @x1286 @x1899 @x1712 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2247
(let ((@x1917 (unit-resolution (lemma @x1903 (or $x338 $x1532 $x1723 $x1092 $x1198 $x734 $x289)) (unit-resolution @x1438 (unit-resolution @x647 @x1910 $x644) $x1381) @x966 (unit-resolution @x865 @x910 $x840) @x1915 (unit-resolution @x1168 (unit-resolution @x647 @x1910 $x644) $x664) @x1906 $x338)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2248
(let ((@x1919 (unit-resolution @x1117 (unit-resolution @x631 @x1917 $x628) (unit-resolution @x1831 @x1906 @x763 $x860) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2249
(let ((@x1920 (lemma @x1919 $x438)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2250
(let ((@x1922 (unit-resolution @x828 (unit-resolution @x599 @x1920 $x596) $x669)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2251
(let ((@x1925 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 2 -2 -2 2) (or $x839 $x706 $x817 $x818 $x464 $x903 $x1472)) @x832 @x812 @x1617 @x1538 @x1884 @x1922 $x839)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2252
(let ((@x1929 (unit-resolution @x631 (unit-resolution (unit-resolution @x1486 @x1481 (or $x338 $x872)) @x1925 $x338) $x628)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2253
(let ((@x1930 (unit-resolution @x1129 @x1929 $x663)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2254
(let ((@x1933 (unit-resolution (unit-resolution @x1491 @x1127 @x835 @x1672 (or $x872 $x1198 $x1092 $x288)) @x1370 @x1925 @x1930 $x1092)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2255
(let ((@x1934 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2) (or $x875 $x1198 $x339)) @x1930 (unit-resolution (unit-resolution @x1486 @x1481 (or $x338 $x872)) @x1925 $x338) $x875)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2256
(let ((@x1937 (unit-resolution (unit-resolution @x1637 @x1127 @x1610 @x703 (or $x1629 $x1531 $x288)) @x1370 @x1934 $x1531)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2257
(let ((@x1939 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x840 $x670)) (unit-resolution @x1816 @x1937 @x1920 $x707) @x1933 false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2258
(let ((@x1945 (unit-resolution @x1151 (unit-resolution @x639 (lemma @x1939 $x288) $x636) $x660)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2259
(let ((@x1948 (unit-resolution (unit-resolution @x1580 @x1779 (or $x653 $x872 $x1141 $x1262 $x784)) @x1945 @x1886 @x1925 @x1943 $x653)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2260
(let ((@x1950 (unit-resolution @x1146 (unit-resolution @x639 (lemma @x1939 $x288) $x636) $x661)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2261
(let ((@x1951 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x780 $x389 $x957)) @x1672 @x1610 $x780)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2262
(let ((@x1954 (unit-resolution (unit-resolution @x1592 @x1951 (or $x654 $x903 $x1262 $x733 $x860)) @x1950 @x1886 @x1922 (unit-resolution @x1117 @x1929 $x667) $x654)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2263
(let ((@x1957 (unit-resolution @x755 (unit-resolution @x569 (unit-resolution @x1306 @x1954 @x1948 $x91) $x583) $x766)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2264
(let ((@x1958 (unit-resolution (unit-resolution @x1619 @x1538 @x1617 (or $x313 $x1141 $x1198 $x439)) @x1945 @x1920 @x1930 $x313)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2265
(let ((@x1963 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x1249 $x314 $x1532)) (unit-resolution @x1438 (unit-resolution @x647 @x1958 $x644) $x1381) @x1958 $x1249)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2266
(let ((@x1966 (unit-resolution (unit-resolution @x1264 @x1951 (or $x657 $x707 $x1261 $x1262 $x733 $x903 $x860)) @x1963 @x1886 (unit-resolution @x1117 @x1929 $x667) @x1950 @x1922 @x1957 $x707)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2267
(let ((@x1968 (unit-resolution @x1534 @x853 @x703 @x1138 @x1258 @x1951 @x832 @x1254 (or $x657 $x1531 $x1532 $x903 $x1262 $x1141))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2268
(let ((@x1969 (unit-resolution @x1968 (unit-resolution @x1438 (unit-resolution @x647 @x1958 $x644) $x1381) @x1886 @x1922 @x1945 @x1957 $x1531)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2269
(let ((@x1972 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x1804 @x1969 $x823) $x363) $x620)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2270
(unit-resolution @x926 @x1972 @x1966 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2271
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2272
5c29815a1036cbd6b831d4adbe102069cf0d830f 20 0
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2273
unsat
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2274
((set-logic AUFLIRA)
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2275
(proof
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2276
(let ((?x30 (* 2.0 x$)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2277
(let ((?x32 (+ ?x30 1.0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2278
(let ((?x28 (+ x$ x$)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2279
(let (($x33 (< ?x28 ?x32)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2280
(let (($x34 (or false $x33)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2281
(let (($x35 (or $x33 $x34)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2282
(let (($x36 (not $x35)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2283
(let ((@x67 (monotonicity (rewrite (= (< ?x30 (+ 1.0 ?x30)) true)) (= (not (< ?x30 (+ 1.0 ?x30))) (not true)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2284
(let ((@x71 (trans @x67 (rewrite (= (not true) false)) (= (not (< ?x30 (+ 1.0 ?x30))) false))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2285
(let ((?x40 (+ 1.0 ?x30)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2286
(let (($x43 (< ?x30 ?x40)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2287
(let ((@x45 (monotonicity (rewrite (= ?x28 ?x30)) (rewrite (= ?x32 ?x40)) (= $x33 $x43))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2288
(let ((@x52 (trans (monotonicity @x45 (= $x34 (or false $x43))) (rewrite (= (or false $x43) $x43)) (= $x34 $x43))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2289
(let ((@x59 (trans (monotonicity @x45 @x52 (= $x35 (or $x43 $x43))) (rewrite (= (or $x43 $x43) $x43)) (= $x35 $x43))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2290
(let ((@x62 (monotonicity @x59 (= $x36 (not $x43)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2291
(mp (asserted $x36) (trans @x62 @x71 (= $x36 false)) false))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2292
57711
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  2293
faae12ee7efe4347f92e42776a0e0e57a624319c 113 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2294
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2295
((set-logic <null>)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2296
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2297
(let ((?x228 (mod x$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2298
(let ((?x262 (* (- 1) ?x228)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2299
(let ((?x31 (mod$ x$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2300
(let ((?x263 (+ ?x31 ?x262)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2301
(let (($x280 (>= ?x263 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2302
(let (($x264 (= ?x263 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2303
(let (($x205 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x136 (mod ?v0 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2304
(let ((?x93 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2305
(let ((?x90 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2306
(let ((?x144 (mod ?x90 ?x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2307
(let ((?x150 (* (- 1) ?x144)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2308
(let (($x111 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2309
(let ((?x170 (ite $x111 ?x150 ?x136)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2310
(let (($x78 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2311
(let ((?x175 (ite $x78 ?v0 ?x170)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2312
(let ((?x135 (mod$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2313
(= ?x135 ?x175))))))))))) :pattern ( (mod$ ?v0 ?v1) ) :qid k!9))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2314
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2315
(let (($x181 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x136 (mod ?v0 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2316
(let ((?x93 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2317
(let ((?x90 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2318
(let ((?x144 (mod ?x90 ?x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2319
(let ((?x150 (* (- 1) ?x144)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2320
(let (($x111 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2321
(let ((?x170 (ite $x111 ?x150 ?x136)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2322
(let (($x78 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2323
(let ((?x175 (ite $x78 ?v0 ?x170)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2324
(let ((?x135 (mod$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2325
(= ?x135 ?x175))))))))))) :qid k!9))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2326
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2327
(let ((?x136 (mod ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2328
(let ((?x93 (* (- 1) ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2329
(let ((?x90 (* (- 1) ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2330
(let ((?x144 (mod ?x90 ?x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2331
(let ((?x150 (* (- 1) ?x144)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2332
(let (($x111 (<= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2333
(let ((?x170 (ite $x111 ?x150 ?x136)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2334
(let (($x78 (= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2335
(let ((?x175 (ite $x78 ?1 ?x170)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2336
(let ((?x135 (mod$ ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2337
(let (($x178 (= ?x135 ?x175)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2338
(let (($x142 (forall ((?v0 Int) (?v1 Int) )(! (let (($x78 (= ?v1 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2339
(let ((?x140 (ite $x78 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2340
(let ((?x135 (mod$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2341
(= ?x135 ?x140)))) :qid k!9))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2342
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2343
(let (($x164 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x93 (* (- 1) ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2344
(let ((?x90 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2345
(let ((?x144 (mod ?x90 ?x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2346
(let ((?x150 (* (- 1) ?x144)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2347
(let ((?x136 (mod ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2348
(let (($x79 (< 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2349
(let ((?x155 (ite $x79 ?x136 ?x150)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2350
(let (($x78 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2351
(let ((?x158 (ite $x78 ?v0 ?x155)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2352
(let ((?x135 (mod$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2353
(= ?x135 ?x158))))))))))) :qid k!9))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2354
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2355
(let ((@x169 (monotonicity (rewrite (= (< 0 ?0) (not $x111))) (= (ite (< 0 ?0) ?x136 ?x150) (ite (not $x111) ?x136 ?x150)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2356
(let ((@x174 (trans @x169 (rewrite (= (ite (not $x111) ?x136 ?x150) ?x170)) (= (ite (< 0 ?0) ?x136 ?x150) ?x170))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2357
(let ((@x177 (monotonicity @x174 (= (ite $x78 ?1 (ite (< 0 ?0) ?x136 ?x150)) ?x175))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2358
(let ((@x180 (monotonicity @x177 (= (= ?x135 (ite $x78 ?1 (ite (< 0 ?0) ?x136 ?x150))) $x178))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2359
(let (($x79 (< 0 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2360
(let ((?x155 (ite $x79 ?x136 ?x150)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2361
(let ((?x158 (ite $x78 ?1 ?x155)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2362
(let (($x161 (= ?x135 ?x158)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2363
(let (($x162 (= (= ?x135 (ite $x78 ?1 (ite $x79 ?x136 (- (mod (- ?1) (- ?0)))))) $x161)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2364
(let ((@x146 (monotonicity (rewrite (= (- ?1) ?x90)) (rewrite (= (- ?0) ?x93)) (= (mod (- ?1) (- ?0)) ?x144))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2365
(let ((@x154 (trans (monotonicity @x146 (= (- (mod (- ?1) (- ?0))) (- ?x144))) (rewrite (= (- ?x144) ?x150)) (= (- (mod (- ?1) (- ?0))) ?x150))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2366
(let ((@x157 (monotonicity @x154 (= (ite $x79 ?x136 (- (mod (- ?1) (- ?0)))) ?x155))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2367
(let ((@x160 (monotonicity @x157 (= (ite $x78 ?1 (ite $x79 ?x136 (- (mod (- ?1) (- ?0))))) ?x158))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2368
(let ((@x185 (trans (quant-intro (monotonicity @x160 $x162) (= $x142 $x164)) (quant-intro @x180 (= $x164 $x181)) (= $x142 $x181))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2369
(let ((@x196 (mp~ (mp (asserted $x142) @x185 $x181) (nnf-pos (refl (~ $x178 $x178)) (~ $x181 $x181)) $x181)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2370
(let ((@x210 (mp @x196 (quant-intro (refl (= $x178 $x178)) (= $x181 $x205)) $x205)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2371
(let (($x270 (or (not $x205) $x264)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2372
(let ((?x225 (* (- 1) 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2373
(let ((?x224 (* (- 1) x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2374
(let ((?x226 (mod ?x224 ?x225)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2375
(let ((?x227 (* (- 1) ?x226)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2376
(let (($x223 (<= 2 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2377
(let ((?x229 (ite $x223 ?x227 ?x228)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2378
(let (($x222 (= 2 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2379
(let ((?x230 (ite $x222 x$ ?x229)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2380
(let (($x231 (= ?x31 ?x230)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2381
(let ((@x244 (monotonicity (monotonicity (rewrite (= ?x225 (- 2))) (= ?x226 (mod ?x224 (- 2)))) (= ?x227 (* (- 1) (mod ?x224 (- 2)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2382
(let ((@x247 (monotonicity (rewrite (= $x223 false)) @x244 (= ?x229 (ite false (* (- 1) (mod ?x224 (- 2))) ?x228)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2383
(let ((@x251 (trans @x247 (rewrite (= (ite false (* (- 1) (mod ?x224 (- 2))) ?x228) ?x228)) (= ?x229 ?x228))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2384
(let ((@x254 (monotonicity (rewrite (= $x222 false)) @x251 (= ?x230 (ite false x$ ?x228)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2385
(let ((@x261 (monotonicity (trans @x254 (rewrite (= (ite false x$ ?x228) ?x228)) (= ?x230 ?x228)) (= $x231 (= ?x31 ?x228)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2386
(let ((@x274 (monotonicity (trans @x261 (rewrite (= (= ?x31 ?x228) $x264)) (= $x231 $x264)) (= (or (not $x205) $x231) $x270))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2387
(let ((@x277 (trans @x274 (rewrite (= $x270 $x270)) (= (or (not $x205) $x231) $x270))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2388
(let ((@x278 (mp ((_ quant-inst x$ 2) (or (not $x205) $x231)) @x277 $x270)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2389
(let ((@x332 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x264) $x280)) (unit-resolution @x278 @x210 $x264) $x280)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2390
(let (($x305 (>= ?x228 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2391
(let (($x64 (>= ?x31 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2392
(let (($x67 (not $x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2393
(let (($x36 (not (<= (+ x$ 1) (+ x$ (+ (* 2 ?x31) 1))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2394
(let ((@x69 (monotonicity (rewrite (= (>= (* 2 ?x31) 0) $x64)) (= (not (>= (* 2 ?x31) 0)) $x67))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2395
(let ((?x32 (* 2 ?x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2396
(let ((?x47 (+ 1 x$ ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2397
(let (($x52 (<= (+ 1 x$) ?x47)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2398
(let (($x55 (not $x52)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2399
(let ((@x63 (monotonicity (rewrite (= $x52 (>= ?x32 0))) (= $x55 (not (>= ?x32 0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2400
(let ((@x46 (monotonicity (rewrite (= (+ ?x32 1) (+ 1 ?x32))) (= (+ x$ (+ ?x32 1)) (+ x$ (+ 1 ?x32))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2401
(let ((@x51 (trans @x46 (rewrite (= (+ x$ (+ 1 ?x32)) ?x47)) (= (+ x$ (+ ?x32 1)) ?x47))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2402
(let ((@x54 (monotonicity (rewrite (= (+ x$ 1) (+ 1 x$))) @x51 (= (<= (+ x$ 1) (+ x$ (+ ?x32 1))) $x52))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2403
(let ((@x73 (trans (monotonicity @x54 (= $x36 $x55)) (trans @x63 @x69 (= $x55 $x67)) (= $x36 $x67))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2404
(let ((@x74 (mp (asserted $x36) @x73 $x67)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2405
((_ th-lemma arith farkas -1 1 1) @x74 (unit-resolution ((_ th-lemma arith) (or false $x305)) (true-axiom true) $x305) @x332 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2406
57711
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  2407
57f344c9e787868c98d1e622f158c445c1899c96 112 0
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2408
unsat
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2409
((set-logic <null>)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2410
(proof
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2411
(let ((?x224 (mod x$ 2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2412
(let (($x318 (>= ?x224 2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2413
(let (($x319 (not $x318)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2414
(let ((?x258 (* (- 1) ?x224)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2415
(let ((?x29 (mod$ x$ 2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2416
(let ((?x259 (+ ?x29 ?x258)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2417
(let (($x275 (<= ?x259 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2418
(let (($x260 (= ?x259 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2419
(let (($x201 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x132 (mod ?v0 ?v1)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2420
(let ((?x89 (* (- 1) ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2421
(let ((?x86 (* (- 1) ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2422
(let ((?x140 (mod ?x86 ?x89)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2423
(let ((?x146 (* (- 1) ?x140)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2424
(let (($x107 (<= ?v1 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2425
(let ((?x166 (ite $x107 ?x146 ?x132)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2426
(let (($x74 (= ?v1 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2427
(let ((?x171 (ite $x74 ?v0 ?x166)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2428
(let ((?x131 (mod$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2429
(= ?x131 ?x171))))))))))) :pattern ( (mod$ ?v0 ?v1) ) :qid k!9))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2430
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2431
(let (($x177 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x132 (mod ?v0 ?v1)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2432
(let ((?x89 (* (- 1) ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2433
(let ((?x86 (* (- 1) ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2434
(let ((?x140 (mod ?x86 ?x89)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2435
(let ((?x146 (* (- 1) ?x140)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2436
(let (($x107 (<= ?v1 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2437
(let ((?x166 (ite $x107 ?x146 ?x132)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2438
(let (($x74 (= ?v1 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2439
(let ((?x171 (ite $x74 ?v0 ?x166)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2440
(let ((?x131 (mod$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2441
(= ?x131 ?x171))))))))))) :qid k!9))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2442
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2443
(let ((?x132 (mod ?1 ?0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2444
(let ((?x89 (* (- 1) ?0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2445
(let ((?x86 (* (- 1) ?1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2446
(let ((?x140 (mod ?x86 ?x89)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2447
(let ((?x146 (* (- 1) ?x140)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2448
(let (($x107 (<= ?0 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2449
(let ((?x166 (ite $x107 ?x146 ?x132)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2450
(let (($x74 (= ?0 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2451
(let ((?x171 (ite $x74 ?1 ?x166)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2452
(let ((?x131 (mod$ ?1 ?0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2453
(let (($x174 (= ?x131 ?x171)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2454
(let (($x138 (forall ((?v0 Int) (?v1 Int) )(! (let (($x74 (= ?v1 0)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2455
(let ((?x136 (ite $x74 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2456
(let ((?x131 (mod$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2457
(= ?x131 ?x136)))) :qid k!9))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2458
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2459
(let (($x160 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x89 (* (- 1) ?v1)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2460
(let ((?x86 (* (- 1) ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2461
(let ((?x140 (mod ?x86 ?x89)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2462
(let ((?x146 (* (- 1) ?x140)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2463
(let ((?x132 (mod ?v0 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2464
(let (($x75 (< 0 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2465
(let ((?x151 (ite $x75 ?x132 ?x146)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2466
(let (($x74 (= ?v1 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2467
(let ((?x154 (ite $x74 ?v0 ?x151)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2468
(let ((?x131 (mod$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2469
(= ?x131 ?x154))))))))))) :qid k!9))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2470
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2471
(let ((@x165 (monotonicity (rewrite (= (< 0 ?0) (not $x107))) (= (ite (< 0 ?0) ?x132 ?x146) (ite (not $x107) ?x132 ?x146)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2472
(let ((@x170 (trans @x165 (rewrite (= (ite (not $x107) ?x132 ?x146) ?x166)) (= (ite (< 0 ?0) ?x132 ?x146) ?x166))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2473
(let ((@x173 (monotonicity @x170 (= (ite $x74 ?1 (ite (< 0 ?0) ?x132 ?x146)) ?x171))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2474
(let ((@x176 (monotonicity @x173 (= (= ?x131 (ite $x74 ?1 (ite (< 0 ?0) ?x132 ?x146))) $x174))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2475
(let (($x75 (< 0 ?0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2476
(let ((?x151 (ite $x75 ?x132 ?x146)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2477
(let ((?x154 (ite $x74 ?1 ?x151)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2478
(let (($x157 (= ?x131 ?x154)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2479
(let (($x158 (= (= ?x131 (ite $x74 ?1 (ite $x75 ?x132 (- (mod (- ?1) (- ?0)))))) $x157)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2480
(let ((@x142 (monotonicity (rewrite (= (- ?1) ?x86)) (rewrite (= (- ?0) ?x89)) (= (mod (- ?1) (- ?0)) ?x140))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2481
(let ((@x150 (trans (monotonicity @x142 (= (- (mod (- ?1) (- ?0))) (- ?x140))) (rewrite (= (- ?x140) ?x146)) (= (- (mod (- ?1) (- ?0))) ?x146))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2482
(let ((@x153 (monotonicity @x150 (= (ite $x75 ?x132 (- (mod (- ?1) (- ?0)))) ?x151))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2483
(let ((@x156 (monotonicity @x153 (= (ite $x74 ?1 (ite $x75 ?x132 (- (mod (- ?1) (- ?0))))) ?x154))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2484
(let ((@x181 (trans (quant-intro (monotonicity @x156 $x158) (= $x138 $x160)) (quant-intro @x176 (= $x160 $x177)) (= $x138 $x177))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2485
(let ((@x192 (mp~ (mp (asserted $x138) @x181 $x177) (nnf-pos (refl (~ $x174 $x174)) (~ $x177 $x177)) $x177)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2486
(let ((@x206 (mp @x192 (quant-intro (refl (= $x174 $x174)) (= $x177 $x201)) $x201)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2487
(let (($x266 (or (not $x201) $x260)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2488
(let ((?x221 (* (- 1) 2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2489
(let ((?x220 (* (- 1) x$)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2490
(let ((?x222 (mod ?x220 ?x221)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2491
(let ((?x223 (* (- 1) ?x222)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2492
(let (($x219 (<= 2 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2493
(let ((?x225 (ite $x219 ?x223 ?x224)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2494
(let (($x218 (= 2 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2495
(let ((?x226 (ite $x218 x$ ?x225)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2496
(let (($x227 (= ?x29 ?x226)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2497
(let ((@x240 (monotonicity (monotonicity (rewrite (= ?x221 (- 2))) (= ?x222 (mod ?x220 (- 2)))) (= ?x223 (* (- 1) (mod ?x220 (- 2)))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2498
(let ((@x243 (monotonicity (rewrite (= $x219 false)) @x240 (= ?x225 (ite false (* (- 1) (mod ?x220 (- 2))) ?x224)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2499
(let ((@x247 (trans @x243 (rewrite (= (ite false (* (- 1) (mod ?x220 (- 2))) ?x224) ?x224)) (= ?x225 ?x224))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2500
(let ((@x250 (monotonicity (rewrite (= $x218 false)) @x247 (= ?x226 (ite false x$ ?x224)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2501
(let ((@x257 (monotonicity (trans @x250 (rewrite (= (ite false x$ ?x224) ?x224)) (= ?x226 ?x224)) (= $x227 (= ?x29 ?x224)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2502
(let ((@x270 (monotonicity (trans @x257 (rewrite (= (= ?x29 ?x224) $x260)) (= $x227 $x260)) (= (or (not $x201) $x227) $x266))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2503
(let ((@x273 (trans @x270 (rewrite (= $x266 $x266)) (= (or (not $x201) $x227) $x266))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2504
(let ((@x274 (mp ((_ quant-inst x$ 2) (or (not $x201) $x227)) @x273 $x266)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2505
(let ((@x331 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x260) $x275)) (unit-resolution @x274 @x206 $x260) $x275)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2506
(let (($x63 (>= ?x29 2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2507
(let ((?x37 (* 2 ?x29)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2508
(let (($x56 (>= ?x37 3)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2509
(let (($x46 (< (+ x$ ?x37) (+ 3 x$))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2510
(let (($x49 (not $x46)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2511
(let ((@x58 (monotonicity (rewrite (= $x46 (not $x56))) (= $x49 (not (not $x56))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2512
(let ((@x67 (trans (trans @x58 (rewrite (= (not (not $x56)) $x56)) (= $x49 $x56)) (rewrite (= $x56 $x63)) (= $x49 $x63))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2513
(let ((@x42 (monotonicity (rewrite (= (+ ?x29 ?x29) ?x37)) (= (+ x$ (+ ?x29 ?x29)) (+ x$ ?x37)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2514
(let ((@x48 (monotonicity @x42 (rewrite (= (+ x$ 3) (+ 3 x$))) (= (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3)) $x46))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2515
(let ((@x51 (monotonicity @x48 (= (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3))) $x49))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2516
(let ((@x69 (trans @x51 @x67 (= (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3))) $x63))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2517
(let ((@x70 (mp (asserted (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3)))) @x69 $x63)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2518
((_ th-lemma arith farkas -1 1 1) @x70 @x331 (unit-resolution ((_ th-lemma arith) (or false $x319)) (true-axiom true) $x319) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2519
57711
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  2520
3938db798ebafb55191dcdaf83a8615d1d59c0c3 32 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2521
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2522
((set-logic <null>)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2523
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2524
(let (($x28 (= x$ 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2525
(let (($x29 (not $x28)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2526
(let ((@x30 (asserted $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2527
(let (($x101 (<= x$ 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2528
(let ((?x47 (* 2.0 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2529
(let (($x99 (<= ?x47 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2530
(let (($x95 (= ?x47 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2531
(let (($x36 (< 1.0 (ite (< x$ 0.0) (- x$) x$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2532
(let (($x38 (or $x36 (not $x36))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2533
(let ((?x41 (ite $x38 4.0 2.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2534
(let (($x45 (not (not (= (+ x$ x$) (* ?x41 x$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2535
(let ((@x90 (rewrite (= (not (not (= ?x47 (* 4.0 x$)))) (= ?x47 (* 4.0 x$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2536
(let (($x84 (= (not (= (+ x$ x$) (* ?x41 x$))) (not (= ?x47 (* 4.0 x$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2537
(let (($x57 (< 1.0 (ite (< x$ 0.0) (* (- 1.0) x$) x$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2538
(let (($x55 (= (ite (< x$ 0.0) (- x$) x$) (ite (< x$ 0.0) (* (- 1.0) x$) x$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2539
(let ((@x59 (monotonicity (monotonicity (rewrite (= (- x$) (* (- 1.0) x$))) $x55) (= $x36 $x57))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2540
(let ((@x65 (monotonicity @x59 (monotonicity @x59 (= (not $x36) (not $x57))) (= $x38 (or $x57 (not $x57))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2541
(let ((@x69 (trans @x65 (rewrite (= (or $x57 (not $x57)) true)) (= $x38 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2542
(let ((@x76 (trans (monotonicity @x69 (= ?x41 (ite true 4.0 2.0))) (rewrite (= (ite true 4.0 2.0) 4.0)) (= ?x41 4.0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2543
(let ((@x82 (monotonicity (rewrite (= (+ x$ x$) ?x47)) (monotonicity @x76 (= (* ?x41 x$) (* 4.0 x$))) (= (= (+ x$ x$) (* ?x41 x$)) (= ?x47 (* 4.0 x$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2544
(let ((@x88 (monotonicity (monotonicity @x82 $x84) (= $x45 (not (not (= ?x47 (* 4.0 x$))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2545
(let ((@x97 (trans (trans @x88 @x90 (= $x45 (= ?x47 (* 4.0 x$)))) (rewrite (= (= ?x47 (* 4.0 x$)) $x95)) (= $x45 $x95))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2546
(let ((@x98 (mp (asserted $x45) @x97 $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2547
(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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2548
(let (($x102 (>= x$ 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2549
(let (($x100 (>= ?x47 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2550
(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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2551
(unit-resolution ((_ th-lemma arith triangle-eq) (or $x28 (not $x101) (not $x102))) @x117 @x110 @x30 false))))))))))))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2552
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2553
dcc9b986d57d4904aeadc1233210450bb15df4d3 12 0
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2554
unsat
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2555
((set-logic AUFLIA)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2556
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2557
(let (($x28 (exists ((?v0 Int) )(! false :qid k!4))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2558
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2559
(let (($x27 (not $x28)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2560
(let (($x29 (not $x27)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2561
(let ((@x35 (monotonicity (elim-unused (= $x28 false)) (= $x27 (not false)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2562
(let ((@x42 (monotonicity (trans @x35 (rewrite (= (not false) true)) (= $x27 true)) (= $x29 (not true)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2563
(let ((@x46 (trans @x42 (rewrite (= (not true) false)) (= $x29 false))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2564
(mp (asserted $x29) @x46 false)))))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2565
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2566
e33f4ac0207897c2b7abfeafedc87232f999a6d5 12 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2567
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2568
((set-logic AUFLIRA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2569
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2570
(let (($x27 (exists ((?v0 Real) )(! false :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2571
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2572
(let (($x28 (not $x27)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2573
(let (($x29 (not $x28)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2574
(let ((@x35 (monotonicity (elim-unused (= $x27 false)) (= $x28 (not false)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2575
(let ((@x42 (monotonicity (trans @x35 (rewrite (= (not false) true)) (= $x28 true)) (= $x29 (not true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2576
(let ((@x46 (trans @x42 (rewrite (= (not true) false)) (= $x29 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2577
(mp (asserted $x29) @x46 false)))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2578
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2579
ef29919c373b650f8005a5573289548ab716b089 22 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2580
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2581
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2582
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2583
(let (($x52 (forall ((?v0 Int) )(! (<= ?v0 0) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2584
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2585
(let (($x46 (forall ((?v0 Int) )(! (let (($x34 (<= ?v0 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2586
(let (($x35 (not $x34)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2587
(not $x35))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2588
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2589
(let ((@x54 (quant-intro (rewrite (= (not (not (<= ?0 0))) (<= ?0 0))) (= $x46 $x52))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2590
(let (($x38 (exists ((?v0 Int) )(! (let (($x34 (<= ?v0 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2591
(not $x34)) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2592
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2593
(let (($x41 (not $x38)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2594
(let ((@x48 (nnf-neg (refl (~ (not (not (<= ?0 0))) (not (not (<= ?0 0))))) (~ $x41 $x46))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2595
(let (($x29 (exists ((?v0 Int) )(! (< 0 ?v0) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2596
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2597
(let (($x30 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2598
(let ((@x40 (quant-intro (rewrite (= (< 0 ?0) (not (<= ?0 0)))) (= $x29 $x38))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2599
(let ((@x49 (mp~ (mp (asserted $x30) (monotonicity @x40 (= $x30 $x41)) $x41) @x48 $x46)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2600
(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
  2601
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2602
4d3a976164de7ccb5d4650a113f067b8a1c55b22 22 0
56109
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2603
unsat
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2604
((set-logic AUFLIRA)
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2605
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2606
(let (($x51 (forall ((?v0 Real) )(! (<= ?v0 0.0) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2607
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2608
(let (($x45 (forall ((?v0 Real) )(! (let (($x33 (<= ?v0 0.0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2609
(let (($x34 (not $x33)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2610
(not $x34))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2611
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2612
(let ((@x53 (quant-intro (rewrite (= (not (not (<= ?0 0.0))) (<= ?0 0.0))) (= $x45 $x51))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2613
(let (($x37 (exists ((?v0 Real) )(! (let (($x33 (<= ?v0 0.0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2614
(not $x33)) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2615
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2616
(let (($x40 (not $x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2617
(let ((@x47 (nnf-neg (refl (~ (not (not (<= ?0 0.0))) (not (not (<= ?0 0.0))))) (~ $x40 $x45))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2618
(let (($x28 (exists ((?v0 Real) )(! (< 0.0 ?v0) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2619
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2620
(let (($x29 (not $x28)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2621
(let ((@x39 (quant-intro (rewrite (= (< 0.0 ?0) (not (<= ?0 0.0)))) (= $x28 $x37))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2622
(let ((@x48 (mp~ (mp (asserted $x29) (monotonicity @x39 (= $x29 $x40)) $x40) @x47 $x45)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2623
(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
  2624
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2625
f28123a872d014e01ec45f8bb7163bb037909301 31 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2626
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2627
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2628
(declare-fun ?v0!0 () Int)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2629
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2630
(let (($x71 (forall ((?v1 Int) )(! (<= (+ ?v1 (* (- 1) ?v0!0)) 0) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2631
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2632
(let (($x63 (forall ((?v1 Int) )(! (not (not (<= (+ ?v1 (* (- 1) ?v0!0)) 0))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2633
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2634
(let (($x54 (<= (+ ?0 (* (- 1) ?v0!0)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2635
(let (($x60 (not (not $x54))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2636
(let (($x46 (forall ((?v0 Int) )(! (exists ((?v1 Int) )(! (not (<= (+ ?v1 (* (- 1) ?v0)) 0)) :qid k!4))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2637
 :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2638
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2639
(let (($x49 (not $x46)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2640
(let (($x56 (exists ((?v1 Int) )(! (let (($x54 (<= (+ ?v1 (* (- 1) ?v0!0)) 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2641
(not $x54)) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2642
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2643
(let ((@x67 (trans (sk (~ $x49 (not $x56))) (nnf-neg (refl (~ $x60 $x60)) (~ (not $x56) $x63)) (~ $x49 $x63))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2644
(let (($x31 (forall ((?v0 Int) )(! (exists ((?v1 Int) )(! (< ?v0 ?v1) :qid k!4))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2645
 :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2646
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2647
(let (($x32 (not $x31)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2648
(let (($x43 (exists ((?v1 Int) )(! (not (<= (+ ?v1 (* (- 1) ?0)) 0)) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2649
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2650
(let (($x30 (exists ((?v1 Int) )(! (< ?0 ?v1) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2651
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2652
(let ((@x42 (rewrite (= (< ?1 ?0) (not (<= (+ ?0 (* (- 1) ?1)) 0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2653
(let ((@x51 (monotonicity (quant-intro (quant-intro @x42 (= $x30 $x43)) (= $x31 $x46)) (= $x32 $x49))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2654
(let ((@x74 (mp (mp~ (mp (asserted $x32) @x51 $x49) @x67 $x63) (quant-intro (rewrite (= $x60 $x54)) (= $x63 $x71)) $x71)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2655
(mp @x74 (rewrite (= $x71 false)) false))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2656
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2657
574f579e644304e47945be9d8bd47347079730d4 22 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2658
unsat
56109
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2659
((set-logic AUFLIA)
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2660
(declare-fun ?v1!0 () Int)
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2661
(declare-fun ?v0!1 () Int)
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2662
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2663
(let (($x53 (= ?v1!0 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2664
(let (($x59 (not (or (not (and (= ?v0!1 0) $x53)) (not (= ?v0!1 ?v1!0))))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2665
(let (($x43 (forall ((?v0 Int) (?v1 Int) )(! (or (not (and (= ?v0 0) (= ?v1 1))) (not (= ?v0 ?v1))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2666
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2667
(let (($x46 (not $x43)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2668
(let (($x36 (forall ((?v0 Int) (?v1 Int) )(! (=> (and (= ?v0 0) (= ?v1 1)) (not (= ?v0 ?v1))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2669
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2670
(let (($x37 (not $x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2671
(let (($x41 (= (=> (and (= ?1 0) (= ?0 1)) (not (= ?1 ?0))) (or (not (and (= ?1 0) (= ?0 1))) (not (= ?1 ?0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2672
(let ((@x48 (monotonicity (quant-intro (rewrite $x41) (= $x36 $x43)) (= $x37 $x46))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2673
(let ((@x65 (not-or-elim (mp~ (mp (asserted $x37) @x48 $x46) (sk (~ $x46 $x59)) $x59) (and (= ?v0!1 0) $x53))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2674
(let ((@x67 (and-elim @x65 $x53)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2675
(let (($x56 (= ?v0!1 ?v1!0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2676
(let ((@x68 (not-or-elim (mp~ (mp (asserted $x37) @x48 $x46) (sk (~ $x46 $x59)) $x59) $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2677
(let ((@x70 (trans (symm (and-elim @x65 (= ?v0!1 0)) (= 0 ?v0!1)) @x68 (= 0 ?v1!0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2678
(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
  2679
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2680
a24ff2e4a93d06b88e1d7717852cb82258ed11ed 55 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2681
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2682
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2683
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2684
(let (($x35 (exists ((?v0 Int) )(! (forall ((?v1 Int) )(! (let (($x31 (<= 0 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2685
(let (($x30 (< ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2686
(let (($x32 (or $x30 $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2687
(let (($x29 (< ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2688
(=> $x29 $x32))))) :qid k!4))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2689
 :qid k!4))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2690
))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2691
(let (($x36 (not $x35)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2692
(let (($x45 (exists ((?v0 Int) )(! (forall ((?v1 Int) )(! (let (($x31 (<= 0 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2693
(let (($x30 (< ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2694
(let (($x32 (or $x30 $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2695
(let (($x29 (< ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2696
(let (($x38 (not $x29)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2697
(or $x38 $x32)))))) :qid k!4))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2698
 :qid k!4))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2699
))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2700
(let (($x48 (not $x45)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2701
(let (($x88 (exists ((?v0 Int) )(! true :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2702
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2703
(let (($x42 (forall ((?v1 Int) )(! (let (($x31 (<= 0 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2704
(let (($x30 (< ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2705
(let (($x32 (or $x30 $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2706
(let (($x29 (< ?0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2707
(let (($x38 (not $x29)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2708
(or $x38 $x32)))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2709
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2710
(let (($x81 (forall ((?v1 Int) )(! true :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2711
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2712
(let (($x31 (<= 0 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2713
(let (($x30 (< ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2714
(let (($x32 (or $x30 $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2715
(let (($x29 (< ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2716
(let (($x38 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2717
(let (($x39 (or $x38 $x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2718
(let (($x60 (<= (+ ?0 (* (- 1) ?1)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2719
(let ((@x78 (rewrite (= (or $x60 (or (not (>= ?0 0)) (>= ?0 0))) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2720
(let ((@x73 (monotonicity (rewrite (= $x30 (not (>= ?0 0)))) (rewrite (= $x31 (>= ?0 0))) (= $x32 (or (not (>= ?0 0)) (>= ?0 0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2721
(let ((@x66 (monotonicity (rewrite (= $x29 (not $x60))) (= $x38 (not (not $x60))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2722
(let ((@x76 (monotonicity (trans @x66 (rewrite (= (not (not $x60)) $x60)) (= $x38 $x60)) @x73 (= $x39 (or $x60 (or (not (>= ?0 0)) (>= ?0 0)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2723
(let ((@x87 (trans (quant-intro (trans @x76 @x78 (= $x39 true)) (= $x42 $x81)) (elim-unused (= $x81 true)) (= $x42 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2724
(let ((@x94 (trans (quant-intro @x87 (= $x45 $x88)) (elim-unused (= $x88 true)) (= $x45 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2725
(let ((@x101 (trans (monotonicity @x94 (= $x48 (not true))) (rewrite (= (not true) false)) (= $x48 false))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2726
(let (($x34 (forall ((?v1 Int) )(! (let (($x31 (<= 0 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2727
(let (($x30 (< ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2728
(let (($x32 (or $x30 $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2729
(let (($x29 (< ?0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2730
(=> $x29 $x32))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2731
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2732
(let ((@x47 (quant-intro (quant-intro (rewrite (= (=> $x29 $x32) $x39)) (= $x34 $x42)) (= $x35 $x45))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2733
(let ((@x50 (monotonicity @x47 (= $x36 $x48))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2734
(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
  2735
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2736
c446c8659459cda8dda1ecfd9aba54ce2a50f002 42 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2737
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2738
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2739
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2740
(let (($x37 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x34 (* 2 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2741
(let ((?x31 (* 2 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2742
(let ((?x33 (+ ?x31 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2743
(let (($x35 (< ?x33 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2744
(let (($x29 (< ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2745
(=> $x29 $x35)))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2746
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2747
(let (($x38 (not $x37)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2748
(let (($x55 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x34 (* 2 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2749
(let ((?x31 (* 2 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2750
(let ((?x40 (+ 1 ?x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2751
(let (($x43 (< ?x40 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2752
(let (($x29 (< ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2753
(let (($x49 (not $x29)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2754
(or $x49 $x43))))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2755
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2756
(let (($x58 (not $x55)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2757
(let (($x84 (forall ((?v0 Int) (?v1 Int) )(! true :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2758
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2759
(let ((?x34 (* 2 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2760
(let ((?x31 (* 2 ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2761
(let ((?x40 (+ 1 ?x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2762
(let (($x43 (< ?x40 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2763
(let (($x29 (< ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2764
(let (($x49 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2765
(let (($x50 (or $x49 $x43)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2766
(let (($x63 (>= (+ ?1 (* (- 1) ?0)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2767
(let (($x62 (not $x63)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2768
(let ((@x74 (trans (monotonicity (rewrite (= $x29 $x62)) (= $x49 (not $x62))) (rewrite (= (not $x62) $x63)) (= $x49 $x63))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2769
(let ((@x79 (monotonicity @x74 (rewrite (= $x43 $x62)) (= $x50 (or $x63 $x62)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2770
(let ((@x86 (quant-intro (trans @x79 (rewrite (= (or $x63 $x62) true)) (= $x50 true)) (= $x55 $x84))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2771
(let ((@x93 (monotonicity (trans @x86 (elim-unused (= $x84 true)) (= $x55 true)) (= $x58 (not true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2772
(let ((@x97 (trans @x93 (rewrite (= (not true) false)) (= $x58 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2773
(let ((@x45 (monotonicity (rewrite (= (+ ?x31 1) ?x40)) (= (< (+ ?x31 1) ?x34) $x43))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2774
(let ((@x48 (monotonicity @x45 (= (=> $x29 (< (+ ?x31 1) ?x34)) (=> $x29 $x43)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2775
(let ((@x54 (trans @x48 (rewrite (= (=> $x29 $x43) $x50)) (= (=> $x29 (< (+ ?x31 1) ?x34)) $x50))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2776
(let ((@x60 (monotonicity (quant-intro @x54 (= $x37 $x55)) (= $x38 $x58))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2777
(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
  2778
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2779
a6ee8724a53192e0bb5b41bbeed60d66d29cdc32 32 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2780
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2781
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2782
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2783
(let (($x36 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x33 (* 2 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2784
(let ((?x30 (* 2 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2785
(let ((?x32 (+ ?x30 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2786
(let (($x34 (= ?x32 ?x33)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2787
(not $x34))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2788
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2789
(let (($x37 (not $x36)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2790
(let (($x48 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x33 (* 2 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2791
(let ((?x30 (* 2 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2792
(let ((?x39 (+ 1 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2793
(let (($x42 (= ?x39 ?x33)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2794
(not $x42))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2795
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2796
(let (($x51 (not $x48)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2797
(let (($x63 (forall ((?v0 Int) (?v1 Int) )(! true :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2798
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2799
(let ((?x33 (* 2 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2800
(let ((?x30 (* 2 ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2801
(let ((?x39 (+ 1 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2802
(let (($x42 (= ?x39 ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2803
(let (($x45 (not $x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2804
(let ((@x62 (trans (monotonicity (rewrite (= $x42 false)) (= $x45 (not false))) (rewrite (= (not false) true)) (= $x45 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2805
(let ((@x69 (trans (quant-intro @x62 (= $x48 $x63)) (elim-unused (= $x63 true)) (= $x48 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2806
(let ((@x76 (trans (monotonicity @x69 (= $x51 (not true))) (rewrite (= (not true) false)) (= $x51 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2807
(let ((@x44 (monotonicity (rewrite (= (+ ?x30 1) ?x39)) (= (= (+ ?x30 1) ?x33) $x42))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2808
(let ((@x50 (quant-intro (monotonicity @x44 (= (not (= (+ ?x30 1) ?x33)) $x45)) (= $x36 $x48))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2809
(let ((@x53 (monotonicity @x50 (= $x37 $x51))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2810
(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
  2811
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2812
07f4cd3fa64b76806d385c4af8945a76e01f07d9 43 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2813
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2814
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2815
(declare-fun ?v0!1 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2816
(declare-fun ?v1!0 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2817
(proof
56111
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  2818
(let ((?x78 (+ ?v1!0 ?v0!1)))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  2819
(let (($x90 (>= ?x78 2)))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  2820
(let (($x93 (not $x90)))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  2821
(let (($x87 (= ?x78 2)))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  2822
(let (($x81 (<= ?x78 2)))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  2823
(let (($x84 (not $x81)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2824
(let (($x73 (or (not (<= (+ ?v0!1 ?v1!0) 2)) (= (+ ?v0!1 ?v1!0) 2) (not (>= (+ ?v0!1 ?v1!0) 2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2825
(let (($x74 (not $x73)))
56111
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  2826
(let ((@x80 (rewrite (= (+ ?v0!1 ?v1!0) ?x78))))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  2827
(let ((@x95 (monotonicity (monotonicity @x80 (= (>= (+ ?v0!1 ?v1!0) 2) $x90)) (= (not (>= (+ ?v0!1 ?v1!0) 2)) $x93))))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  2828
(let ((@x86 (monotonicity (monotonicity @x80 (= (<= (+ ?v0!1 ?v1!0) 2) $x81)) (= (not (<= (+ ?v0!1 ?v1!0) 2)) $x84))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2829
(let ((@x98 (monotonicity @x86 (monotonicity @x80 (= (= (+ ?v0!1 ?v1!0) 2) $x87)) @x95 (= $x73 (or $x84 $x87 $x93)))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2830
(let (($x60 (forall ((?v0 Int) (?v1 Int) )(! (let (($x41 (not (>= (+ ?v0 ?v1) 2))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2831
(let ((?x30 (+ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2832
(let (($x32 (= ?x30 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2833
(let (($x46 (not (<= ?x30 2))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2834
(or $x46 $x32 $x41))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2835
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2836
(let (($x63 (not $x60)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2837
(let (($x36 (forall ((?v0 Int) (?v1 Int) )(! (or (< 2 (+ ?v0 ?v1)) (or (= (+ ?v0 ?v1) 2) (< (+ ?v0 ?v1) 2))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2838
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2839
(let (($x37 (not $x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2840
(let (($x41 (not (>= (+ ?1 ?0) 2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2841
(let ((?x30 (+ ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2842
(let (($x32 (= ?x30 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2843
(let (($x46 (not (<= ?x30 2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2844
(let (($x55 (or $x46 $x32 $x41)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2845
(let (($x35 (or (< 2 ?x30) (or $x32 (< ?x30 2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2846
(let ((@x51 (monotonicity (rewrite (= (< ?x30 2) $x41)) (= (or $x32 (< ?x30 2)) (or $x32 $x41)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2847
(let ((@x54 (monotonicity (rewrite (= (< 2 ?x30) $x46)) @x51 (= $x35 (or $x46 (or $x32 $x41))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2848
(let ((@x59 (trans @x54 (rewrite (= (or $x46 (or $x32 $x41)) $x55)) (= $x35 $x55))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2849
(let ((@x66 (mp (asserted $x37) (monotonicity (quant-intro @x59 (= $x36 $x60)) (= $x37 $x63)) $x63)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2850
(let ((@x102 (mp (mp~ @x66 (sk (~ $x63 $x74)) $x74) (monotonicity @x98 (= $x74 (not (or $x84 $x87 $x93)))) (not (or $x84 $x87 $x93)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2851
(let ((@x105 (not-or-elim @x102 (not $x87))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2852
(let ((@x106 (not-or-elim @x102 $x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2853
(let ((@x103 (not-or-elim @x102 $x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2854
(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
  2855
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2856
7f22e563ec1d8ce90ee01f0d4b366d5b595fcdef 46 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2857
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2858
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2859
(declare-fun ?v0!0 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2860
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2861
(let (($x86 (<= ?v0!0 (- 1))))
56111
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  2862
(let (($x87 (not $x86)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2863
(let (($x84 (>= ?v0!0 1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2864
(let (($x83 (<= ?v0!0 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2865
(let (($x93 (not $x83)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2866
(let (($x85 (not $x84)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2867
(let (($x88 (ite $x83 $x85 $x87)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2868
(let (($x89 (not $x88)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2869
(let (($x73 (forall ((?v0 Int) )(! (let (($x58 (not (<= ?v0 (- 1)))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2870
(let (($x61 (not (>= ?v0 1))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2871
(ite (<= ?v0 0) $x61 $x58))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2872
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2873
(let (($x76 (not $x73)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2874
(let (($x34 (forall ((?v0 Int) )(! (let (($x32 (< ?v0 1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2875
(let (($x28 (< 0 ?v0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2876
(ite $x28 (< 0 (+ ?v0 1)) $x32))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2877
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2878
(let (($x35 (not $x34)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2879
(let (($x46 (forall ((?v0 Int) )(! (let (($x32 (< ?v0 1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2880
(let (($x40 (< 0 (+ 1 ?v0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2881
(let (($x28 (< 0 ?v0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2882
(ite $x28 $x40 $x32)))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2883
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2884
(let (($x58 (not (<= ?0 (- 1)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2885
(let (($x61 (not (>= ?0 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2886
(let (($x68 (ite (<= ?0 0) $x61 $x58)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2887
(let (($x32 (< ?0 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2888
(let (($x40 (< 0 (+ 1 ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2889
(let (($x28 (< 0 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2890
(let (($x43 (ite $x28 $x40 $x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2891
(let ((@x67 (monotonicity (rewrite (= $x28 (not (<= ?0 0)))) (rewrite (= $x40 $x58)) (rewrite (= $x32 $x61)) (= $x43 (ite (not (<= ?0 0)) $x58 $x61)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2892
(let ((@x72 (trans @x67 (rewrite (= (ite (not (<= ?0 0)) $x58 $x61) $x68)) (= $x43 $x68))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2893
(let ((@x78 (monotonicity (quant-intro @x72 (= $x46 $x73)) (= (not $x46) $x76))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2894
(let ((@x42 (monotonicity (rewrite (= (+ ?0 1) (+ 1 ?0))) (= (< 0 (+ ?0 1)) $x40))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2895
(let ((@x45 (monotonicity @x42 (= (ite $x28 (< 0 (+ ?0 1)) $x32) $x43))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2896
(let ((@x51 (monotonicity (quant-intro @x45 (= $x34 $x46)) (= $x35 (not $x46)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2897
(let ((@x92 (mp~ (mp (asserted $x35) (trans @x51 @x78 (= $x35 $x76)) $x76) (sk (~ $x76 $x89)) $x89)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2898
(let ((@x105 (unit-resolution (unit-resolution (def-axiom (or $x88 $x93 $x84)) @x92 (or $x93 $x84)) (hypothesis $x85) $x93)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2899
(let ((@x108 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x83 $x84)) @x105 (hypothesis $x85) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2900
(let ((@x109 (lemma @x108 $x84)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2901
(unit-resolution (unit-resolution (def-axiom (or $x88 $x83 $x86)) @x92 (or $x83 $x86)) (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x93 $x85)) @x109 $x93) (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x87 $x85)) @x109 $x87) false)))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2902
58431
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2903
e566ad249d308c74a627c15c9f02c271a6843a42 31 0
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2904
unsat
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2905
((set-logic AUFLIA)
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2906
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2907
(let (($x56 (forall ((?v0 Int) )(! (let (($x50 (not (<= ?v0 0))))
58431
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2908
(let (($x45 (not (>= ?v0 0))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2909
(or $x45 $x50))) :qid k!4))
58431
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2910
))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2911
(let (($x458 (not $x56)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2912
(let (($x153 (<= 0 0)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2913
(let (($x68 (not $x153)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2914
(let (($x158 (>= 0 0)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2915
(let (($x143 (not $x158)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2916
(let (($x154 (or $x143 $x68)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2917
(let (($x119 (or $x458 $x154)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2918
(let ((@x137 (trans (monotonicity (rewrite (= $x153 true)) (= $x68 (not true))) (rewrite (= (not true) false)) (= $x68 false))))
58431
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2919
(let ((@x261 (trans (monotonicity (rewrite (= $x158 true)) (= $x143 (not true))) (rewrite (= (not true) false)) (= $x143 false))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2920
(let ((@x116 (trans (monotonicity @x261 @x137 (= $x154 (or false false))) (rewrite (= (or false false) false)) (= $x154 false))))
58431
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2921
(let ((@x463 (trans (monotonicity @x116 (= $x119 (or $x458 false))) (rewrite (= (or $x458 false) $x458)) (= $x119 $x458))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2922
(let ((@x464 (mp ((_ quant-inst 0) $x119) @x463 $x458)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2923
(let (($x50 (not (<= ?0 0))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2924
(let (($x45 (not (>= ?0 0))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2925
(let (($x53 (or $x45 $x50)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2926
(let (($x31 (forall ((?v0 Int) )(! (or (< ?v0 0) (< 0 ?v0)) :qid k!4))
58431
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2927
))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2928
(let (($x33 (not (ite $x31 false true))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2929
(let ((@x55 (monotonicity (rewrite (= (< ?0 0) $x45)) (rewrite (= (< 0 ?0) $x50)) (= (or (< ?0 0) (< 0 ?0)) $x53))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2930
(let ((@x40 (monotonicity (rewrite (= (ite $x31 false true) (not $x31))) (= $x33 (not (not $x31))))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2931
(let ((@x60 (trans (trans @x40 (rewrite (= (not (not $x31)) $x31)) (= $x33 $x31)) (quant-intro @x55 (= $x31 $x56)) (= $x33 $x56))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2932
(let ((@x66 (mp~ (mp (asserted $x33) @x60 $x56) (nnf-pos (refl (~ $x53 $x53)) (~ $x56 $x56)) $x56)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2933
(unit-resolution @x66 @x464 false)))))))))))))))))))))))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  2934
57711
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  2935
a02ae6c9688537bbe4c3be0d3dcebbc703417864 62 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2936
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2937
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2938
(declare-fun ?v0!1 () Int)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2939
(declare-fun z3name!0 () Bool)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2940
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2941
(let ((?x96 (ite z3name!0 (- 1) 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2942
(let (($x99 (<= ?x96 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2943
(let (($x62 (forall ((?v0 Int) )(! (let (($x56 (not (<= ?v0 0))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2944
(let (($x51 (not (>= ?v0 0))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2945
(or $x51 $x56))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2946
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2947
(let ((?x65 (ite $x62 (- 1) 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2948
(let (($x71 (<= ?x65 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2949
(let ((@x93 (intro-def (and (or (not z3name!0) $x62) (or z3name!0 (not $x62))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2950
(let ((@x101 (monotonicity (monotonicity (apply-def @x93 (~ $x62 z3name!0)) (= ?x65 ?x96)) (= $x71 $x99))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2951
(let (($x31 (forall ((?v0 Int) )(! (or (< ?v0 0) (< 0 ?v0)) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2952
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2953
(let (($x37 (not (< 0 (ite $x31 (- 1) 3)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2954
(let (($x56 (not (<= ?0 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2955
(let (($x51 (not (>= ?0 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2956
(let (($x59 (or $x51 $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2957
(let ((@x61 (monotonicity (rewrite (= (< ?0 0) $x51)) (rewrite (= (< 0 ?0) $x56)) (= (or (< ?0 0) (< 0 ?0)) $x59))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2958
(let ((@x67 (monotonicity (quant-intro @x61 (= $x31 $x62)) (= (ite $x31 (- 1) 3) ?x65))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2959
(let ((@x70 (monotonicity @x67 (= (< 0 (ite $x31 (- 1) 3)) (< 0 ?x65)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2960
(let ((@x76 (trans @x70 (rewrite (= (< 0 ?x65) (not $x71))) (= (< 0 (ite $x31 (- 1) 3)) (not $x71)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2961
(let ((@x79 (monotonicity @x76 (= (not (< 0 (ite $x31 (- 1) 3))) (not (not $x71))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2962
(let ((@x83 (trans @x79 (rewrite (= (not (not $x71)) $x71)) (= (not (< 0 (ite $x31 (- 1) 3))) $x71))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2963
(let ((?x42 (ite $x31 (- 1) 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2964
(let (($x45 (< 0 ?x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2965
(let ((@x44 (monotonicity (rewrite (= (- 1) (- 1))) (= (ite $x31 (- 1) 3) ?x42))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2966
(let ((@x50 (monotonicity (monotonicity @x44 (= (< 0 (ite $x31 (- 1) 3)) $x45)) (= $x37 (not $x45)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2967
(let ((@x128 (mp (mp (asserted $x37) (trans @x50 @x83 (= $x37 $x71)) $x71) @x101 $x99)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2968
(let ((@x245 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not (>= ?x96 3)) (not $x99))) @x128 (not (>= ?x96 3)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2969
(let (($x220 (= ?x96 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2970
(let (($x88 (not z3name!0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2971
(let (($x90 (not $x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2972
(let (($x323 (<= 0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2973
(let (($x533 (not $x323)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2974
(let (($x542 (>= 0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2975
(let (($x179 (not $x542)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2976
(let (($x206 (or $x179 $x533)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2977
(let (($x529 (or $x90 $x206)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2978
(let ((@x527 (trans (monotonicity (rewrite (= $x323 true)) (= $x533 (not true))) (rewrite (= (not true) false)) (= $x533 false))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2979
(let ((@x200 (trans (monotonicity (rewrite (= $x542 true)) (= $x179 (not true))) (rewrite (= (not true) false)) (= $x179 false))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  2980
(let ((@x528 (trans (monotonicity @x200 @x527 (= $x206 (or false false))) (rewrite (= (or false false) false)) (= $x206 false))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2981
(let ((@x237 (trans (monotonicity @x528 (= $x529 (or $x90 false))) (rewrite (= (or $x90 false) $x90)) (= $x529 $x90))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2982
(let ((@x238 (mp ((_ quant-inst 0) $x529) @x237 $x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2983
(let (($x89 (or $x88 $x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2984
(let (($x115 (<= ?v0!1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2985
(let (($x116 (not $x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2986
(let (($x113 (>= ?v0!1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2987
(let (($x114 (not $x113)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2988
(let (($x117 (or $x114 $x116)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2989
(let (($x118 (not $x117)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2990
(let (($x121 (or z3name!0 $x118)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2991
(let ((@x123 (monotonicity (refl (~ z3name!0 z3name!0)) (sk (~ $x90 $x118)) (~ (or z3name!0 $x90) $x121))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2992
(let ((@x109 (monotonicity (refl (~ $x88 $x88)) (nnf-pos (refl (~ $x59 $x59)) (~ $x62 $x62)) (~ $x89 $x89))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2993
(let ((@x126 (monotonicity @x109 @x123 (~ (and $x89 (or z3name!0 $x90)) (and $x89 $x121)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2994
(let ((@x131 (and-elim (mp~ @x93 @x126 (and $x89 $x121)) $x89)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2995
(let ((@x515 (unit-resolution (def-axiom (or z3name!0 $x220)) (unit-resolution @x131 @x238 $x88) $x220)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2996
(unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x220) (>= ?x96 3))) @x515 @x245 false))))))))))))))))))))))))))))))))))))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2997
57711
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  2998
9853592ad3514c1450e40271884a9f21f57ff85b 39 0
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2999
unsat
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3000
((set-logic AUFLIA)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3001
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3002
(let (($x38 (exists ((?v0 Int) (?v1 Int) (?v2 Int) )(! (let ((?x33 (- 6)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3003
(let ((?x34 (* ?x33 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3004
(let ((?x31 (* 4 ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3005
(let ((?x35 (+ ?x31 ?x34)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3006
(= ?x35 1))))) :qid k!4))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3007
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3008
(let (($x29 (not $x38)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3009
(let (($x39 (not $x29)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3010
(let (($x61 (exists ((?v0 Int) (?v1 Int) )(! (let ((?x58 (* (- 6) ?v1)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3011
(let ((?x57 (* 4 ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3012
(let ((?x59 (+ ?x57 ?x58)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3013
(= ?x59 1)))) :qid k!4))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3014
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3015
(let (($x77 (exists ((?v0 Int) (?v1 Int) )(! false :qid k!4))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3016
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3017
(let ((@x81 (quant-intro (rewrite (= (= (+ (* 4 ?1) (* (- 6) ?0)) 1) false)) (= $x61 $x77))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3018
(let ((@x85 (trans @x81 (elim-unused (= $x77 false)) (= $x61 false))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3019
(let (($x53 (exists ((?v0 Int) (?v1 Int) (?v2 Int) )(! (let ((?x44 (* (- 6) ?v1)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3020
(let ((?x31 (* 4 ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3021
(let ((?x47 (+ ?x31 ?x44)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3022
(= ?x47 1)))) :qid k!4))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3023
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3024
(let ((?x44 (* (- 6) ?1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3025
(let ((?x31 (* 4 ?2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3026
(let ((?x47 (+ ?x31 ?x44)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3027
(let (($x50 (= ?x47 1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3028
(let ((?x33 (- 6)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3029
(let ((?x34 (* ?x33 ?1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3030
(let ((?x35 (+ ?x31 ?x34)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3031
(let (($x37 (= ?x35 1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3032
(let ((@x49 (monotonicity (monotonicity (rewrite (= ?x33 (- 6))) (= ?x34 ?x44)) (= ?x35 ?x47))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3033
(let ((@x65 (trans (quant-intro (monotonicity @x49 (= $x37 $x50)) (= $x38 $x53)) (elim-unused (= $x53 $x61)) (= $x38 $x61))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3034
(let ((@x71 (monotonicity (monotonicity @x65 (= $x29 (not $x61))) (= $x39 (not (not $x61))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3035
(let ((@x75 (trans @x71 (rewrite (= (not (not $x61)) $x61)) (= $x39 $x61))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3036
(mp (asserted $x39) (trans @x75 @x85 (= $x39 false)) false)))))))))))))))))))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3037
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3038
7f619f54c20728881b08a920d22e08bbe3d76a4d 52 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3039
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3040
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3041
(declare-fun ?v1!1 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3042
(declare-fun ?v2!0 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3043
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3044
(let ((?x105 (+ ?v2!0 ?v1!1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3045
(let (($x106 (<= ?x105 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3046
(let (($x108 (or (not (and (not (<= ?v1!1 0)) (not (<= ?v2!0 0)))) (not $x106))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3047
(let (($x88 (forall ((?v1 Int) (?v2 Int) )(! (or (not (and (not (<= ?v1 0)) (not (<= ?v2 0)))) (not (<= (+ ?v2 ?v1) 0))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3048
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3049
(let (($x91 (not $x88)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3050
(let (($x36 (exists ((?v0 Int) )(! (forall ((?v1 Int) (?v2 Int) )(! (let (($x31 (and (< 0 ?v1) (< 0 ?v2))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3051
(=> $x31 (< 0 (+ ?v1 ?v2)))) :qid k!4))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3052
 :qid k!4))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3053
))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3054
(let (($x37 (not $x36)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3055
(let (($x54 (forall ((?v1 Int) (?v2 Int) )(! (let ((?x39 (+ ?v2 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3056
(let (($x42 (< 0 ?x39)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3057
(or (not (and (< 0 ?v1) (< 0 ?v2))) $x42))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3058
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3059
(let (($x85 (or (not (and (not (<= ?1 0)) (not (<= ?0 0)))) (not (<= (+ ?0 ?1) 0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3060
(let ((?x39 (+ ?0 ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3061
(let (($x42 (< 0 ?x39)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3062
(let (($x49 (or (not (and (< 0 ?1) (< 0 ?0))) $x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3063
(let (($x79 (= (not (and (< 0 ?1) (< 0 ?0))) (not (and (not (<= ?1 0)) (not (<= ?0 0)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3064
(let (($x31 (and (< 0 ?1) (< 0 ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3065
(let ((@x77 (monotonicity (rewrite (= (< 0 ?1) (not (<= ?1 0)))) (rewrite (= (< 0 ?0) (not (<= ?0 0)))) (= $x31 (and (not (<= ?1 0)) (not (<= ?0 0)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3066
(let ((@x87 (monotonicity (monotonicity @x77 $x79) (rewrite (= $x42 (not (<= ?x39 0)))) (= $x49 $x85))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3067
(let ((@x93 (monotonicity (quant-intro @x87 (= $x54 $x88)) (= (not $x54) $x91))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3068
(let (($x57 (exists ((?v0 Int) )(! (forall ((?v1 Int) (?v2 Int) )(! (let ((?x39 (+ ?v2 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3069
(let (($x42 (< 0 ?x39)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3070
(or (not (and (< 0 ?v1) (< 0 ?v2))) $x42))) :qid k!4))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3071
 :qid k!4))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3072
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3073
(let (($x35 (forall ((?v1 Int) (?v2 Int) )(! (let (($x31 (and (< 0 ?v1) (< 0 ?v2))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3074
(=> $x31 (< 0 (+ ?v1 ?v2)))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3075
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3076
(let ((@x44 (monotonicity (rewrite (= (+ ?1 ?0) ?x39)) (= (< 0 (+ ?1 ?0)) $x42))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3077
(let ((@x47 (monotonicity @x44 (= (=> $x31 (< 0 (+ ?1 ?0))) (=> $x31 $x42)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3078
(let ((@x53 (trans @x47 (rewrite (= (=> $x31 $x42) $x49)) (= (=> $x31 (< 0 (+ ?1 ?0))) $x49))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3079
(let ((@x63 (trans (quant-intro (quant-intro @x53 (= $x35 $x54)) (= $x36 $x57)) (elim-unused (= $x57 $x54)) (= $x36 $x54))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3080
(let ((@x95 (trans (monotonicity @x63 (= $x37 (not $x54))) @x93 (= $x37 $x91))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3081
(let ((@x112 (mp~ (mp (asserted $x37) @x95 $x91) (sk (~ $x91 (not $x108))) (not $x108))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3082
(let ((@x118 (not-or-elim @x112 $x106)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3083
(let (($x99 (<= ?v1!1 0)))
56111
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  3084
(let (($x100 (not $x99)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3085
(let ((@x116 (and-elim (not-or-elim @x112 (and $x100 (not (<= ?v2!0 0)))) $x100)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3086
(let (($x101 (<= ?v2!0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3087
(let (($x102 (not $x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3088
(let ((@x117 (and-elim (not-or-elim @x112 (and $x100 $x102)) $x102)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3089
((_ 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
  3090
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3091
9201a8009730b821ad6a3a2b64598e50ab5748ca 45 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3092
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3093
((set-logic AUFLIRA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3094
(declare-fun ?v1!1 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3095
(declare-fun ?v2!0 () Real)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3096
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3097
(let (($x105 (<= ?v1!1 (- 1))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3098
(let (($x107 (or (not (and (not (<= ?v1!1 0)) (not (<= ?v2!0 0.0)))) (not $x105))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3099
(let (($x88 (forall ((?v1 Int) (?v2 Real) )(! (or (not (and (not (<= ?v1 0)) (not (<= ?v2 0.0)))) (not (<= ?v1 (- 1)))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3100
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3101
(let (($x91 (not $x88)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3102
(let (($x37 (exists ((?v0 Int) )(! (forall ((?v1 Int) (?v2 Real) )(! (let (($x31 (and (< 0 ?v1) (< 0.0 ?v2))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3103
(=> $x31 (< (- 1) ?v1))) :qid k!4))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3104
 :qid k!4))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3105
))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3106
(let (($x27 (not $x37)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3107
(let (($x54 (forall ((?v1 Int) (?v2 Real) )(! (let (($x42 (< (- 1) ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3108
(or (not (and (< 0 ?v1) (< 0.0 ?v2))) $x42)) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3109
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3110
(let (($x85 (or (not (and (not (<= ?1 0)) (not (<= ?0 0.0)))) (not (<= ?1 (- 1))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3111
(let (($x42 (< (- 1) ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3112
(let (($x49 (or (not (and (< 0 ?1) (< 0.0 ?0))) $x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3113
(let (($x79 (= (not (and (< 0 ?1) (< 0.0 ?0))) (not (and (not (<= ?1 0)) (not (<= ?0 0.0)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3114
(let (($x31 (and (< 0 ?1) (< 0.0 ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3115
(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)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3116
(let ((@x87 (monotonicity (monotonicity @x77 $x79) (rewrite (= $x42 (not (<= ?1 (- 1))))) (= $x49 $x85))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3117
(let ((@x93 (monotonicity (quant-intro @x87 (= $x54 $x88)) (= (not $x54) $x91))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3118
(let (($x57 (exists ((?v0 Int) )(! (forall ((?v1 Int) (?v2 Real) )(! (let (($x42 (< (- 1) ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3119
(or (not (and (< 0 ?v1) (< 0.0 ?v2))) $x42)) :qid k!4))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3120
 :qid k!4))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3121
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3122
(let (($x36 (forall ((?v1 Int) (?v2 Real) )(! (let (($x31 (and (< 0 ?v1) (< 0.0 ?v2))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3123
(=> $x31 (< (- 1) ?v1))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3124
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3125
(let ((@x44 (monotonicity (rewrite (= (- 1) (- 1))) (= (< (- 1) ?1) $x42))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3126
(let ((@x47 (monotonicity @x44 (= (=> $x31 (< (- 1) ?1)) (=> $x31 $x42)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3127
(let ((@x53 (trans @x47 (rewrite (= (=> $x31 $x42) $x49)) (= (=> $x31 (< (- 1) ?1)) $x49))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3128
(let ((@x63 (trans (quant-intro (quant-intro @x53 (= $x36 $x54)) (= $x37 $x57)) (elim-unused (= $x57 $x54)) (= $x37 $x54))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3129
(let ((@x95 (trans (monotonicity @x63 (= $x27 (not $x54))) @x93 (= $x27 $x91))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3130
(let ((@x111 (mp~ (mp (asserted $x27) @x95 $x91) (sk (~ $x91 (not $x107))) (not $x107))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3131
(let ((@x117 (not-or-elim @x111 $x105)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3132
(let (($x99 (<= ?v1!1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3133
(let (($x100 (not $x99)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3134
(let ((@x115 (and-elim (not-or-elim @x111 (and $x100 (not (<= ?v2!0 0.0)))) $x100)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3135
(unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x105) $x99)) @x115 @x117 false))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3136
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3137
d9fbfe5a894f4a224aaf7d1fa1f67325ad2e1497 110 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3138
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3139
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3140
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3141
(let (($x152 (forall ((?v0 Int) )(! (let (($x68 (<= ?v0 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3142
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3143
(let (($x143 (not false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3144
(let (($x146 (or $x143 $x69)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3145
(not $x146))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3146
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3147
(let (($x174 (forall ((?v0 Int) )(! false :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3148
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3149
(let (($x68 (<= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3150
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3151
(let (($x143 (not false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3152
(let (($x146 (or $x143 $x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3153
(let ((@x166 (trans (monotonicity (rewrite (= $x143 true)) (= $x146 (or true $x69))) (rewrite (= (or true $x69) true)) (= $x146 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3154
(let ((@x173 (trans (monotonicity @x166 (= (not $x146) (not true))) (rewrite (= (not true) false)) (= (not $x146) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3155
(let ((@x180 (trans (quant-intro @x173 (= $x152 $x174)) (elim-unused (= $x174 false)) (= $x152 false))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3156
(let (($x122 (forall ((?v0 Int) )(! (let (($x68 (<= ?v0 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3157
(let (($x69 (not $x68)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3158
(let (($x75 (forall ((?v1 Int) )(! (let (($x68 (<= ?v1 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3159
(let (($x69 (not $x68)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3160
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3161
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3162
(let (($x78 (not $x75)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3163
(let (($x81 (or $x78 $x69)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3164
(not $x81)))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3165
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3166
(let (($x138 (forall ((?v0 Int) )(! (let (($x68 (<= ?v0 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3167
(let (($x69 (not $x68)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3168
(let (($x126 (forall ((?v1 Int) )(! (let (($x68 (<= ?v1 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3169
(not $x68)) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3170
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3171
(not (or (not $x126) $x69))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3172
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3173
(let ((@x156 (trans (rewrite (= $x122 $x138)) (rewrite (= $x138 $x152)) (= $x122 $x152))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3174
(let (($x116 (forall ((?v0 Int) )(! (let (($x68 (<= ?v0 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3175
(let (($x75 (forall ((?v1 Int) )(! (let (($x68 (<= ?v1 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3176
(let (($x69 (not $x68)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3177
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3178
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3179
(and $x75 $x68))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3180
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3181
(let (($x75 (forall ((?v1 Int) )(! (let (($x68 (<= ?v1 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3182
(let (($x69 (not $x68)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3183
(or (not (>= (+ ?v1 (* (- 1) ?0)) 0)) $x69))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3184
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3185
(let (($x78 (not $x75)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3186
(let (($x81 (or $x78 $x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3187
(let (($x104 (not $x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3188
(let (($x113 (and $x75 $x68)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3189
(let (($x107 (forall ((?v0 Int) )(! (let (($x68 (<= ?v0 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3190
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3191
(let (($x100 (not $x69)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3192
(let (($x75 (forall ((?v1 Int) )(! (let (($x68 (<= ?v1 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3193
(let (($x69 (not $x68)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3194
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3195
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3196
(and $x75 $x100))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3197
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3198
(let ((@x115 (monotonicity (rewrite (= (not $x69) $x68)) (= (and $x75 (not $x69)) $x113))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3199
(let (($x84 (exists ((?v0 Int) )(! (let (($x68 (<= ?v0 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3200
(let (($x69 (not $x68)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3201
(let (($x75 (forall ((?v1 Int) )(! (let (($x68 (<= ?v1 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3202
(let (($x69 (not $x68)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3203
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3204
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3205
(let (($x78 (not $x75)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3206
(or $x78 $x69))))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3207
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3208
(let (($x87 (not $x84)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3209
(let (($x72 (or (not (>= (+ ?0 (* (- 1) ?1)) 0)) $x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3210
(let ((@x99 (nnf-neg (nnf-pos (refl (~ $x72 $x72)) (~ $x75 $x75)) (~ (not $x78) $x75))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3211
(let ((@x106 (nnf-neg @x99 (refl (~ (not $x69) (not $x69))) (~ $x104 (and $x75 (not $x69))))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3212
(let (($x34 (exists ((?v0 Int) )(! (let (($x30 (< 0 ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3213
(let (($x32 (forall ((?v1 Int) )(! (let (($x30 (< 0 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3214
(let (($x29 (<= ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3215
(=> $x29 $x30))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3216
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3217
(=> $x32 $x30))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3218
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3219
(let (($x35 (not $x34)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3220
(let (($x53 (exists ((?v0 Int) )(! (let (($x30 (< 0 ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3221
(let (($x41 (forall ((?v1 Int) )(! (let (($x30 (< 0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3222
(or (not (<= ?v0 ?v1)) $x30)) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3223
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3224
(or (not $x41) $x30))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3225
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3226
(let (($x30 (< 0 ?0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3227
(let (($x41 (forall ((?v1 Int) )(! (let (($x30 (< 0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3228
(or (not (<= ?0 ?v1)) $x30)) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3229
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3230
(let (($x48 (or (not $x41) $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3231
(let ((@x67 (monotonicity (rewrite (= (<= ?1 ?0) (>= (+ ?0 (* (- 1) ?1)) 0))) (= (not (<= ?1 ?0)) (not (>= (+ ?0 (* (- 1) ?1)) 0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3232
(let ((@x74 (monotonicity @x67 (rewrite (= $x30 $x69)) (= (or (not (<= ?1 ?0)) $x30) $x72))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3233
(let ((@x80 (monotonicity (quant-intro @x74 (= $x41 $x75)) (= (not $x41) $x78))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3234
(let ((@x86 (quant-intro (monotonicity @x80 (rewrite (= $x30 $x69)) (= $x48 $x81)) (= $x53 $x84))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3235
(let (($x32 (forall ((?v1 Int) )(! (let (($x30 (< 0 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3236
(let (($x29 (<= ?0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3237
(=> $x29 $x30))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3238
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3239
(let (($x33 (=> $x32 $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3240
(let ((@x40 (rewrite (= (=> (<= ?1 ?0) $x30) (or (not (<= ?1 ?0)) $x30)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3241
(let ((@x46 (monotonicity (quant-intro @x40 (= $x32 $x41)) (= $x33 (=> $x41 $x30)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3242
(let ((@x55 (quant-intro (trans @x46 (rewrite (= (=> $x41 $x30) $x48)) (= $x33 $x48)) (= $x34 $x53))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3243
(let ((@x91 (trans (monotonicity @x55 (= $x35 (not $x53))) (monotonicity @x86 (= (not $x53) $x87)) (= $x35 $x87))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3244
(let ((@x110 (mp~ (mp (asserted $x35) @x91 $x87) (nnf-neg @x106 (~ $x87 $x107)) $x107)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3245
(let ((@x125 (mp (mp @x110 (quant-intro @x115 (= $x107 $x116)) $x116) (quant-intro (rewrite (= $x113 $x104)) (= $x116 $x122)) $x122)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3246
(mp (mp @x125 @x156 $x152) @x180 false))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3247
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3248
ae4f4fb9c10608b8e3b893cc6c99e3ec5d13a86c 23 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3249
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3250
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3251
(declare-fun ?v1!0 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3252
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3253
(let (($x64 (>= ?v1!0 1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3254
(let (($x52 (forall ((?v1 Int) )(! (or (not (<= ?v1 0)) (not (>= ?v1 1))) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3255
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3256
(let (($x55 (not $x52)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3257
(let (($x33 (forall ((?v0 Int) (?v1 Int) )(! (or (< 0 ?v1) (< ?v1 1)) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3258
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3259
(let (($x27 (not $x33)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3260
(let (($x35 (forall ((?v1 Int) )(! (or (< 0 ?v1) (< ?v1 1)) :qid k!4))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3261
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3262
(let (($x32 (or (< 0 ?0) (< ?0 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3263
(let ((@x51 (monotonicity (rewrite (= (< 0 ?0) (not (<= ?0 0)))) (rewrite (= (< ?0 1) (not (>= ?0 1)))) (= $x32 (or (not (<= ?0 0)) (not (>= ?0 1)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3264
(let ((@x57 (monotonicity (quant-intro @x51 (= $x35 $x52)) (= (not $x35) $x55))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3265
(let ((@x59 (trans (monotonicity (elim-unused (= $x33 $x35)) (= $x27 (not $x35))) @x57 (= $x27 $x55))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3266
(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))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3267
(let ((@x74 (not-or-elim @x70 $x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3268
(let (($x62 (<= ?v1!0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3269
(let ((@x73 (not-or-elim @x70 $x62)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3270
(unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x62) (not $x64))) @x73 @x74 false)))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3271
57711
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3272
d98ad8f668dead6f610669a52351ea0176a811b0 26 0
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3273
unsat
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3274
((set-logic <null>)
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3275
(proof
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3276
(let (($x58 (<= b$ 0)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3277
(let (($x62 (or (not (and (not (<= a$ 0)) (not (<= (* a$ b$) 0)))) (not $x58))))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3278
(let (($x65 (not $x62)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3279
(let (($x35 (not (=> (and (< 0 a$) (< 0 (* a$ b$))) (< 0 b$)))))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3280
(let (($x33 (< 0 b$)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3281
(let (($x38 (or (not (and (< 0 a$) (< 0 (* a$ b$)))) $x33)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3282
(let (($x56 (= (not (and (< 0 a$) (< 0 (* a$ b$)))) (not (and (not (<= a$ 0)) (not (<= (* a$ b$) 0)))))))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3283
(let ((?x30 (* a$ b$)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3284
(let (($x48 (<= ?x30 0)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3285
(let (($x49 (not $x48)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3286
(let (($x44 (<= a$ 0)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3287
(let (($x45 (not $x44)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3288
(let (($x52 (and $x45 $x49)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3289
(let (($x32 (and (< 0 a$) (< 0 ?x30))))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3290
(let ((@x54 (monotonicity (rewrite (= (< 0 a$) $x45)) (rewrite (= (< 0 ?x30) $x49)) (= $x32 $x52))))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3291
(let ((@x64 (monotonicity (monotonicity @x54 $x56) (rewrite (= $x33 (not $x58))) (= $x38 $x62))))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3292
(let ((@x43 (monotonicity (rewrite (= (=> $x32 $x33) $x38)) (= $x35 (not $x38)))))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3293
(let ((@x69 (trans @x43 (monotonicity @x64 (= (not $x38) $x65)) (= $x35 $x65))))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3294
(let ((@x74 (not-or-elim (mp (asserted $x35) @x69 $x65) $x58)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3295
(let ((@x72 (and-elim (not-or-elim (mp (asserted $x35) @x69 $x65) $x52) $x45)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3296
(let ((@x73 (and-elim (not-or-elim (mp (asserted $x35) @x69 $x65) $x52) $x49)))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3297
((_ th-lemma arith farkas 1 1 1) @x73 @x72 @x74 false))))))))))))))))))))))))
caadd484dec6 Changing ~ into - for unuary minus (not supported by veriT)
fleury
parents: 57696
diff changeset
  3298
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3299
271390ea915947de195c2202e30f90bb84689d60 26 0
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3300
unsat
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3301
((set-logic <null>)
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3302
(proof
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3303
(let ((?x35 (+ y$ 1)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3304
(let ((?x36 (* a$ ?x35)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3305
(let ((?x34 (* a$ x$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3306
(let ((?x37 (+ ?x34 ?x36)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3307
(let ((?x30 (+ x$ 1)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3308
(let ((?x32 (+ ?x30 y$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3309
(let ((?x33 (* a$ ?x32)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3310
(let (($x38 (= ?x33 ?x37)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3311
(let (($x39 (not $x38)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3312
(let (($x82 (= (= (+ a$ ?x34 (* a$ y$)) (+ a$ ?x34 (* a$ y$))) true)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3313
(let (($x80 (= $x38 (= (+ a$ ?x34 (* a$ y$)) (+ a$ ?x34 (* a$ y$))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3314
(let ((@x76 (rewrite (= (+ ?x34 (+ a$ (* a$ y$))) (+ a$ ?x34 (* a$ y$))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3315
(let ((@x66 (monotonicity (rewrite (= ?x35 (+ 1 y$))) (= ?x36 (* a$ (+ 1 y$))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3316
(let ((@x71 (trans @x66 (rewrite (= (* a$ (+ 1 y$)) (+ a$ (* a$ y$)))) (= ?x36 (+ a$ (* a$ y$))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3317
(let ((@x78 (trans (monotonicity @x71 (= ?x37 (+ ?x34 (+ a$ (* a$ y$))))) @x76 (= ?x37 (+ a$ ?x34 (* a$ y$))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3318
(let ((@x58 (rewrite (= (* a$ (+ 1 x$ y$)) (+ a$ ?x34 (* a$ y$))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3319
(let ((@x46 (monotonicity (rewrite (= ?x30 (+ 1 x$))) (= ?x32 (+ (+ 1 x$) y$)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3320
(let ((@x51 (trans @x46 (rewrite (= (+ (+ 1 x$) y$) (+ 1 x$ y$))) (= ?x32 (+ 1 x$ y$)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3321
(let ((@x60 (trans (monotonicity @x51 (= ?x33 (* a$ (+ 1 x$ y$)))) @x58 (= ?x33 (+ a$ ?x34 (* a$ y$))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3322
(let ((@x88 (monotonicity (trans (monotonicity @x60 @x78 $x80) (rewrite $x82) (= $x38 true)) (= $x39 (not true)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3323
(let ((@x92 (trans @x88 (rewrite (= (not true) false)) (= $x39 false))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3324
(mp (asserted $x39) @x92 false))))))))))))))))))))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3325
58431
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3326
b216c79478e44396acca3654b76845499fc18a04 23 0
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3327
unsat
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3328
((set-logic <null>)
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3329
(proof
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3330
(let ((?x36 (* 2.0 x$)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3331
(let ((?x37 (* ?x36 y$)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3332
(let ((?x32 (- 1.0 y$)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3333
(let ((?x33 (* x$ ?x32)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3334
(let ((?x30 (+ 1.0 y$)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3335
(let ((?x31 (* x$ ?x30)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3336
(let ((?x34 (- ?x31 ?x33)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3337
(let (($x38 (= ?x34 ?x37)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3338
(let (($x39 (not $x38)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3339
(let ((@x73 (rewrite (= (= (* 2.0 (* x$ y$)) (* 2.0 (* x$ y$))) true))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3340
(let ((?x41 (* x$ y$)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3341
(let ((?x63 (* 2.0 ?x41)))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3342
(let ((@x56 (rewrite (= (* x$ (+ 1.0 (* (- 1.0) y$))) (+ x$ (* (- 1.0) ?x41))))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3343
(let ((@x52 (monotonicity (rewrite (= ?x32 (+ 1.0 (* (- 1.0) y$)))) (= ?x33 (* x$ (+ 1.0 (* (- 1.0) y$)))))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3344
(let ((@x61 (monotonicity (rewrite (= ?x31 (+ x$ ?x41))) (trans @x52 @x56 (= ?x33 (+ x$ (* (- 1.0) ?x41)))) (= ?x34 (- (+ x$ ?x41) (+ x$ (* (- 1.0) ?x41)))))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3345
(let ((@x66 (trans @x61 (rewrite (= (- (+ x$ ?x41) (+ x$ (* (- 1.0) ?x41))) ?x63)) (= ?x34 ?x63))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3346
(let ((@x75 (trans (monotonicity @x66 (rewrite (= ?x37 ?x63)) (= $x38 (= ?x63 ?x63))) @x73 (= $x38 true))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3347
(let ((@x82 (trans (monotonicity @x75 (= $x39 (not true))) (rewrite (= (not true) false)) (= $x39 false))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3348
(mp (asserted $x39) @x82 false)))))))))))))))))))))
751e8517daa7 updated SMT certificates
blanchet
parents: 58367
diff changeset
  3349
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3350
9df6daf3cc37f0807bf370ee01536b85d300ecce 51 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3351
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3352
((set-logic <null>)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3353
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3354
(let ((?x47 (+ b$ d$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3355
(let ((?x48 (+ ?x47 e$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3356
(let ((?x30 (+ 1 p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3357
(let ((?x49 (* ?x30 ?x48)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3358
(let ((?x44 (* d$ p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3359
(let ((?x42 (* ?x30 d$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3360
(let ((?x33 (+ b$ e$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3361
(let ((?x40 (* 2 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3362
(let ((?x41 (* ?x40 ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3363
(let ((?x43 (+ ?x41 ?x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3364
(let ((?x45 (+ ?x43 ?x44)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3365
(let ((?x46 (+ u$ ?x45)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3366
(let ((?x50 (- ?x46 ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3367
(let ((?x37 (* p$ d$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3368
(let ((?x34 (* ?x30 ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3369
(let ((?x35 (+ u$ ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3370
(let ((?x38 (+ ?x35 ?x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3371
(let (($x51 (= ?x38 ?x50)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3372
(let (($x52 (not $x51)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3373
(let ((?x55 (* p$ e$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3374
(let ((?x54 (* p$ b$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3375
(let ((?x70 (+ u$ b$ e$ ?x37 ?x54 ?x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3376
(let ((?x127 (+ b$ e$ d$ ?x37 ?x54 ?x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3377
(let ((?x85 (* 2 ?x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3378
(let ((?x83 (* 2 ?x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3379
(let ((?x84 (* 2 e$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3380
(let ((?x82 (* 2 b$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3381
(let ((?x116 (+ u$ ?x82 ?x84 d$ (* 2 ?x37) ?x83 ?x85)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3382
(let ((@x126 (monotonicity (rewrite (= ?x48 (+ b$ e$ d$))) (= ?x49 (* ?x30 (+ b$ e$ d$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3383
(let ((@x131 (trans @x126 (rewrite (= (* ?x30 (+ b$ e$ d$)) ?x127)) (= ?x49 ?x127))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3384
(let ((@x118 (rewrite (= (+ u$ (+ ?x82 ?x84 d$ (* 2 ?x37) ?x83 ?x85)) ?x116))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3385
(let ((?x108 (+ ?x82 ?x84 d$ (* 2 ?x37) ?x83 ?x85)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3386
(let ((?x97 (+ ?x82 ?x84 d$ ?x37 ?x83 ?x85)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3387
(let ((@x88 (rewrite (= (* (+ 2 (* 2 p$)) ?x33) (+ ?x82 ?x84 ?x83 ?x85)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3388
(let ((@x81 (monotonicity (rewrite (= ?x40 (+ 2 (* 2 p$)))) (= ?x41 (* (+ 2 (* 2 p$)) ?x33)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3389
(let ((@x96 (monotonicity (trans @x81 @x88 (= ?x41 (+ ?x82 ?x84 ?x83 ?x85))) (rewrite (= ?x42 (+ d$ ?x37))) (= ?x43 (+ (+ ?x82 ?x84 ?x83 ?x85) (+ d$ ?x37))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3390
(let ((@x101 (trans @x96 (rewrite (= (+ (+ ?x82 ?x84 ?x83 ?x85) (+ d$ ?x37)) ?x97)) (= ?x43 ?x97))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3391
(let ((@x112 (trans (monotonicity @x101 (rewrite (= ?x44 ?x37)) (= ?x45 (+ ?x97 ?x37))) (rewrite (= (+ ?x97 ?x37) ?x108)) (= ?x45 ?x108))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3392
(let ((@x120 (trans (monotonicity @x112 (= ?x46 (+ u$ ?x108))) @x118 (= ?x46 ?x116))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3393
(let ((@x139 (trans (monotonicity @x120 @x131 (= ?x50 (- ?x116 ?x127))) (rewrite (= (- ?x116 ?x127) ?x70)) (= ?x50 ?x70))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3394
(let ((@x64 (rewrite (= (+ u$ (+ b$ e$ ?x54 ?x55)) (+ u$ b$ e$ ?x54 ?x55)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3395
(let ((@x61 (monotonicity (rewrite (= ?x34 (+ b$ e$ ?x54 ?x55))) (= ?x35 (+ u$ (+ b$ e$ ?x54 ?x55))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3396
(let ((@x69 (monotonicity (trans @x61 @x64 (= ?x35 (+ u$ b$ e$ ?x54 ?x55))) (= ?x38 (+ (+ u$ b$ e$ ?x54 ?x55) ?x37)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3397
(let ((@x74 (trans @x69 (rewrite (= (+ (+ u$ b$ e$ ?x54 ?x55) ?x37) ?x70)) (= ?x38 ?x70))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3398
(let ((@x145 (trans (monotonicity @x74 @x139 (= $x51 (= ?x70 ?x70))) (rewrite (= (= ?x70 ?x70) true)) (= $x51 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3399
(let ((@x152 (trans (monotonicity @x145 (= $x52 (not true))) (rewrite (= (not true) false)) (= $x52 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3400
(mp (asserted $x52) @x152 false)))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3401
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3402
5e90e9139eb4e9a7c2678bca8dda6cda05861f4c 23 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3403
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3404
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3405
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3406
(let (($x40 (= x$ a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3407
(let ((?x36 (pair$ x$ y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3408
(let ((?x37 (fst$ ?x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3409
(let (($x39 (= ?x37 a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3410
(let ((@x50 (monotonicity (rewrite (= (=> $x39 $x40) (or (not $x39) $x40))) (= (not (=> $x39 $x40)) (not (or (not $x39) $x40))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3411
(let ((@x51 (not-or-elim (mp (asserted (not (=> $x39 $x40))) @x50 (not (or (not $x39) $x40))) $x39)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3412
(let (($x56 (= ?x37 x$)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3413
(let (($x478 (forall ((?v0 A$) (?v1 B$) )(! (= (fst$ (pair$ ?v0 ?v1)) ?v0) :pattern ( (pair$ ?v0 ?v1) ) :qid k!12))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3414
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3415
(let (($x32 (forall ((?v0 A$) (?v1 B$) )(! (= (fst$ (pair$ ?v0 ?v1)) ?v0) :qid k!12))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3416
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3417
(let (($x31 (= (fst$ (pair$ ?1 ?0)) ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3418
(let ((@x55 (mp~ (asserted $x32) (nnf-pos (refl (~ $x31 $x31)) (~ $x32 $x32)) $x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3419
(let ((@x483 (mp @x55 (quant-intro (refl (= $x31 $x31)) (= $x32 $x478)) $x478)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3420
(let (($x62 (or (not $x478) $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3421
(let ((@x149 ((_ quant-inst x$ y$) $x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3422
(let ((@x150 (trans (symm (unit-resolution @x149 @x483 $x56) (= x$ ?x37)) @x51 $x40)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3423
(let ((@x54 (not-or-elim (mp (asserted (not (=> $x39 $x40))) @x50 (not (or (not $x39) $x40))) (not $x40))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3424
(unit-resolution @x54 @x150 false)))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3425
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3426
53d3d89ffb6e574b15fcea58a111b4eecba9beb5 42 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3427
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3428
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3429
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3430
(let ((?x59 (snd$a p2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3431
(let ((?x58 (fst$a p1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3432
(let (($x60 (= ?x58 ?x59)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3433
(let ((?x55 (pair$ y$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3434
(let (($x56 (= p2$ ?x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3435
(let ((?x52 (pair$a x$ y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3436
(let (($x53 (= p1$ ?x52)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3437
(let (($x57 (and $x53 $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3438
(let ((@x70 (monotonicity (rewrite (= (=> $x57 $x60) (or (not $x57) $x60))) (= (not (=> $x57 $x60)) (not (or (not $x57) $x60))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3439
(let ((@x71 (not-or-elim (mp (asserted (not (=> $x57 $x60))) @x70 (not (or (not $x57) $x60))) $x57)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3440
(let ((@x74 (and-elim @x71 $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3441
(let ((@x504 (symm (monotonicity @x74 (= ?x59 (snd$a ?x55))) (= (snd$a ?x55) ?x59))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3442
(let ((?x100 (snd$a ?x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3443
(let (($x185 (= ?x100 x$)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3444
(let (($x534 (forall ((?v0 B$) (?v1 A$) )(! (= (snd$a (pair$ ?v0 ?v1)) ?v1) :pattern ( (pair$ ?v0 ?v1) ) :qid k!21))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3445
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3446
(let (($x47 (forall ((?v0 B$) (?v1 A$) )(! (= (snd$a (pair$ ?v0 ?v1)) ?v1) :qid k!21))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3447
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3448
(let (($x46 (= (snd$a (pair$ ?1 ?0)) ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3449
(let ((@x96 (mp~ (asserted $x47) (nnf-pos (refl (~ $x46 $x46)) (~ $x47 $x47)) $x47)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3450
(let ((@x539 (mp @x96 (quant-intro (refl (= $x46 $x46)) (= $x47 $x534)) $x534)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3451
(let (($x190 (or (not $x534) $x185)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3452
(let ((@x191 ((_ quant-inst y$ x$) $x190)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3453
(let ((?x187 (fst$a ?x52)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3454
(let (($x188 (= ?x187 x$)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3455
(let (($x522 (forall ((?v0 A$) (?v1 B$) )(! (= (fst$a (pair$a ?v0 ?v1)) ?v0) :pattern ( (pair$a ?v0 ?v1) ) :qid k!19))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3456
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3457
(let (($x39 (forall ((?v0 A$) (?v1 B$) )(! (= (fst$a (pair$a ?v0 ?v1)) ?v0) :qid k!19))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3458
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3459
(let (($x38 (= (fst$a (pair$a ?1 ?0)) ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3460
(let ((@x90 (mp~ (asserted $x39) (nnf-pos (refl (~ $x38 $x38)) (~ $x39 $x39)) $x39)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3461
(let ((@x527 (mp @x90 (quant-intro (refl (= $x38 $x38)) (= $x39 $x522)) $x522)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3462
(let (($x162 (or (not $x522) $x188)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3463
(let ((@x292 ((_ quant-inst x$ y$) $x162)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3464
(let ((@x505 (trans (monotonicity (and-elim @x71 $x53) (= ?x58 ?x187)) (unit-resolution @x292 @x527 $x188) (= ?x58 x$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3465
(let ((@x489 (trans @x505 (symm (unit-resolution @x191 @x539 $x185) (= x$ ?x100)) (= ?x58 ?x100))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3466
(let ((@x76 (not-or-elim (mp (asserted (not (=> $x57 $x60))) @x70 (not (or (not $x57) $x60))) (not $x60))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3467
(unit-resolution @x76 (trans @x489 @x504 $x60) false))))))))))))))))))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3468
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3469
f501ac3814a9ff559897f8057e18657ad1030d2a 60 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3470
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3471
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3472
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3473
(let ((?x69 (fun_app$ f$ i$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3474
(let ((?x60 (fun_upd$ f$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3475
(let ((?x61 (fun_app$b ?x60 i1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3476
(let ((?x63 (fun_app$a ?x61 v1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3477
(let ((?x64 (fun_upd$ ?x63)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3478
(let ((?x65 (fun_app$b ?x64 i2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3479
(let ((?x67 (fun_app$a ?x65 v2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3480
(let ((?x68 (fun_app$ ?x67 i$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3481
(let (($x70 (= ?x68 ?x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3482
(let ((?x197 (fun_app$ ?x63 i$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3483
(let (($x205 (= ?x197 ?x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3484
(let (($x204 (= ?x197 v1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3485
(let (($x53 (= i$ i1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3486
(let (($x484 (ite $x53 $x204 $x205)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3487
(let (($x531 (forall ((?v0 A_b_fun$) (?v1 A$) (?v2 B$) (?v3 A$) )(! (let ((?x46 (fun_app$ ?v0 ?v3)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3488
(let ((?x44 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3489
(let (($x45 (= ?v3 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3490
(ite $x45 (= ?x44 ?v2) (= ?x44 ?x46))))) :pattern ( (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3) ) :qid k!20))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3491
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3492
(let (($x102 (forall ((?v0 A_b_fun$) (?v1 A$) (?v2 B$) (?v3 A$) )(! (let ((?x46 (fun_app$ ?v0 ?v3)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3493
(let ((?x44 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3494
(let (($x45 (= ?v3 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3495
(ite $x45 (= ?x44 ?v2) (= ?x44 ?x46))))) :qid k!20))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3496
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3497
(let ((?x46 (fun_app$ ?3 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3498
(let ((?x44 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?3) ?2) ?1) ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3499
(let (($x45 (= ?0 ?2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3500
(let (($x97 (ite $x45 (= ?x44 ?1) (= ?x44 ?x46))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3501
(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)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3502
(= ?x44 (ite (= ?v3 ?v1) ?v2 (fun_app$ ?v0 ?v3)))) :qid k!20))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3503
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3504
(let ((@x104 (quant-intro (rewrite (= (= ?x44 (ite $x45 ?1 ?x46)) $x97)) (= $x49 $x102))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3505
(let ((@x91 (refl (~ (= ?x44 (ite $x45 ?1 ?x46)) (= ?x44 (ite $x45 ?1 ?x46))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3506
(let ((@x105 (mp (mp~ (asserted $x49) (nnf-pos @x91 (~ $x49 $x49)) $x49) @x104 $x102)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3507
(let ((@x536 (mp @x105 (quant-intro (refl (= $x97 $x97)) (= $x102 $x531)) $x531)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3508
(let (($x171 (not $x531)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3509
(let (($x486 (or $x171 $x484)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3510
(let ((@x487 ((_ quant-inst f$ i1$ v1$ i$) $x486)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3511
(let (($x54 (not $x53)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3512
(let (($x56 (= i$ i2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3513
(let (($x57 (not $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3514
(let (($x58 (and $x54 $x57)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3515
(let ((@x80 (monotonicity (rewrite (= (=> $x58 $x70) (or (not $x58) $x70))) (= (not (=> $x58 $x70)) (not (or (not $x58) $x70))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3516
(let ((@x81 (not-or-elim (mp (asserted (not (=> $x58 $x70))) @x80 (not (or (not $x58) $x70))) $x58)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3517
(let ((@x82 (and-elim @x81 $x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3518
(let ((@x321 (unit-resolution (def-axiom (or (not $x484) $x53 $x205)) @x82 (or (not $x484) $x205))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3519
(let (($x200 (= ?x68 ?x197)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3520
(let (($x196 (= ?x68 v2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3521
(let (($x179 (ite $x56 $x196 $x200)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3522
(let (($x301 (or $x171 $x179)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3523
(let ((@x511 ((_ quant-inst (fun_app$a ?x61 v1$) i2$ v2$ i$) $x301)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3524
(let ((@x84 (and-elim @x81 $x57)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3525
(let ((@x466 (unit-resolution (def-axiom (or (not $x179) $x56 $x200)) @x84 (or (not $x179) $x200))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3526
(let ((@x470 (trans (unit-resolution @x466 (unit-resolution @x511 @x536 $x179) $x200) (unit-resolution @x321 (unit-resolution @x487 @x536 $x484) $x205) $x70)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3527
(let ((@x86 (not-or-elim (mp (asserted (not (=> $x58 $x70))) @x80 (not (or (not $x58) $x70))) (not $x70))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3528
(unit-resolution @x86 @x470 false))))))))))))))))))))))))))))))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3529
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3530
541ab286f481dab3994e7cef5aa3ab01f0d6487a 24 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3531
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3532
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3533
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3534
(let (($x29 (f$ g$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3535
(let (($x73 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3536
(let (($x65 (not (or (= $x29 (fun_app$ g$ x$)) $x29 (fun_app$ g$ x$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3537
(let (($x32 (= $x29 (and (fun_app$ g$ x$) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3538
(let (($x37 (not (or $x32 (or (= $x29 true) (= (fun_app$ g$ x$) true))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3539
(let (($x30 (fun_app$ g$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3540
(let (($x44 (= $x29 $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3541
(let (($x56 (or $x44 (or $x29 $x30))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3542
(let ((@x67 (monotonicity (rewrite (= $x56 (or $x44 $x29 $x30))) (= (not $x56) $x65))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3543
(let ((@x55 (monotonicity (rewrite (= (= $x29 true) $x29)) (rewrite (= (= $x30 true) $x30)) (= (or (= $x29 true) (= $x30 true)) (or $x29 $x30)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3544
(let ((@x43 (monotonicity (rewrite (= (and $x30 true) $x30)) (= $x32 (= $x29 $x30)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3545
(let ((@x58 (monotonicity (trans @x43 (rewrite (= (= $x29 $x30) $x44)) (= $x32 $x44)) @x55 (= (or $x32 (or (= $x29 true) (= $x30 true))) $x56))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3546
(let ((@x69 (trans (monotonicity @x58 (= $x37 (not $x56))) @x67 (= $x37 $x65))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3547
(let ((@x70 (mp (asserted $x37) @x69 $x65)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3548
(let ((@x87 (monotonicity (iff-false (not-or-elim @x70 (not $x30)) (= $x30 false)) (= (= $x73 $x30) (= $x73 false)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3549
(let ((@x91 (trans @x87 (rewrite (= (= $x73 false) $x29)) (= (= $x73 $x30) $x29))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3550
(let ((@x93 (trans @x91 (iff-false (not-or-elim @x70 $x73) (= $x29 false)) (= (= $x73 $x30) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3551
(let (($x77 (= $x73 $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3552
(let ((@x80 (mp (not-or-elim @x70 (not $x44)) (rewrite (= (not $x44) $x77)) $x77)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3553
(mp @x80 @x93 false))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3554
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3555
c6761b6a026c6bf2d28c35e9faf633fc441c84c5 45 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3556
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3557
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3558
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3559
(let ((?x44 (id$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3560
(let (($x46 (= ?x44 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3561
(let (($x73 (not $x46)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3562
(let (($x47 (id$a true)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3563
(let (($x510 (forall ((?v0 Bool) )(! (let (($x33 (id$a ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3564
(= $x33 ?v0)) :pattern ( (id$a ?v0) ) :qid k!9))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3565
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3566
(let (($x40 (forall ((?v0 Bool) )(! (let (($x33 (id$a ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3567
(= $x33 ?v0)) :qid k!9))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3568
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3569
(let ((@x514 (quant-intro (refl (= (= (id$a ?0) ?0) (= (id$a ?0) ?0))) (= $x40 $x510))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3570
(let ((@x69 (nnf-pos (refl (~ (= (id$a ?0) ?0) (= (id$a ?0) ?0))) (~ $x40 $x40))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3571
(let (($x35 (forall ((?v0 Bool) )(! (let (($x33 (id$a ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3572
(= $x33 ?v0)) :qid k!9))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3573
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3574
(let ((@x42 (quant-intro (rewrite (= (= (id$a ?0) ?0) (= (id$a ?0) ?0))) (= $x35 $x40))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3575
(let ((@x515 (mp (mp~ (mp (asserted $x35) @x42 $x40) @x69 $x40) @x514 $x510)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3576
(let (($x87 (or (not $x510) $x47)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3577
(let ((@x176 (monotonicity (rewrite (= (= $x47 true) $x47)) (= (or (not $x510) (= $x47 true)) $x87))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3578
(let ((@x179 (trans @x176 (rewrite (= $x87 $x87)) (= (or (not $x510) (= $x47 true)) $x87))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3579
(let ((@x495 (unit-resolution (mp ((_ quant-inst true) (or (not $x510) (= $x47 true))) @x179 $x87) @x515 (hypothesis (not $x47)) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3580
(let (($x71 (or $x73 (not $x47))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3581
(let ((@x79 (monotonicity (rewrite (= (and $x46 $x47) (not $x71))) (= (not (and $x46 $x47)) (not (not $x71))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3582
(let ((@x83 (trans @x79 (rewrite (= (not (not $x71)) $x71)) (= (not (and $x46 $x47)) $x71))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3583
(let (($x54 (and $x46 $x47)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3584
(let (($x57 (not $x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3585
(let ((@x56 (monotonicity (rewrite (= (= $x47 true) $x47)) (= (and $x46 (= $x47 true)) $x54))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3586
(let ((@x62 (mp (asserted (not (and $x46 (= $x47 true)))) (monotonicity @x56 (= (not (and $x46 (= $x47 true))) $x57)) $x57)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3587
(let ((@x84 (mp @x62 @x83 $x71)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3588
(let (($x503 (forall ((?v0 A$) )(! (let ((?x28 (id$ ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3589
(= ?x28 ?v0)) :pattern ( (id$ ?v0) ) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3590
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3591
(let (($x30 (forall ((?v0 A$) )(! (let ((?x28 (id$ ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3592
(= ?x28 ?v0)) :qid k!8))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3593
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3594
(let ((@x507 (quant-intro (refl (= (= (id$ ?0) ?0) (= (id$ ?0) ?0))) (= $x30 $x503))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3595
(let ((@x64 (nnf-pos (refl (~ (= (id$ ?0) ?0) (= (id$ ?0) ?0))) (~ $x30 $x30))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3596
(let ((@x508 (mp (mp~ (asserted $x30) @x64 $x30) @x507 $x503)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3597
(let (($x163 (or (not $x503) $x46)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3598
(let ((@x496 ((_ quant-inst x$) $x163)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3599
(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
  3600
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3601
50e0d27d5994794dc9d5826e8afa4b3217acf731 14 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3602
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3603
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3604
(proof
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3605
(let (($x29 (exists ((?v0 A$) )(! (g$ ?v0) :qid k!7))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3606
))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3607
(let (($x30 (ite $x29 true false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3608
(let (($x31 (f$ $x30)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3609
(let (($x32 (=> $x31 true)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3610
(let (($x33 (not $x32)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3611
(let ((@x42 (monotonicity (monotonicity (rewrite (= $x30 $x29)) (= $x31 (f$ $x29))) (= $x32 (=> (f$ $x29) true)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3612
(let ((@x46 (trans @x42 (rewrite (= (=> (f$ $x29) true) true)) (= $x32 true))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3613
(let ((@x53 (trans (monotonicity @x46 (= $x33 (not true))) (rewrite (= (not true) false)) (= $x33 false))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3614
(mp (asserted $x33) @x53 false)))))))))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3615
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3616
8b09776b03122aeacc9dd9526e1f0e5d41a07f14 14 0
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3617
unsat
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3618
((set-logic AUFLIA)
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3619
(proof
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3620
(let (($x29 (forall ((?v0 A$) )(! (g$ ?v0) :qid k!7))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3621
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3622
(let (($x30 (ite $x29 true false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3623
(let (($x31 (f$ $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3624
(let (($x32 (=> $x31 true)))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3625
(let (($x33 (not $x32)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3626
(let ((@x42 (monotonicity (monotonicity (rewrite (= $x30 $x29)) (= $x31 (f$ $x29))) (= $x32 (=> (f$ $x29) true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3627
(let ((@x46 (trans @x42 (rewrite (= (=> (f$ $x29) true) true)) (= $x32 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3628
(let ((@x53 (trans (monotonicity @x46 (= $x33 (not true))) (rewrite (= (not true) false)) (= $x33 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3629
(mp (asserted $x33) @x53 false)))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3630
59046
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  3631
feaa6ef662dd489cf55f86209489c2992ff08d28 46 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3632
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3633
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3634
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3635
(let ((?x61 (fun_app$a le$ 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3636
(let (($x63 (fun_app$ ?x61 42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3637
(let (($x75 (not $x63)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3638
(let (($x59 (= le$ uu$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3639
(let ((@x73 (monotonicity (rewrite (= (=> $x59 $x63) (or (not $x59) $x63))) (= (not (=> $x59 $x63)) (not (or (not $x59) $x63))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3640
(let ((@x74 (not-or-elim (mp (asserted (not (=> $x59 $x63))) @x73 (not (or (not $x59) $x63))) $x59)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3641
(let ((@x482 (monotonicity (symm @x74 (= uu$ le$)) (= (fun_app$a uu$ 3) ?x61))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3642
(let ((@x484 (symm (monotonicity @x482 (= (fun_app$ (fun_app$a uu$ 3) 42) $x63)) (= $x63 (fun_app$ (fun_app$a uu$ 3) 42)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3643
(let ((@x472 (monotonicity @x484 (= $x75 (not (fun_app$ (fun_app$a uu$ 3) 42))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3644
(let ((@x77 (not-or-elim (mp (asserted (not (=> $x59 $x63))) @x73 (not (or (not $x59) $x63))) $x75)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3645
(let ((?x79 (fun_app$a uu$ 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3646
(let (($x168 (fun_app$ ?x79 42)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3647
(let (($x52 (forall ((?v0 Int) (?v1 Int) )(! (let (($x46 (<= (+ ?v0 (* (- 1) ?v1)) 0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3648
(let (($x31 (fun_app$ (fun_app$a uu$ ?v0) ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3649
(= $x31 $x46))) :pattern ( (fun_app$ (fun_app$a uu$ ?v0) ?v1) ) :qid k!10))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3650
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3651
(let (($x46 (<= (+ ?1 (* (- 1) ?0)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3652
(let (($x31 (fun_app$ (fun_app$a uu$ ?1) ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3653
(let (($x49 (= $x31 $x46)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3654
(let (($x35 (forall ((?v0 Int) (?v1 Int) )(! (let (($x32 (<= ?v0 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3655
(let (($x31 (fun_app$ (fun_app$a uu$ ?v0) ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3656
(= $x31 $x32))) :pattern ( (fun_app$ (fun_app$a uu$ ?v0) ?v1) ) :qid k!10))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3657
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3658
(let (($x40 (forall ((?v0 Int) (?v1 Int) )(! (let (($x32 (<= ?v0 ?v1)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3659
(let (($x31 (fun_app$ (fun_app$a uu$ ?v0) ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3660
(= $x31 $x32))) :pattern ( (fun_app$ (fun_app$a uu$ ?v0) ?v1) ) :qid k!10))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3661
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3662
(let ((@x51 (monotonicity (rewrite (= (<= ?1 ?0) $x46)) (= (= $x31 (<= ?1 ?0)) $x49))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3663
(let ((@x42 (quant-intro (rewrite (= (= $x31 (<= ?1 ?0)) (= $x31 (<= ?1 ?0)))) (= $x35 $x40))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3664
(let ((@x57 (mp (asserted $x35) (trans @x42 (quant-intro @x51 (= $x40 $x52)) (= $x35 $x52)) $x52)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3665
(let ((@x78 (mp~ @x57 (nnf-pos (refl (~ $x49 $x49)) (~ $x52 $x52)) $x52)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3666
(let (($x134 (or (not $x52) $x168)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3667
(let (($x137 (= (or (not $x52) (= $x168 (<= (+ 3 (* (- 1) 42)) 0))) $x134)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3668
(let ((?x169 (* (- 1) 42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3669
(let ((?x170 (+ 3 ?x169)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3670
(let (($x160 (<= ?x170 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3671
(let (($x171 (= $x168 $x160)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3672
(let ((@x158 (trans (monotonicity (rewrite (= ?x169 (- 42))) (= ?x170 (+ 3 (- 42)))) (rewrite (= (+ 3 (- 42)) (- 39))) (= ?x170 (- 39)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3673
(let ((@x497 (trans (monotonicity @x158 (= $x160 (<= (- 39) 0))) (rewrite (= (<= (- 39) 0) true)) (= $x160 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3674
(let ((@x131 (trans (monotonicity @x497 (= $x171 (= $x168 true))) (rewrite (= (= $x168 true) $x168)) (= $x171 $x168))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3675
(let ((@x478 (mp ((_ quant-inst 3 42) (or (not $x52) $x171)) (trans (monotonicity @x131 $x137) (rewrite (= $x134 $x134)) $x137) $x134)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3676
(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
  3677
59046
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  3678
9cdd1051dbf4e0648f71536fbc74bbab8e0e744e 75 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3679
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3680
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3681
(proof
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3682
(let ((?x78 (cons$ 2 nil$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3683
(let ((?x79 (cons$ 1 ?x78)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3684
(let ((?x74 (cons$ 1 nil$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3685
(let ((?x75 (cons$ 0 ?x74)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3686
(let ((?x76 (map$ uu$ ?x75)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3687
(let (($x80 (= ?x76 ?x79)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3688
(let ((?x185 (map$ uu$ ?x74)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3689
(let ((?x189 (map$ uu$ nil$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3690
(let ((?x188 (fun_app$ uu$ 1)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3691
(let ((?x160 (cons$ ?x188 ?x189)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3692
(let (($x290 (= ?x185 ?x160)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3693
(let (($x521 (forall ((?v0 Int_int_fun$) (?v1 Int) (?v2 Int_list$) )(! (= (map$ ?v0 (cons$ ?v1 ?v2)) (cons$ (fun_app$ ?v0 ?v1) (map$ ?v0 ?v2))) :pattern ( (map$ ?v0 (cons$ ?v1 ?v2)) ) :pattern ( (cons$ (fun_app$ ?v0 ?v1) (map$ ?v0 ?v2)) ) :qid k!13))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3694
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3695
(let (($x72 (forall ((?v0 Int_int_fun$) (?v1 Int) (?v2 Int_list$) )(! (= (map$ ?v0 (cons$ ?v1 ?v2)) (cons$ (fun_app$ ?v0 ?v1) (map$ ?v0 ?v2))) :qid k!13))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3696
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3697
(let (($x71 (= (map$ ?2 (cons$ ?1 ?0)) (cons$ (fun_app$ ?2 ?1) (map$ ?2 ?0)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3698
(let ((@x97 (mp~ (asserted $x72) (nnf-pos (refl (~ $x71 $x71)) (~ $x72 $x72)) $x72)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3699
(let ((@x526 (mp @x97 (quant-intro (refl (= $x71 $x71)) (= $x72 $x521)) $x521)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3700
(let (($x173 (or (not $x521) $x290)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3701
(let ((@x506 ((_ quant-inst uu$ 1 nil$) $x173)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3702
(let (($x492 (= ?x189 nil$)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3703
(let (($x513 (forall ((?v0 Int_int_fun$) )(! (= (map$ ?v0 nil$) nil$) :pattern ( (map$ ?v0 nil$) ) :qid k!12))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3704
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3705
(let (($x61 (forall ((?v0 Int_int_fun$) )(! (= (map$ ?v0 nil$) nil$) :qid k!12))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3706
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3707
(let ((@x515 (refl (= (= (map$ ?0 nil$) nil$) (= (map$ ?0 nil$) nil$)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3708
(let ((@x83 (refl (~ (= (map$ ?0 nil$) nil$) (= (map$ ?0 nil$) nil$)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3709
(let ((@x518 (mp (mp~ (asserted $x61) (nnf-pos @x83 (~ $x61 $x61)) $x61) (quant-intro @x515 (= $x61 $x513)) $x513)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3710
(let (($x495 (or (not $x513) $x492)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3711
(let ((@x496 ((_ quant-inst uu$) $x495)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3712
(let (($x136 (= ?x188 2)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3713
(let (($x51 (forall ((?v0 Int) )(! (= (+ ?v0 (* (- 1) (fun_app$ uu$ ?v0))) (- 1)) :pattern ( (fun_app$ uu$ ?v0) ) :qid k!11))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3714
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3715
(let (($x47 (= (+ ?0 (* (- 1) (fun_app$ uu$ ?0))) (- 1))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3716
(let (($x34 (forall ((?v0 Int) )(! (let ((?x29 (fun_app$ uu$ ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3717
(= ?x29 (+ ?v0 1))) :pattern ( (fun_app$ uu$ ?v0) ) :qid k!11))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3718
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3719
(let (($x42 (forall ((?v0 Int) )(! (let ((?x29 (fun_app$ uu$ ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3720
(= ?x29 (+ 1 ?v0))) :pattern ( (fun_app$ uu$ ?v0) ) :qid k!11))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3721
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3722
(let ((@x53 (quant-intro (rewrite (= (= (fun_app$ uu$ ?0) (+ 1 ?0)) $x47)) (= $x42 $x51))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3723
(let ((?x29 (fun_app$ uu$ ?0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3724
(let (($x39 (= ?x29 (+ 1 ?0))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3725
(let ((@x41 (monotonicity (rewrite (= (+ ?0 1) (+ 1 ?0))) (= (= ?x29 (+ ?0 1)) $x39))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3726
(let ((@x56 (mp (asserted $x34) (trans (quant-intro @x41 (= $x34 $x42)) @x53 (= $x34 $x51)) $x51)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3727
(let ((@x85 (mp~ @x56 (nnf-pos (refl (~ $x47 $x47)) (~ $x51 $x51)) $x51)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3728
(let (($x145 (not $x51)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3729
(let (($x499 (or $x145 $x136)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3730
(let ((@x498 (rewrite (= (= (+ 1 (* (- 1) ?x188)) (- 1)) $x136))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3731
(let ((@x204 (monotonicity @x498 (= (or $x145 (= (+ 1 (* (- 1) ?x188)) (- 1))) $x499))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3732
(let ((@x207 (trans @x204 (rewrite (= $x499 $x499)) (= (or $x145 (= (+ 1 (* (- 1) ?x188)) (- 1))) $x499))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3733
(let ((@x104 (mp ((_ quant-inst 1) (or $x145 (= (+ 1 (* (- 1) ?x188)) (- 1)))) @x207 $x499)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3734
(let ((@x191 (monotonicity (symm (unit-resolution @x104 @x85 $x136) (= 2 ?x188)) (symm (unit-resolution @x496 @x518 $x492) (= nil$ ?x189)) (= ?x78 ?x160))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3735
(let ((@x473 (trans @x191 (symm (unit-resolution @x506 @x526 $x290) (= ?x160 ?x185)) (= ?x78 ?x185))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3736
(let ((?x182 (fun_app$ uu$ 0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3737
(let (($x163 (= ?x182 1)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3738
(let (($x487 (or $x145 $x163)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3739
(let ((@x501 (monotonicity (rewrite (= (+ 0 (* (- 1) ?x182)) (* (- 1) ?x182))) (= (= (+ 0 (* (- 1) ?x182)) (- 1)) (= (* (- 1) ?x182) (- 1))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3740
(let ((@x503 (trans @x501 (rewrite (= (= (* (- 1) ?x182) (- 1)) $x163)) (= (= (+ 0 (* (- 1) ?x182)) (- 1)) $x163))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3741
(let ((@x151 (monotonicity @x503 (= (or $x145 (= (+ 0 (* (- 1) ?x182)) (- 1))) $x487))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3742
(let ((@x490 (trans @x151 (rewrite (= $x487 $x487)) (= (or $x145 (= (+ 0 (* (- 1) ?x182)) (- 1))) $x487))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3743
(let ((@x491 (mp ((_ quant-inst 0) (or $x145 (= (+ 0 (* (- 1) ?x182)) (- 1)))) @x490 $x487)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3744
(let ((@x478 (monotonicity (symm (unit-resolution @x491 @x85 $x163) (= 1 ?x182)) @x473 (= ?x79 (cons$ ?x182 ?x185)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3745
(let ((?x186 (cons$ ?x182 ?x185)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3746
(let (($x187 (= ?x76 ?x186)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3747
(let (($x504 (or (not $x521) $x187)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3748
(let ((@x505 ((_ quant-inst uu$ 0 (cons$ 1 nil$)) $x504)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3749
(let ((@x466 (trans (unit-resolution @x505 @x526 $x187) (symm @x478 (= ?x186 ?x79)) $x80)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3750
(let (($x81 (not $x80)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3751
(let ((@x82 (asserted $x81)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3752
(unit-resolution @x82 @x466 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3753
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3754
40c61a0200976d6203302a7343af5b7ad1e6ce36 11 0
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3755
unsat
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3756
((set-logic AUFLIA)
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3757
(proof
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3758
(let (($x29 (forall ((?v0 A$) )(! (p$ ?v0) :qid k!6))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3759
))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3760
(let (($x30 (not $x29)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3761
(let (($x31 (or $x29 $x30)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3762
(let (($x32 (not $x31)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3763
(let ((@x42 (trans (monotonicity (rewrite (= $x31 true)) (= $x32 (not true))) (rewrite (= (not true) false)) (= $x32 false))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3764
(mp (asserted $x32) @x42 false))))))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3765
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3766
f17a5e4d5f1a5a93fbc847f858c7c845c29d8349 109 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3767
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3768
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3769
(proof
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3770
(let ((?x75 (dec_10$ 4)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3771
(let ((?x76 (* 4 ?x75)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3772
(let ((?x77 (dec_10$ ?x76)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3773
(let (($x79 (= ?x77 6)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3774
(let (($x150 (<= ?x75 4)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3775
(let (($x174 (= ?x75 4)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3776
(let (($x513 (forall ((?v0 Int) )(! (let (($x55 (>= ?v0 10)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3777
(ite $x55 (= (dec_10$ ?v0) (dec_10$ (+ (- 10) ?v0))) (= (dec_10$ ?v0) ?v0))) :pattern ( (dec_10$ ?v0) ) :qid k!5))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3778
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3779
(let (($x92 (forall ((?v0 Int) )(! (let (($x55 (>= ?v0 10)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3780
(ite $x55 (= (dec_10$ ?v0) (dec_10$ (+ (- 10) ?v0))) (= (dec_10$ ?v0) ?v0))) :qid k!5))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3781
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3782
(let (($x55 (>= ?0 10)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3783
(let (($x87 (ite $x55 (= (dec_10$ ?0) (dec_10$ (+ (- 10) ?0))) (= (dec_10$ ?0) ?0))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3784
(let (($x68 (forall ((?v0 Int) )(! (let ((?x38 (+ (- 10) ?v0)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3785
(let ((?x41 (dec_10$ ?x38)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3786
(let (($x55 (>= ?v0 10)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3787
(let ((?x60 (ite $x55 ?x41 ?v0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3788
(let ((?x28 (dec_10$ ?v0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3789
(= ?x28 ?x60)))))) :qid k!5))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3790
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3791
(let ((?x38 (+ (- 10) ?0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3792
(let ((?x41 (dec_10$ ?x38)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3793
(let ((?x60 (ite $x55 ?x41 ?0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3794
(let ((?x28 (dec_10$ ?0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3795
(let (($x65 (= ?x28 ?x60)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3796
(let (($x35 (forall ((?v0 Int) )(! (let ((?x28 (dec_10$ ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3797
(= ?x28 (ite (< ?v0 10) ?v0 (dec_10$ (- ?v0 10))))) :qid k!5))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3798
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3799
(let (($x50 (forall ((?v0 Int) )(! (let ((?x38 (+ (- 10) ?v0)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3800
(let ((?x41 (dec_10$ ?x38)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3801
(let (($x30 (< ?v0 10)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3802
(let ((?x44 (ite $x30 ?v0 ?x41)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3803
(let ((?x28 (dec_10$ ?v0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3804
(= ?x28 ?x44)))))) :qid k!5))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3805
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3806
(let ((@x59 (monotonicity (rewrite (= (< ?0 10) (not $x55))) (= (ite (< ?0 10) ?0 ?x41) (ite (not $x55) ?0 ?x41)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3807
(let ((@x64 (trans @x59 (rewrite (= (ite (not $x55) ?0 ?x41) ?x60)) (= (ite (< ?0 10) ?0 ?x41) ?x60))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3808
(let ((@x67 (monotonicity @x64 (= (= ?x28 (ite (< ?0 10) ?0 ?x41)) $x65))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3809
(let (($x30 (< ?0 10)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3810
(let ((?x44 (ite $x30 ?0 ?x41)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3811
(let (($x47 (= ?x28 ?x44)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3812
(let ((@x43 (monotonicity (rewrite (= (- ?0 10) ?x38)) (= (dec_10$ (- ?0 10)) ?x41))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3813
(let ((@x49 (monotonicity (monotonicity @x43 (= (ite $x30 ?0 (dec_10$ (- ?0 10))) ?x44)) (= (= ?x28 (ite $x30 ?0 (dec_10$ (- ?0 10)))) $x47))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3814
(let ((@x72 (trans (quant-intro @x49 (= $x35 $x50)) (quant-intro @x67 (= $x50 $x68)) (= $x35 $x68))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3815
(let ((@x86 (mp~ (mp (asserted $x35) @x72 $x68) (nnf-pos (refl (~ $x65 $x65)) (~ $x68 $x68)) $x68)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3816
(let ((@x95 (mp @x86 (quant-intro (rewrite (= $x65 $x87)) (= $x68 $x92)) $x92)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3817
(let ((@x518 (mp @x95 (quant-intro (refl (= $x87 $x87)) (= $x92 $x513)) $x513)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3818
(let (($x501 (not $x513)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3819
(let (($x163 (or $x501 $x174)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3820
(let ((?x97 (+ (- 10) 4)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3821
(let ((?x183 (dec_10$ ?x97)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3822
(let (($x184 (= ?x75 ?x183)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3823
(let (($x96 (>= 4 10)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3824
(let (($x185 (ite $x96 $x184 $x174)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3825
(let ((@x172 (monotonicity (monotonicity (rewrite (= ?x97 (- 6))) (= ?x183 (dec_10$ (- 6)))) (= $x184 (= ?x75 (dec_10$ (- 6)))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3826
(let ((@x507 (monotonicity (rewrite (= $x96 false)) @x172 (= $x185 (ite false (= ?x75 (dec_10$ (- 6))) $x174)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3827
(let ((@x511 (trans @x507 (rewrite (= (ite false (= ?x75 (dec_10$ (- 6))) $x174) $x174)) (= $x185 $x174))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3828
(let ((@x148 (trans (monotonicity @x511 (= (or $x501 $x185) $x163)) (rewrite (= $x163 $x163)) (= (or $x501 $x185) $x163))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3829
(let ((@x149 (mp ((_ quant-inst 4) (or $x501 $x185)) @x148 $x163)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3830
(let ((@x438 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x174) $x150)) (unit-resolution @x149 @x518 $x174) $x150)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3831
(let (($x151 (>= ?x75 4)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3832
(let ((@x428 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x174) $x151)) (unit-resolution @x149 @x518 $x174) $x151)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3833
(let ((?x489 (+ (- 10) ?x76)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3834
(let ((?x490 (dec_10$ ?x489)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3835
(let ((?x448 (* (- 1) ?x490)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3836
(let ((?x449 (+ ?x76 ?x448)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3837
(let (($x444 (<= ?x449 10)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3838
(let (($x292 (= ?x449 10)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3839
(let ((?x455 (+ (- 20) ?x76)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3840
(let ((?x458 (dec_10$ ?x455)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3841
(let (($x461 (= ?x490 ?x458)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3842
(let (($x310 (>= ?x75 5)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3843
(let (($x450 (ite $x310 $x461 $x292)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3844
(let (($x453 (or $x501 $x450)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3845
(let (($x470 (= ?x490 ?x489)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3846
(let ((?x467 (+ (- 10) ?x489)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3847
(let ((?x468 (dec_10$ ?x467)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3848
(let (($x469 (= ?x490 ?x468)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3849
(let (($x466 (>= ?x489 10)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3850
(let (($x471 (ite $x466 $x469 $x470)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3851
(let ((@x463 (monotonicity (monotonicity (rewrite (= ?x467 ?x455)) (= ?x468 ?x458)) (= $x469 $x461))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3852
(let ((@x452 (monotonicity (rewrite (= $x466 $x310)) @x463 (rewrite (= $x470 $x292)) (= $x471 $x450))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3853
(let ((@x442 (trans (monotonicity @x452 (= (or $x501 $x471) $x453)) (rewrite (= $x453 $x453)) (= (or $x501 $x471) $x453))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3854
(let ((@x443 (mp ((_ quant-inst (+ (- 10) ?x76)) (or $x501 $x471)) @x442 $x453)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3855
(let (($x346 (not $x310)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3856
(let ((@x418 (unit-resolution (def-axiom (or (not $x450) $x310 $x292)) (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x346 (not $x150))) @x438 $x346) (or (not $x450) $x292))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3857
(let ((@x422 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x292) $x444)) (unit-resolution @x418 (unit-resolution @x443 @x518 $x450) $x292) $x444)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3858
(let (($x336 (>= ?x449 10)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3859
(let ((@x410 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x292) $x336)) (unit-resolution @x418 (unit-resolution @x443 @x518 $x450) $x292) $x336)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3860
(let (($x491 (= ?x77 ?x490)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3861
(let ((?x499 (* (- 1) ?x77)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3862
(let ((?x485 (+ ?x76 ?x499)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3863
(let (($x497 (= ?x485 0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3864
(let (($x131 (>= ?x75 3)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3865
(let (($x486 (ite $x131 $x491 $x497)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3866
(let (($x205 (or $x501 $x486)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3867
(let ((@x204 (monotonicity (rewrite (= (>= ?x76 10) $x131)) (rewrite (= (= ?x77 ?x76) $x497)) (= (ite (>= ?x76 10) $x491 (= ?x77 ?x76)) $x486))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3868
(let ((@x479 (monotonicity @x204 (= (or $x501 (ite (>= ?x76 10) $x491 (= ?x77 ?x76))) $x205))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3869
(let ((@x212 (trans @x479 (rewrite (= $x205 $x205)) (= (or $x501 (ite (>= ?x76 10) $x491 (= ?x77 ?x76))) $x205))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3870
(let ((@x481 (mp ((_ quant-inst (* 4 ?x75)) (or $x501 (ite (>= ?x76 10) $x491 (= ?x77 ?x76)))) @x212 $x205)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3871
(let ((@x397 (unit-resolution (def-axiom (or (not $x486) (not $x131) $x491)) (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x131 (not $x151))) @x428 $x131) (unit-resolution @x481 @x518 $x486) $x491)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3872
(let (($x80 (not $x79)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3873
(let ((@x81 (asserted $x80)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3874
(unit-resolution @x81 (trans @x397 ((_ th-lemma arith eq-propagate 1 1 -4 -4) @x410 @x422 @x428 @x438 (= ?x490 6)) $x79) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3875
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3876
8c0c900f4d4a92edc7d6113704948dc9280df015 348 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3877
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3878
((set-logic <null>)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3879
(proof
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3880
(let ((?x96 (map$ uu$ xs$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3881
(let ((?x97 (eval_dioph$ ks$ ?x96)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3882
(let ((?x424 (+ l$ ?x97)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3883
(let ((?x425 (mod ?x424 2)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3884
(let (($x482 (>= ?x425 2)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3885
(let (($x564 (not $x482)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3886
(let ((@x26 (true-axiom true)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3887
(let ((?x369 (* (- 1) l$)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3888
(let ((?x93 (eval_dioph$ ks$ xs$)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3889
(let ((?x678 (+ ?x93 ?x369)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3890
(let (($x679 (<= ?x678 0)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3891
(let (($x95 (= ?x93 l$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3892
(let ((?x110 (* (- 1) ?x97)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3893
(let ((?x111 (+ l$ ?x110)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3894
(let ((?x114 (div$ ?x111 2)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3895
(let ((?x101 (map$ uua$ xs$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3896
(let ((?x102 (eval_dioph$ ks$ ?x101)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3897
(let (($x117 (= ?x102 ?x114)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3898
(let (($x282 (not $x117)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3899
(let ((?x99 (mod$ l$ 2)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3900
(let ((?x98 (mod$ ?x97 2)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3901
(let (($x100 (= ?x98 ?x99)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3902
(let (($x281 (not $x100)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3903
(let (($x283 (or $x281 $x282)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3904
(let (($x465 (>= ?x425 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3905
(let ((?x496 (* (- 2) ?x102)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3906
(let ((?x497 (+ ?x93 ?x110 ?x496)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3907
(let (($x504 (<= ?x497 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3908
(let (($x498 (= ?x497 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3909
(let (($x304 (forall ((?v0 Int_list$) (?v1 Int_list$) )(! (let ((?x45 (eval_dioph$ ?v0 ?v1)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3910
(let ((?x83 (+ ?x45 (* (- 1) (eval_dioph$ ?v0 (map$ uu$ ?v1))) (* (- 2) (eval_dioph$ ?v0 (map$ uua$ ?v1))))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3911
(= ?x83 0))) :pattern ( (eval_dioph$ ?v0 (map$ uu$ ?v1)) ) :pattern ( (eval_dioph$ ?v0 (map$ uua$ ?v1)) ) :qid k!19))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3912
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3913
(let (($x85 (forall ((?v0 Int_list$) (?v1 Int_list$) )(! (let ((?x45 (eval_dioph$ ?v0 ?v1)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3914
(let ((?x83 (+ ?x45 (* (- 1) (eval_dioph$ ?v0 (map$ uu$ ?v1))) (* (- 2) (eval_dioph$ ?v0 (map$ uua$ ?v1))))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3915
(= ?x83 0))) :qid k!19))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3916
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3917
(let ((?x45 (eval_dioph$ ?1 ?0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3918
(let ((?x83 (+ ?x45 (* (- 1) (eval_dioph$ ?1 (map$ uu$ ?0))) (* (- 2) (eval_dioph$ ?1 (map$ uua$ ?0))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3919
(let (($x79 (= ?x83 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3920
(let (($x58 (forall ((?v0 Int_list$) (?v1 Int_list$) )(! (let ((?x45 (eval_dioph$ ?v0 ?v1)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3921
(let ((?x48 (eval_dioph$ ?v0 (map$ uu$ ?v1))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3922
(let ((?x56 (+ (* (eval_dioph$ ?v0 (map$ uua$ ?v1)) 2) ?x48)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3923
(= ?x56 ?x45)))) :qid k!19))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3924
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3925
(let (($x74 (forall ((?v0 Int_list$) (?v1 Int_list$) )(! (let ((?x45 (eval_dioph$ ?v0 ?v1)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3926
(let ((?x54 (eval_dioph$ ?v0 (map$ uua$ ?v1))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3927
(let ((?x60 (* 2 ?x54)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3928
(let ((?x48 (eval_dioph$ ?v0 (map$ uu$ ?v1))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3929
(let ((?x66 (+ ?x48 ?x60)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3930
(= ?x66 ?x45)))))) :qid k!19))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3931
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3932
(let ((?x54 (eval_dioph$ ?1 (map$ uua$ ?0))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3933
(let ((?x60 (* 2 ?x54)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3934
(let ((?x48 (eval_dioph$ ?1 (map$ uu$ ?0))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3935
(let ((?x66 (+ ?x48 ?x60)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3936
(let (($x71 (= ?x66 ?x45)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3937
(let ((@x65 (monotonicity (rewrite (= (* ?x54 2) ?x60)) (= (+ (* ?x54 2) ?x48) (+ ?x60 ?x48)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3938
(let ((@x70 (trans @x65 (rewrite (= (+ ?x60 ?x48) ?x66)) (= (+ (* ?x54 2) ?x48) ?x66))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3939
(let ((@x76 (quant-intro (monotonicity @x70 (= (= (+ (* ?x54 2) ?x48) ?x45) $x71)) (= $x58 $x74))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3940
(let ((@x89 (trans @x76 (quant-intro (rewrite (= $x71 $x79)) (= $x74 $x85)) (= $x58 $x85))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3941
(let ((@x270 (mp~ (mp (asserted $x58) @x89 $x85) (nnf-pos (refl (~ $x79 $x79)) (~ $x85 $x85)) $x85)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  3942
(let ((@x309 (mp @x270 (quant-intro (refl (= $x79 $x79)) (= $x85 $x304)) $x304)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3943
(let (($x502 (or (not $x304) $x498)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3944
(let ((@x503 ((_ quant-inst ks$ xs$) $x502)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3945
(let ((@x795 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x498) $x504)) (unit-resolution @x503 @x309 $x498) $x504)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3946
(let (($x815 (not $x679)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3947
(let (($x680 (>= ?x678 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3948
(let ((?x592 (mod ?x97 2)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3949
(let ((?x619 (* (- 1) ?x592)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3950
(let ((?x511 (mod l$ 2)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3951
(let ((?x538 (* (- 1) ?x511)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3952
(let ((?x776 (* (- 1) ?x102)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3953
(let ((?x759 (+ l$ ?x98 ?x776 ?x538 (* (- 1) (div l$ 2)) ?x619 (* (- 1) (div ?x97 2)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3954
(let (($x760 (>= ?x759 1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3955
(let (($x747 (not $x760)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3956
(let ((?x674 (* (- 1) ?x99)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3957
(let ((?x675 (+ ?x98 ?x674)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3958
(let (($x676 (<= ?x675 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3959
(let (($x284 (not $x283)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3960
(let ((@x493 (hypothesis $x284)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3961
(let ((@x781 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x281 $x676)) (unit-resolution (def-axiom (or $x283 $x100)) @x493 $x100) $x676)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3962
(let ((?x670 (* (- 1) ?x114)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3963
(let ((?x671 (+ ?x102 ?x670)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3964
(let (($x673 (>= ?x671 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3965
(let ((@x787 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x282 $x673)) (unit-resolution (def-axiom (or $x283 $x117)) @x493 $x117) $x673)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3966
(let ((?x557 (div l$ 2)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3967
(let ((?x570 (* (- 2) ?x557)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3968
(let ((?x571 (+ l$ ?x538 ?x570)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3969
(let (($x576 (<= ?x571 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3970
(let (($x569 (= ?x571 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3971
(let ((@x568 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x569) $x576)) (unit-resolution ((_ th-lemma arith) (or false $x569)) @x26 $x569) $x576)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3972
(let ((?x620 (+ ?x98 ?x619)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3973
(let (($x635 (<= ?x620 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3974
(let (($x621 (= ?x620 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3975
(let (($x318 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x200 (mod ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3976
(let ((?x157 (* (- 1) ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3977
(let ((?x154 (* (- 1) ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3978
(let ((?x208 (mod ?x154 ?x157)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3979
(let ((?x214 (* (- 1) ?x208)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3980
(let (($x175 (<= ?v1 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3981
(let ((?x234 (ite $x175 ?x214 ?x200)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3982
(let (($x143 (= ?v1 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3983
(let ((?x239 (ite $x143 ?v0 ?x234)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3984
(let ((?x199 (mod$ ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3985
(= ?x199 ?x239))))))))))) :pattern ( (mod$ ?v0 ?v1) ) :qid k!22))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3986
))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3987
(let (($x245 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x200 (mod ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3988
(let ((?x157 (* (- 1) ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3989
(let ((?x154 (* (- 1) ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3990
(let ((?x208 (mod ?x154 ?x157)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3991
(let ((?x214 (* (- 1) ?x208)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3992
(let (($x175 (<= ?v1 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3993
(let ((?x234 (ite $x175 ?x214 ?x200)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3994
(let (($x143 (= ?v1 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3995
(let ((?x239 (ite $x143 ?v0 ?x234)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3996
(let ((?x199 (mod$ ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3997
(= ?x199 ?x239))))))))))) :qid k!22))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3998
))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  3999
(let ((?x200 (mod ?1 ?0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4000
(let ((?x157 (* (- 1) ?0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4001
(let ((?x154 (* (- 1) ?1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4002
(let ((?x208 (mod ?x154 ?x157)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4003
(let ((?x214 (* (- 1) ?x208)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4004
(let (($x175 (<= ?0 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4005
(let ((?x234 (ite $x175 ?x214 ?x200)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4006
(let (($x143 (= ?0 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4007
(let ((?x239 (ite $x143 ?1 ?x234)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4008
(let ((?x199 (mod$ ?1 ?0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4009
(let (($x242 (= ?x199 ?x239)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4010
(let (($x206 (forall ((?v0 Int) (?v1 Int) )(! (let (($x143 (= ?v1 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4011
(let ((?x204 (ite $x143 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4012
(let ((?x199 (mod$ ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4013
(= ?x199 ?x204)))) :qid k!22))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4014
))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4015
(let (($x228 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x157 (* (- 1) ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4016
(let ((?x154 (* (- 1) ?v0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4017
(let ((?x208 (mod ?x154 ?x157)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4018
(let ((?x214 (* (- 1) ?x208)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4019
(let ((?x200 (mod ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4020
(let (($x144 (< 0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4021
(let ((?x219 (ite $x144 ?x200 ?x214)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4022
(let (($x143 (= ?v1 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4023
(let ((?x222 (ite $x143 ?v0 ?x219)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4024
(let ((?x199 (mod$ ?v0 ?v1)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4025
(= ?x199 ?x222))))))))))) :qid k!22))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4026
))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4027
(let ((@x233 (monotonicity (rewrite (= (< 0 ?0) (not $x175))) (= (ite (< 0 ?0) ?x200 ?x214) (ite (not $x175) ?x200 ?x214)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4028
(let ((@x238 (trans @x233 (rewrite (= (ite (not $x175) ?x200 ?x214) ?x234)) (= (ite (< 0 ?0) ?x200 ?x214) ?x234))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4029
(let ((@x241 (monotonicity @x238 (= (ite $x143 ?1 (ite (< 0 ?0) ?x200 ?x214)) ?x239))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4030
(let ((@x244 (monotonicity @x241 (= (= ?x199 (ite $x143 ?1 (ite (< 0 ?0) ?x200 ?x214))) $x242))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4031
(let (($x144 (< 0 ?0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4032
(let ((?x219 (ite $x144 ?x200 ?x214)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4033
(let ((?x222 (ite $x143 ?1 ?x219)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4034
(let (($x225 (= ?x199 ?x222)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4035
(let (($x226 (= (= ?x199 (ite $x143 ?1 (ite $x144 ?x200 (- (mod (- ?1) (- ?0)))))) $x225)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4036
(let ((@x210 (monotonicity (rewrite (= (- ?1) ?x154)) (rewrite (= (- ?0) ?x157)) (= (mod (- ?1) (- ?0)) ?x208))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4037
(let ((@x218 (trans (monotonicity @x210 (= (- (mod (- ?1) (- ?0))) (- ?x208))) (rewrite (= (- ?x208) ?x214)) (= (- (mod (- ?1) (- ?0))) ?x214))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4038
(let ((@x221 (monotonicity @x218 (= (ite $x144 ?x200 (- (mod (- ?1) (- ?0)))) ?x219))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4039
(let ((@x224 (monotonicity @x221 (= (ite $x143 ?1 (ite $x144 ?x200 (- (mod (- ?1) (- ?0))))) ?x222))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4040
(let ((@x249 (trans (quant-intro (monotonicity @x224 $x226) (= $x206 $x228)) (quant-intro @x244 (= $x228 $x245)) (= $x206 $x245))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4041
(let ((@x280 (mp~ (mp (asserted $x206) @x249 $x245) (nnf-pos (refl (~ $x242 $x242)) (~ $x245 $x245)) $x245)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4042
(let ((@x323 (mp @x280 (quant-intro (refl (= $x242 $x242)) (= $x245 $x318)) $x318)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4043
(let (($x545 (not $x318)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4044
(let (($x626 (or $x545 $x621)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4045
(let ((?x359 (* (- 1) 2)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4046
(let ((?x590 (mod ?x110 ?x359)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4047
(let ((?x591 (* (- 1) ?x590)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4048
(let (($x357 (<= 2 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4049
(let ((?x593 (ite $x357 ?x591 ?x592)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4050
(let (($x356 (= 2 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4051
(let ((?x594 (ite $x356 ?x97 ?x593)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4052
(let (($x595 (= ?x98 ?x594)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4053
(let ((@x601 (monotonicity (monotonicity (rewrite (= ?x359 (- 2))) (= ?x590 (mod ?x110 (- 2)))) (= ?x591 (* (- 1) (mod ?x110 (- 2)))))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4054
(let ((@x368 (rewrite (= $x357 false))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4055
(let ((@x604 (monotonicity @x368 @x601 (= ?x593 (ite false (* (- 1) (mod ?x110 (- 2))) ?x592)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4056
(let ((@x608 (trans @x604 (rewrite (= (ite false (* (- 1) (mod ?x110 (- 2))) ?x592) ?x592)) (= ?x593 ?x592))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4057
(let ((@x366 (rewrite (= $x356 false))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4058
(let ((@x615 (trans (monotonicity @x366 @x608 (= ?x594 (ite false ?x97 ?x592))) (rewrite (= (ite false ?x97 ?x592) ?x592)) (= ?x594 ?x592))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4059
(let ((@x625 (trans (monotonicity @x615 (= $x595 (= ?x98 ?x592))) (rewrite (= (= ?x98 ?x592) $x621)) (= $x595 $x621))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4060
(let ((@x633 (trans (monotonicity @x625 (= (or $x545 $x595) $x626)) (rewrite (= $x626 $x626)) (= (or $x545 $x595) $x626))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4061
(let ((@x634 (mp ((_ quant-inst (eval_dioph$ ks$ ?x96) 2) (or $x545 $x595)) @x633 $x626)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4062
(let ((@x431 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x621) $x635)) (unit-resolution @x634 @x323 $x621) $x635)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4063
(let ((?x637 (div ?x97 2)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4064
(let ((?x650 (* (- 2) ?x637)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4065
(let ((?x651 (+ ?x97 ?x619 ?x650)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4066
(let (($x656 (<= ?x651 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4067
(let (($x649 (= ?x651 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4068
(let ((@x661 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x649) $x656)) (unit-resolution ((_ th-lemma arith) (or false $x649)) @x26 $x649) $x656)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4069
(let ((?x539 (+ ?x99 ?x538)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4070
(let (($x555 (<= ?x539 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4071
(let (($x540 (= ?x539 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4072
(let (($x546 (or $x545 $x540)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4073
(let ((?x506 (mod ?x369 ?x359)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4074
(let ((?x507 (* (- 1) ?x506)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4075
(let ((?x512 (ite $x357 ?x507 ?x511)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4076
(let ((?x513 (ite $x356 l$ ?x512)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4077
(let (($x514 (= ?x99 ?x513)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4078
(let ((@x520 (monotonicity (monotonicity (rewrite (= ?x359 (- 2))) (= ?x506 (mod ?x369 (- 2)))) (= ?x507 (* (- 1) (mod ?x369 (- 2)))))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4079
(let ((@x523 (monotonicity @x368 @x520 (= ?x512 (ite false (* (- 1) (mod ?x369 (- 2))) ?x511)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4080
(let ((@x527 (trans @x523 (rewrite (= (ite false (* (- 1) (mod ?x369 (- 2))) ?x511) ?x511)) (= ?x512 ?x511))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4081
(let ((@x534 (trans (monotonicity @x366 @x527 (= ?x513 (ite false l$ ?x511))) (rewrite (= (ite false l$ ?x511) ?x511)) (= ?x513 ?x511))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4082
(let ((@x544 (trans (monotonicity @x534 (= $x514 (= ?x99 ?x511))) (rewrite (= (= ?x99 ?x511) $x540)) (= $x514 $x540))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4083
(let ((@x553 (trans (monotonicity @x544 (= (or $x545 $x514) $x546)) (rewrite (= $x546 $x546)) (= (or $x545 $x514) $x546))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4084
(let ((@x554 (mp ((_ quant-inst l$ 2) (or $x545 $x514)) @x553 $x546)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4085
(let ((@x668 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x540) $x555)) (unit-resolution @x554 @x323 $x540) $x555)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4086
(let ((?x361 (div ?x111 2)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4087
(let ((?x395 (* (- 1) ?x361)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4088
(let ((?x396 (+ ?x114 ?x395)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4089
(let (($x414 (>= ?x396 0)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4090
(let (($x397 (= ?x396 0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4091
(let (($x311 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x145 (div ?v0 ?v1)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4092
(let ((?x157 (* (- 1) ?v1)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4093
(let ((?x154 (* (- 1) ?v0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4094
(let ((?x160 (div ?x154 ?x157)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4095
(let (($x175 (<= ?v1 0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4096
(let ((?x182 (ite $x175 ?x160 ?x145)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4097
(let (($x143 (= ?v1 0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4098
(let ((?x141 (div$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4099
(= ?x141 (ite $x143 0 ?x182)))))))))) :pattern ( (div$ ?v0 ?v1) ) :qid k!21))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4100
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4101
(let (($x193 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x145 (div ?v0 ?v1)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4102
(let ((?x157 (* (- 1) ?v1)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4103
(let ((?x154 (* (- 1) ?v0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4104
(let ((?x160 (div ?x154 ?x157)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4105
(let (($x175 (<= ?v1 0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4106
(let ((?x182 (ite $x175 ?x160 ?x145)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4107
(let (($x143 (= ?v1 0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4108
(let ((?x141 (div$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4109
(= ?x141 (ite $x143 0 ?x182)))))))))) :qid k!21))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4110
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4111
(let ((?x141 (div$ ?1 ?0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4112
(let (($x190 (= ?x141 (ite $x143 0 (ite $x175 (div ?x154 ?x157) (div ?1 ?0))))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4113
(let (($x152 (forall ((?v0 Int) (?v1 Int) )(! (let (($x143 (= ?v1 0)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4114
(let ((?x150 (ite $x143 0 (ite (< 0 ?v1) (div ?v0 ?v1) (div (- ?v0) (- ?v1))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4115
(let ((?x141 (div$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4116
(= ?x141 ?x150)))) :qid k!21))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4117
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4118
(let (($x172 (forall ((?v0 Int) (?v1 Int) )(! (let ((?x157 (* (- 1) ?v1)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4119
(let ((?x154 (* (- 1) ?v0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4120
(let ((?x160 (div ?x154 ?x157)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4121
(let ((?x145 (div ?v0 ?v1)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4122
(let (($x144 (< 0 ?v1)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4123
(let ((?x163 (ite $x144 ?x145 ?x160)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4124
(let (($x143 (= ?v1 0)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4125
(let ((?x166 (ite $x143 0 ?x163)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4126
(let ((?x141 (div$ ?v0 ?v1)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4127
(= ?x141 ?x166)))))))))) :qid k!21))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4128
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4129
(let ((?x160 (div ?x154 ?x157)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4130
(let ((?x145 (div ?1 ?0)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4131
(let ((?x163 (ite $x144 ?x145 ?x160)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4132
(let ((?x166 (ite $x143 0 ?x163)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4133
(let (($x169 (= ?x141 ?x166)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4134
(let ((@x181 (monotonicity (rewrite (= $x144 (not $x175))) (= ?x163 (ite (not $x175) ?x145 ?x160)))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4135
(let ((@x186 (trans @x181 (rewrite (= (ite (not $x175) ?x145 ?x160) (ite $x175 ?x160 ?x145))) (= ?x163 (ite $x175 ?x160 ?x145)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4136
(let ((@x192 (monotonicity (monotonicity @x186 (= ?x166 (ite $x143 0 (ite $x175 ?x160 ?x145)))) (= $x169 $x190))))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4137
(let (($x170 (= (= ?x141 (ite $x143 0 (ite $x144 ?x145 (div (- ?1) (- ?0))))) $x169)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4138
(let ((@x162 (monotonicity (rewrite (= (- ?1) ?x154)) (rewrite (= (- ?0) ?x157)) (= (div (- ?1) (- ?0)) ?x160))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4139
(let ((@x168 (monotonicity (monotonicity @x162 (= (ite $x144 ?x145 (div (- ?1) (- ?0))) ?x163)) (= (ite $x143 0 (ite $x144 ?x145 (div (- ?1) (- ?0)))) ?x166))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4140
(let ((@x197 (trans (quant-intro (monotonicity @x168 $x170) (= $x152 $x172)) (quant-intro @x192 (= $x172 $x193)) (= $x152 $x193))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4141
(let ((@x275 (mp~ (mp (asserted $x152) @x197 $x193) (nnf-pos (refl (~ $x190 $x190)) (~ $x193 $x193)) $x193)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4142
(let ((@x316 (mp @x275 (quant-intro (refl (= $x190 $x190)) (= $x193 $x311)) $x311)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4143
(let (($x403 (or (not $x311) $x397)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4144
(let ((?x358 (* (- 1) ?x111)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4145
(let ((?x360 (div ?x358 ?x359)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4146
(let ((?x362 (ite $x357 ?x360 ?x361)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4147
(let ((?x363 (ite $x356 0 ?x362)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4148
(let (($x364 (= ?x114 ?x363)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4149
(let ((@x374 (rewrite (= ?x359 (- 2)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4150
(let ((@x377 (monotonicity (rewrite (= ?x358 (+ ?x369 ?x97))) @x374 (= ?x360 (div (+ ?x369 ?x97) (- 2))))))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4151
(let ((@x380 (monotonicity @x368 @x377 (= ?x362 (ite false (div (+ ?x369 ?x97) (- 2)) ?x361)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4152
(let ((@x384 (trans @x380 (rewrite (= (ite false (div (+ ?x369 ?x97) (- 2)) ?x361) ?x361)) (= ?x362 ?x361))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4153
(let ((@x391 (trans (monotonicity @x366 @x384 (= ?x363 (ite false 0 ?x361))) (rewrite (= (ite false 0 ?x361) ?x361)) (= ?x363 ?x361))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4154
(let ((@x401 (trans (monotonicity @x391 (= $x364 (= ?x114 ?x361))) (rewrite (= (= ?x114 ?x361) $x397)) (= $x364 $x397))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4155
(let ((@x410 (trans (monotonicity @x401 (= (or (not $x311) $x364) $x403)) (rewrite (= $x403 $x403)) (= (or (not $x311) $x364) $x403))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4156
(let ((@x411 (mp ((_ quant-inst (+ l$ ?x110) 2) (or (not $x311) $x364)) @x410 $x403)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4157
(let ((@x485 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x397) $x414)) (unit-resolution @x411 @x316 $x397) $x414)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4158
(let ((?x436 (* (- 1) ?x425)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4159
(let ((?x435 (* (- 2) ?x361)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4160
(let ((?x437 (+ l$ ?x110 ?x435 ?x436)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4161
(let (($x442 (<= ?x437 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4162
(let (($x434 (= ?x437 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4163
(let ((@x745 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x434) $x442)) (unit-resolution ((_ th-lemma arith) (or false $x434)) @x26 $x434) $x442)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4164
(let ((@x746 ((_ th-lemma arith farkas 1 -2 -2 -2 1 1 1 1 1 1) @x745 @x485 (hypothesis $x673) (hypothesis $x760) (hypothesis $x676) @x668 @x661 @x431 @x568 (unit-resolution ((_ th-lemma arith) (or false $x564)) @x26 $x564) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4165
(let ((@x788 (unit-resolution (lemma @x746 (or $x747 (not $x673) (not $x676))) @x787 @x781 $x747)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4166
(let (($x677 (>= ?x675 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4167
(let ((@x812 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x281 $x677)) (unit-resolution (def-axiom (or $x283 $x100)) @x493 $x100) $x677)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4168
(let (($x577 (>= ?x571 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4169
(let ((@x778 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x569) $x577)) (unit-resolution ((_ th-lemma arith) (or false $x569)) @x26 $x569) $x577)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4170
(let (($x556 (>= ?x539 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4171
(let ((@x645 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x540) $x556)) (unit-resolution @x554 @x323 $x540) $x556)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4172
(let (($x636 (>= ?x620 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4173
(let ((@x652 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x621) $x636)) (unit-resolution @x634 @x323 $x621) $x636)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4174
(let (($x505 (>= ?x497 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4175
(let ((@x488 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x498) $x505)) (unit-resolution @x503 @x309 $x498) $x505)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4176
(let (($x657 (>= ?x651 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4177
(let ((@x581 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x649) $x657)) (unit-resolution ((_ th-lemma arith) (or false $x649)) @x26 $x649) $x657)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4178
(let ((@x582 ((_ th-lemma arith farkas -1/2 -1/2 -1/2 1/2 -1/2 -1/2 -1/2 1) @x581 (hypothesis $x677) @x488 (hypothesis (not $x680)) @x652 @x645 @x778 (hypothesis $x747) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4179
(let ((@x813 (unit-resolution (lemma @x582 (or $x680 (not $x677) $x760)) @x812 @x788 $x680)))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4180
(let (($x134 (not $x95)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4181
(let (($x290 (= $x95 $x283)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4182
(let ((@x289 (monotonicity (rewrite (= (and $x100 $x117) $x284)) (= (= $x134 (and $x100 $x117)) (= $x134 $x284)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4183
(let ((@x294 (trans @x289 (rewrite (= (= $x134 $x284) $x290)) (= (= $x134 (and $x100 $x117)) $x290))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4184
(let (($x120 (and $x100 $x117)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4185
(let (($x135 (= $x134 $x120)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4186
(let (($x107 (= $x95 (and $x100 (= ?x102 (div$ (- l$ ?x97) 2))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4187
(let (($x108 (not $x107)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4188
(let ((@x116 (monotonicity (rewrite (= (- l$ ?x97) ?x111)) (= (div$ (- l$ ?x97) 2) ?x114))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4189
(let ((@x122 (monotonicity (monotonicity @x116 (= (= ?x102 (div$ (- l$ ?x97) 2)) $x117)) (= (and $x100 (= ?x102 (div$ (- l$ ?x97) 2))) $x120))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4190
(let ((@x130 (trans (monotonicity @x122 (= $x107 (= $x95 $x120))) (rewrite (= (= $x95 $x120) (= $x95 $x120))) (= $x107 (= $x95 $x120)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4191
(let ((@x139 (trans (monotonicity @x130 (= $x108 (not (= $x95 $x120)))) (rewrite (= (not (= $x95 $x120)) $x135)) (= $x108 $x135))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4192
(let ((@x295 (mp (mp (asserted $x108) @x139 $x135) @x294 $x290)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4193
(let ((@x344 (unit-resolution (def-axiom (or $x134 $x283 (not $x290))) @x295 (or $x134 $x283))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4194
(let ((@x819 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x95 $x815 (not $x680))) (unit-resolution @x344 @x493 $x134) (or $x815 (not $x680)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4195
(let (($x672 (<= ?x671 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4196
(let ((@x823 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x282 $x672)) (unit-resolution (def-axiom (or $x283 $x117)) @x493 $x117) $x672)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4197
(let (($x413 (<= ?x396 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4198
(let ((@x802 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x397) $x413)) (unit-resolution @x411 @x316 $x397) $x413)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4199
(let (($x443 (>= ?x437 0)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4200
(let ((@x826 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x434) $x443)) (unit-resolution ((_ th-lemma arith) (or false $x434)) @x26 $x434) $x443)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4201
(let ((@x827 ((_ th-lemma arith farkas 1 -2 -2 1 -1 1) @x826 @x802 @x823 (unit-resolution @x819 @x813 $x815) @x795 (unit-resolution ((_ th-lemma arith) (or false $x465)) @x26 $x465) false)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4202
(let ((@x828 (lemma @x827 $x283)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4203
(let ((@x340 (unit-resolution (def-axiom (or $x95 $x284 (not $x290))) @x295 (or $x95 $x284))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4204
(let ((@x584 (unit-resolution @x340 @x828 $x95)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4205
(let (($x807 (not $x672)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4206
(let ((@x888 ((_ th-lemma arith assign-bounds 1 -1/2 -1/2 1/2 -1/2) (or $x673 (not $x413) (not $x465) (not $x443) (not $x504) (not $x680)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4207
(let ((@x889 (unit-resolution @x888 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x134 $x680)) @x584 $x680) @x802 @x826 (unit-resolution ((_ th-lemma arith) (or false $x465)) @x26 $x465) @x795 $x673)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4208
(let ((@x741 (symm (monotonicity (symm @x584 (= l$ ?x93)) (= ?x99 (mod$ ?x93 2))) (= (mod$ ?x93 2) ?x99))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4209
(let ((?x499 (mod$ ?x93 2)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4210
(let (($x500 (= ?x499 ?x98)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4211
(let (($x297 (forall ((?v0 Int_list$) (?v1 Int_list$) )(! (= (mod$ (eval_dioph$ ?v0 ?v1) 2) (mod$ (eval_dioph$ ?v0 (map$ uu$ ?v1)) 2)) :pattern ( (eval_dioph$ ?v0 (map$ uu$ ?v1)) ) :qid k!18))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4212
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4213
(let (($x51 (forall ((?v0 Int_list$) (?v1 Int_list$) )(! (= (mod$ (eval_dioph$ ?v0 ?v1) 2) (mod$ (eval_dioph$ ?v0 (map$ uu$ ?v1)) 2)) :qid k!18))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4214
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4215
(let (($x50 (= (mod$ ?x45 2) (mod$ ?x48 2))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4216
(let ((@x265 (mp~ (asserted $x51) (nnf-pos (refl (~ $x50 $x50)) (~ $x51 $x51)) $x51)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4217
(let ((@x302 (mp @x265 (quant-intro (refl (= $x50 $x50)) (= $x51 $x297)) $x297)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4218
(let (($x464 (or (not $x297) $x500)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4219
(let ((@x578 ((_ quant-inst ks$ xs$) $x464)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4220
(let ((@x748 (trans (symm (unit-resolution @x578 @x302 $x500) (= ?x98 ?x499)) @x741 $x100)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4221
(let ((@x891 (unit-resolution (unit-resolution (def-axiom (or $x284 $x281 $x282)) @x828 $x283) (lemma (unit-resolution (hypothesis $x281) @x748 false) $x100) $x282)))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4222
(let ((@x895 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x117 $x807 (not $x673))) @x891 (or $x807 (not $x673)))))
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4223
((_ th-lemma arith farkas -2 -2 1 -1 1 1) (unit-resolution @x895 @x889 $x807) @x485 @x745 @x488 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x134 $x679)) @x584 $x679) (unit-resolution ((_ th-lemma arith) (or false $x564)) @x26 $x564) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4224
59046
db5a718e8c09 updated SMT certificates
blanchet
parents: 58431
diff changeset
  4225
db184ed715734759b60f9bdc99290a92283563f5 64 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4226
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4227
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4228
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4229
(let ((?x108 (collect$ uu$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4230
(let ((?x109 (sup$ ?x108)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4231
(let (($x117 (less_eq$ ?x109 ?x109)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4232
(let (($x118 (not $x117)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4233
(let ((@x119 (asserted $x118)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4234
(let ((?x111 (collect$ uua$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4235
(let ((?x112 (sup$ ?x111)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4236
(let (($x115 (less_eq$ ?x112 ?x109)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4237
(let ((@x116 (asserted $x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4238
(let (($x113 (less_eq$ ?x109 ?x112)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4239
(let ((@x114 (asserted $x113)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4240
(let (($x578 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(! (let (($x97 (less_eq$ ?v0 ?v2)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4241
(let (($x95 (less_eq$ ?v1 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4242
(let (($x138 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4243
(let (($x93 (less_eq$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4244
(let (($x137 (not $x93)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4245
(or $x137 $x138 $x97)))))) :pattern ( (less_eq$ ?v0 ?v1) (less_eq$ ?v1 ?v2) ) :qid k!17))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4246
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4247
(let (($x156 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(! (let (($x97 (less_eq$ ?v0 ?v2)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4248
(let (($x95 (less_eq$ ?v1 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4249
(let (($x138 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4250
(let (($x93 (less_eq$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4251
(let (($x137 (not $x93)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4252
(or $x137 $x138 $x97)))))) :qid k!17))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4253
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4254
(let ((@x583 (trans (rewrite (= $x156 $x578)) (rewrite (= $x578 $x578)) (= $x156 $x578))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4255
(let (($x105 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(! (let (($x97 (less_eq$ ?v0 ?v2)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4256
(let (($x95 (less_eq$ ?v1 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4257
(let (($x93 (less_eq$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4258
(let (($x96 (and $x93 $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4259
(let (($x101 (not $x96)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4260
(or $x101 $x97)))))) :qid k!17))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4261
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4262
(let (($x97 (less_eq$ ?2 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4263
(let (($x95 (less_eq$ ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4264
(let (($x138 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4265
(let (($x93 (less_eq$ ?2 ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4266
(let (($x137 (not $x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4267
(let (($x151 (or $x137 $x138 $x97)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4268
(let (($x96 (and $x93 $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4269
(let (($x101 (not $x96)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4270
(let (($x102 (or $x101 $x97)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4271
(let ((@x143 (monotonicity (rewrite (= $x96 (not (or $x137 $x138)))) (= $x101 (not (not (or $x137 $x138)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4272
(let ((@x147 (trans @x143 (rewrite (= (not (not (or $x137 $x138))) (or $x137 $x138))) (= $x101 (or $x137 $x138)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4273
(let ((@x155 (trans (monotonicity @x147 (= $x102 (or (or $x137 $x138) $x97))) (rewrite (= (or (or $x137 $x138) $x97) $x151)) (= $x102 $x151))))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4274
(let (($x99 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(! (let (($x97 (less_eq$ ?v0 ?v2)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4275
(let (($x95 (less_eq$ ?v1 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4276
(let (($x93 (less_eq$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4277
(let (($x96 (and $x93 $x95)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4278
(=> $x96 $x97))))) :qid k!17))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4279
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4280
(let ((@x110 (mp (asserted $x99) (quant-intro (rewrite (= (=> $x96 $x97) $x102)) (= $x99 $x105)) $x105)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4281
(let ((@x159 (mp (mp~ @x110 (nnf-pos (refl (~ $x102 $x102)) (~ $x105 $x105)) $x105) (quant-intro @x155 (= $x105 $x156)) $x156)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4282
(let ((@x584 (mp @x159 @x583 $x578)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4283
(let (($x247 (not $x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4284
(let (($x160 (not $x113)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4285
(let (($x251 (not $x578)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4286
(let (($x252 (or $x251 $x160 $x247 $x117)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4287
(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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4288
(unit-resolution @x570 @x584 @x114 @x116 @x119 false)))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4289
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4290
4e8ab14f236ad601aa67494ca8ea18b2ba6a1a79 25 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4291
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4292
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4293
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4294
(let (($x142 (pred$e 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4295
(let (($x144 (not $x142)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4296
(let ((@x145 (asserted $x144)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4297
(let (($x615 (forall ((?v0 Int) )(! (pred$e ?v0) :pattern ( (pred$e ?v0) ) :qid k!29))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4298
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4299
(let (($x138 (forall ((?v0 Int) )(! (pred$e ?v0) :qid k!29))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4300
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4301
(let (($x127 (forall ((?v0 Int) )(! (let (($x125 (or (pred$d (cons$d ?v0 nil$d)) (not (pred$d (cons$d ?v0 nil$d))))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4302
(let (($x119 (pred$e ?v0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4303
(and $x119 $x125))) :qid k!29))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4304
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4305
(let (($x119 (pred$e ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4306
(let (($x125 (or (pred$d (cons$d ?0 nil$d)) (not (pred$d (cons$d ?0 nil$d))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4307
(let (($x126 (and $x119 $x125)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4308
(let ((@x133 (monotonicity (rewrite (= $x125 true)) (= $x126 (and $x119 true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4309
(let ((@x140 (quant-intro (trans @x133 (rewrite (= (and $x119 true) $x119)) (= $x126 $x119)) (= $x127 $x138))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4310
(let ((@x170 (mp~ (mp (asserted $x127) @x140 $x138) (nnf-pos (refl (~ $x119 $x119)) (~ $x138 $x138)) $x138)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4311
(let ((@x620 (mp @x170 (quant-intro (refl (= $x119 $x119)) (= $x138 $x615)) $x615)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4312
(let (($x257 (or (not $x615) $x142)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4313
(let ((@x258 ((_ quant-inst 1) $x257)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4314
(unit-resolution @x258 @x620 @x145 false))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4315
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4316
b4b100f728c8f0d6f96483e4de44e248cc4be1aa 101 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4317
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4318
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4319
(proof
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4320
(let ((?x124 (some$a true)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4321
(let ((?x125 (g$b ?x124)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4322
(let ((?x122 (some$ 3)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4323
(let ((?x123 (g$ ?x122)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4324
(let (($x126 (= ?x123 ?x125)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4325
(let ((?x269 (cons$a true nil$a)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4326
(let ((?x270 (g$c ?x269)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4327
(let (($x587 (= ?x125 ?x270)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4328
(let (($x604 (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) ) :qid k!33))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4329
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4330
(let (($x43 (forall ((?v0 Bool) )(! (= (g$b (some$a ?v0)) (g$c (cons$a ?v0 nil$a))) :qid k!33))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4331
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4332
(let (($x42 (= (g$b (some$a ?0)) (g$c (cons$a ?0 nil$a)))))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4333
(let ((@x160 (mp~ (asserted $x43) (nnf-pos (refl (~ $x42 $x42)) (~ $x43 $x43)) $x43)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4334
(let ((@x609 (mp @x160 (quant-intro (refl (= $x42 $x42)) (= $x43 $x604)) $x604)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4335
(let (($x254 (or (not $x604) $x587)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4336
(let ((@x255 ((_ quant-inst true) $x254)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4337
(let ((?x227 (size$ ?x269)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4338
(let (($x569 (= ?x270 ?x227)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4339
(let (($x612 (forall ((?v0 Bool_list$) )(! (let ((?x61 (size$ ?v0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4340
(let ((?x60 (g$c ?v0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4341
(= ?x60 ?x61))) :pattern ( (g$c ?v0) ) :pattern ( (size$ ?v0) ) :qid k!38))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4342
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4343
(let (($x63 (forall ((?v0 Bool_list$) )(! (let ((?x61 (size$ ?v0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4344
(let ((?x60 (g$c ?v0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4345
(= ?x60 ?x61))) :qid k!38))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4346
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4347
(let ((@x616 (quant-intro (refl (= (= (g$c ?0) (size$ ?0)) (= (g$c ?0) (size$ ?0)))) (= $x63 $x612))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4348
(let ((@x142 (nnf-pos (refl (~ (= (g$c ?0) (size$ ?0)) (= (g$c ?0) (size$ ?0)))) (~ $x63 $x63))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4349
(let ((@x617 (mp (mp~ (asserted $x63) @x142 $x63) @x616 $x612)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4350
(let (($x571 (or (not $x612) $x569)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4351
(let ((@x572 ((_ quant-inst (cons$a true nil$a)) $x571)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4352
(let ((?x89 (suc$ zero$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4353
(let ((?x105 (size$ nil$a)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4354
(let ((?x233 (plus$ ?x105 ?x89)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4355
(let (($x570 (= ?x227 ?x233)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4356
(let (($x657 (forall ((?v0 Bool) (?v1 Bool_list$) )(! (= (size$ (cons$a ?v0 ?v1)) (plus$ (size$ ?v1) (suc$ zero$))) :pattern ( (cons$a ?v0 ?v1) ) :qid k!46))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4357
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4358
(let (($x114 (forall ((?v0 Bool) (?v1 Bool_list$) )(! (= (size$ (cons$a ?v0 ?v1)) (plus$ (size$ ?v1) (suc$ zero$))) :qid k!46))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4359
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4360
(let (($x113 (= (size$ (cons$a ?1 ?0)) (plus$ (size$ ?0) ?x89))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4361
(let ((@x173 (mp~ (asserted $x114) (nnf-pos (refl (~ $x113 $x113)) (~ $x114 $x114)) $x114)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4362
(let ((@x662 (mp @x173 (quant-intro (refl (= $x113 $x113)) (= $x114 $x657)) $x657)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4363
(let (($x576 (or (not $x657) $x570)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4364
(let ((@x213 ((_ quant-inst true nil$a) $x576)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4365
(let ((?x108 (size$a nil$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4366
(let (($x109 (= ?x108 zero$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4367
(let ((@x110 (asserted $x109)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4368
(let (($x106 (= ?x105 zero$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4369
(let ((@x107 (asserted $x106)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4370
(let ((@x287 (monotonicity (trans @x107 (symm @x110 (= zero$ ?x108)) (= ?x105 ?x108)) (= ?x233 (plus$ ?x108 ?x89)))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4371
(let ((?x246 (plus$ ?x108 ?x89)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4372
(let ((?x256 (cons$ 3 nil$)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4373
(let ((?x588 (size$a ?x256)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4374
(let (($x584 (= ?x588 ?x246)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4375
(let (($x664 (forall ((?v0 Int) (?v1 Int_list$) )(! (= (size$a (cons$ ?v0 ?v1)) (plus$ (size$a ?v1) (suc$ zero$))) :pattern ( (cons$ ?v0 ?v1) ) :qid k!47))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4376
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4377
(let (($x119 (forall ((?v0 Int) (?v1 Int_list$) )(! (= (size$a (cons$ ?v0 ?v1)) (plus$ (size$a ?v1) (suc$ zero$))) :qid k!47))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4378
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4379
(let (($x118 (= (size$a (cons$ ?1 ?0)) (plus$ (size$a ?0) ?x89))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4380
(let ((@x178 (mp~ (asserted $x119) (nnf-pos (refl (~ $x118 $x118)) (~ $x119 $x119)) $x119)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4381
(let ((@x669 (mp @x178 (quant-intro (refl (= $x118 $x118)) (= $x119 $x664)) $x664)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4382
(let (($x231 (or (not $x664) $x584)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4383
(let ((@x232 ((_ quant-inst 3 nil$) $x231)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4384
(let ((?x267 (g$a ?x256)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4385
(let (($x592 (= ?x267 ?x588)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4386
(let (($x620 (forall ((?v0 Int_list$) )(! (let ((?x67 (size$a ?v0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4387
(let ((?x66 (g$a ?v0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4388
(= ?x66 ?x67))) :pattern ( (g$a ?v0) ) :pattern ( (size$a ?v0) ) :qid k!39))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4389
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4390
(let (($x69 (forall ((?v0 Int_list$) )(! (let ((?x67 (size$a ?v0)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4391
(let ((?x66 (g$a ?v0)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4392
(= ?x66 ?x67))) :qid k!39))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4393
))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4394
(let ((@x622 (refl (= (= (g$a ?0) (size$a ?0)) (= (g$a ?0) (size$a ?0))))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4395
(let ((@x129 (nnf-pos (refl (~ (= (g$a ?0) (size$a ?0)) (= (g$a ?0) (size$a ?0)))) (~ $x69 $x69))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4396
(let ((@x625 (mp (mp~ (asserted $x69) @x129 $x69) (quant-intro @x622 (= $x69 $x620)) $x620)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4397
(let (($x248 (or (not $x620) $x592)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4398
(let ((@x585 ((_ quant-inst (cons$ 3 nil$)) $x248)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4399
(let (($x268 (= ?x123 ?x267)))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4400
(let (($x596 (forall ((?v0 Int) )(! (= (g$ (some$ ?v0)) (g$a (cons$ ?v0 nil$))) :pattern ( (some$ ?v0) ) :pattern ( (cons$ ?v0 nil$) ) :qid k!32))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4401
))
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  4402
(let (($x34 (forall ((?v0 Int) )(! (= (g$ (some$ ?v0)) (g$a (cons$ ?v0 nil$))) :qid k!32))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4403
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4404
(let (($x33 (= (g$ (some$ ?0)) (g$a (cons$ ?0 nil$)))))
57696
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4405
(let ((@x157 (mp~ (asserted $x34) (nnf-pos (refl (~ $x33 $x33)) (~ $x34 $x34)) $x34)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4406
(let ((@x601 (mp @x157 (quant-intro (refl (= $x33 $x33)) (= $x34 $x596)) $x596)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4407
(let (($x250 (or (not $x596) $x268)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4408
(let ((@x586 ((_ quant-inst 3) $x250)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4409
(let ((@x275 (trans (unit-resolution @x586 @x601 $x268) (unit-resolution @x585 @x625 $x592) (= ?x123 ?x588))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4410
(let ((@x280 (trans (trans @x275 (unit-resolution @x232 @x669 $x584) (= ?x123 ?x246)) (symm @x287 (= ?x246 ?x233)) (= ?x123 ?x233))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4411
(let ((@x558 (trans @x280 (symm (unit-resolution @x213 @x662 $x570) (= ?x233 ?x227)) (= ?x123 ?x227))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4412
(let ((@x560 (trans @x558 (symm (unit-resolution @x572 @x617 $x569) (= ?x227 ?x270)) (= ?x123 ?x270))))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4413
(let ((@x546 (trans @x560 (symm (unit-resolution @x255 @x609 $x587) (= ?x270 ?x125)) $x126)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4414
(let (($x127 (not $x126)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4415
(let ((@x128 (asserted $x127)))
fb71c6f100f8 do not embed 'nat' into 'int's in 'smt2' method -- this is highly inefficient and decreases the Sledgehammer success rate significantly
blanchet
parents: 57204
diff changeset
  4416
(unit-resolution @x128 @x546 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4417
60352
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4418
0f7f4a10f8a84029fd3a6efddc4408fa429b0cda 113 0
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4419
unsat
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4420
((set-logic <null>)
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4421
(proof
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4422
(let ((?x228 (mod x$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4423
(let ((?x262 (* (- 1) ?x228)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4424
(let ((?x31 (mod$ x$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4425
(let ((?x263 (+ ?x31 ?x262)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4426
(let (($x280 (>= ?x263 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4427
(let (($x264 (= ?x263 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4428
(let (($x205 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x136 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4429
(let ((?x93 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4430
(let ((?x90 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4431
(let ((?x144 (mod ?x90 ?x93)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4432
(let ((?x150 (* (- 1) ?x144)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4433
(let (($x111 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4434
(let ((?x170 (ite $x111 ?x150 ?x136)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4435
(let (($x78 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4436
(let ((?x175 (ite $x78 ?v0 ?x170)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4437
(let ((?x135 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4438
(= ?x135 ?x175))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4439
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4440
(let (($x181 (forall ((?v0 Int) (?v1 Int) )(let ((?x136 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4441
(let ((?x93 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4442
(let ((?x90 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4443
(let ((?x144 (mod ?x90 ?x93)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4444
(let ((?x150 (* (- 1) ?x144)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4445
(let (($x111 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4446
(let ((?x170 (ite $x111 ?x150 ?x136)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4447
(let (($x78 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4448
(let ((?x175 (ite $x78 ?v0 ?x170)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4449
(let ((?x135 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4450
(= ?x135 ?x175))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4451
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4452
(let ((?x136 (mod ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4453
(let ((?x93 (* (- 1) ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4454
(let ((?x90 (* (- 1) ?1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4455
(let ((?x144 (mod ?x90 ?x93)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4456
(let ((?x150 (* (- 1) ?x144)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4457
(let (($x111 (<= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4458
(let ((?x170 (ite $x111 ?x150 ?x136)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4459
(let (($x78 (= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4460
(let ((?x175 (ite $x78 ?1 ?x170)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4461
(let ((?x135 (mod$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4462
(let (($x178 (= ?x135 ?x175)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4463
(let (($x142 (forall ((?v0 Int) (?v1 Int) )(let (($x78 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4464
(let ((?x140 (ite $x78 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4465
(let ((?x135 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4466
(= ?x135 ?x140)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4467
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4468
(let (($x164 (forall ((?v0 Int) (?v1 Int) )(let ((?x93 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4469
(let ((?x90 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4470
(let ((?x144 (mod ?x90 ?x93)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4471
(let ((?x150 (* (- 1) ?x144)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4472
(let ((?x136 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4473
(let (($x79 (< 0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4474
(let ((?x155 (ite $x79 ?x136 ?x150)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4475
(let (($x78 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4476
(let ((?x158 (ite $x78 ?v0 ?x155)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4477
(let ((?x135 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4478
(= ?x135 ?x158))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4479
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4480
(let ((@x169 (monotonicity (rewrite (= (< 0 ?0) (not $x111))) (= (ite (< 0 ?0) ?x136 ?x150) (ite (not $x111) ?x136 ?x150)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4481
(let ((@x174 (trans @x169 (rewrite (= (ite (not $x111) ?x136 ?x150) ?x170)) (= (ite (< 0 ?0) ?x136 ?x150) ?x170))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4482
(let ((@x177 (monotonicity @x174 (= (ite $x78 ?1 (ite (< 0 ?0) ?x136 ?x150)) ?x175))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4483
(let ((@x180 (monotonicity @x177 (= (= ?x135 (ite $x78 ?1 (ite (< 0 ?0) ?x136 ?x150))) $x178))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4484
(let (($x79 (< 0 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4485
(let ((?x155 (ite $x79 ?x136 ?x150)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4486
(let ((?x158 (ite $x78 ?1 ?x155)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4487
(let (($x161 (= ?x135 ?x158)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4488
(let (($x162 (= (= ?x135 (ite $x78 ?1 (ite $x79 ?x136 (- (mod (- ?1) (- ?0)))))) $x161)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4489
(let ((@x146 (monotonicity (rewrite (= (- ?1) ?x90)) (rewrite (= (- ?0) ?x93)) (= (mod (- ?1) (- ?0)) ?x144))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4490
(let ((@x154 (trans (monotonicity @x146 (= (- (mod (- ?1) (- ?0))) (- ?x144))) (rewrite (= (- ?x144) ?x150)) (= (- (mod (- ?1) (- ?0))) ?x150))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4491
(let ((@x157 (monotonicity @x154 (= (ite $x79 ?x136 (- (mod (- ?1) (- ?0)))) ?x155))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4492
(let ((@x160 (monotonicity @x157 (= (ite $x78 ?1 (ite $x79 ?x136 (- (mod (- ?1) (- ?0))))) ?x158))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4493
(let ((@x185 (trans (quant-intro (monotonicity @x160 $x162) (= $x142 $x164)) (quant-intro @x180 (= $x164 $x181)) (= $x142 $x181))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4494
(let ((@x196 (mp~ (mp (asserted $x142) @x185 $x181) (nnf-pos (refl (~ $x178 $x178)) (~ $x181 $x181)) $x181)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4495
(let ((@x210 (mp @x196 (quant-intro (refl (= $x178 $x178)) (= $x181 $x205)) $x205)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4496
(let (($x270 (or (not $x205) $x264)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4497
(let ((?x225 (* (- 1) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4498
(let ((?x224 (* (- 1) x$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4499
(let ((?x226 (mod ?x224 ?x225)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4500
(let ((?x227 (* (- 1) ?x226)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4501
(let (($x223 (<= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4502
(let ((?x229 (ite $x223 ?x227 ?x228)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4503
(let (($x222 (= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4504
(let ((?x230 (ite $x222 x$ ?x229)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4505
(let (($x231 (= ?x31 ?x230)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4506
(let ((@x244 (monotonicity (monotonicity (rewrite (= ?x225 (- 2))) (= ?x226 (mod ?x224 (- 2)))) (= ?x227 (* (- 1) (mod ?x224 (- 2)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4507
(let ((@x247 (monotonicity (rewrite (= $x223 false)) @x244 (= ?x229 (ite false (* (- 1) (mod ?x224 (- 2))) ?x228)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4508
(let ((@x251 (trans @x247 (rewrite (= (ite false (* (- 1) (mod ?x224 (- 2))) ?x228) ?x228)) (= ?x229 ?x228))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4509
(let ((@x254 (monotonicity (rewrite (= $x222 false)) @x251 (= ?x230 (ite false x$ ?x228)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4510
(let ((@x261 (monotonicity (trans @x254 (rewrite (= (ite false x$ ?x228) ?x228)) (= ?x230 ?x228)) (= $x231 (= ?x31 ?x228)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4511
(let ((@x274 (monotonicity (trans @x261 (rewrite (= (= ?x31 ?x228) $x264)) (= $x231 $x264)) (= (or (not $x205) $x231) $x270))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4512
(let ((@x277 (trans @x274 (rewrite (= $x270 $x270)) (= (or (not $x205) $x231) $x270))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4513
(let ((@x278 (mp ((_ quant-inst x$ 2) (or (not $x205) $x231)) @x277 $x270)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4514
(let ((@x337 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x264) $x280)) (unit-resolution @x278 @x210 $x264) $x280)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4515
(let (($x305 (>= ?x228 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4516
(let (($x64 (>= ?x31 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4517
(let (($x67 (not $x64)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4518
(let (($x36 (not (<= (+ x$ 1) (+ x$ (+ (* 2 ?x31) 1))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4519
(let ((@x69 (monotonicity (rewrite (= (>= (* 2 ?x31) 0) $x64)) (= (not (>= (* 2 ?x31) 0)) $x67))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4520
(let ((?x32 (* 2 ?x31)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4521
(let ((?x47 (+ 1 x$ ?x32)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4522
(let (($x52 (<= (+ 1 x$) ?x47)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4523
(let (($x55 (not $x52)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4524
(let ((@x63 (monotonicity (rewrite (= $x52 (>= ?x32 0))) (= $x55 (not (>= ?x32 0))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4525
(let ((@x46 (monotonicity (rewrite (= (+ ?x32 1) (+ 1 ?x32))) (= (+ x$ (+ ?x32 1)) (+ x$ (+ 1 ?x32))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4526
(let ((@x51 (trans @x46 (rewrite (= (+ x$ (+ 1 ?x32)) ?x47)) (= (+ x$ (+ ?x32 1)) ?x47))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4527
(let ((@x54 (monotonicity (rewrite (= (+ x$ 1) (+ 1 x$))) @x51 (= (<= (+ x$ 1) (+ x$ (+ ?x32 1))) $x52))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4528
(let ((@x73 (trans (monotonicity @x54 (= $x36 $x55)) (trans @x63 @x69 (= $x55 $x67)) (= $x36 $x67))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4529
(let ((@x74 (mp (asserted $x36) @x73 $x67)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4530
((_ th-lemma arith farkas -1 1 1) @x74 (unit-resolution ((_ th-lemma arith) (or false $x305)) (true-axiom true) $x305) @x337 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4531
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4532
fa5abc269019f00f5093218b287856c2a08c0adf 112 0
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4533
unsat
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4534
((set-logic <null>)
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4535
(proof
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4536
(let ((?x224 (mod x$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4537
(let (($x318 (>= ?x224 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4538
(let (($x319 (not $x318)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4539
(let ((?x258 (* (- 1) ?x224)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4540
(let ((?x29 (mod$ x$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4541
(let ((?x259 (+ ?x29 ?x258)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4542
(let (($x275 (<= ?x259 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4543
(let (($x260 (= ?x259 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4544
(let (($x201 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x132 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4545
(let ((?x89 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4546
(let ((?x86 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4547
(let ((?x140 (mod ?x86 ?x89)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4548
(let ((?x146 (* (- 1) ?x140)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4549
(let (($x107 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4550
(let ((?x166 (ite $x107 ?x146 ?x132)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4551
(let (($x74 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4552
(let ((?x171 (ite $x74 ?v0 ?x166)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4553
(let ((?x131 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4554
(= ?x131 ?x171))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4555
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4556
(let (($x177 (forall ((?v0 Int) (?v1 Int) )(let ((?x132 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4557
(let ((?x89 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4558
(let ((?x86 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4559
(let ((?x140 (mod ?x86 ?x89)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4560
(let ((?x146 (* (- 1) ?x140)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4561
(let (($x107 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4562
(let ((?x166 (ite $x107 ?x146 ?x132)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4563
(let (($x74 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4564
(let ((?x171 (ite $x74 ?v0 ?x166)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4565
(let ((?x131 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4566
(= ?x131 ?x171))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4567
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4568
(let ((?x132 (mod ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4569
(let ((?x89 (* (- 1) ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4570
(let ((?x86 (* (- 1) ?1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4571
(let ((?x140 (mod ?x86 ?x89)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4572
(let ((?x146 (* (- 1) ?x140)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4573
(let (($x107 (<= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4574
(let ((?x166 (ite $x107 ?x146 ?x132)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4575
(let (($x74 (= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4576
(let ((?x171 (ite $x74 ?1 ?x166)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4577
(let ((?x131 (mod$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4578
(let (($x174 (= ?x131 ?x171)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4579
(let (($x138 (forall ((?v0 Int) (?v1 Int) )(let (($x74 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4580
(let ((?x136 (ite $x74 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4581
(let ((?x131 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4582
(= ?x131 ?x136)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4583
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4584
(let (($x160 (forall ((?v0 Int) (?v1 Int) )(let ((?x89 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4585
(let ((?x86 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4586
(let ((?x140 (mod ?x86 ?x89)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4587
(let ((?x146 (* (- 1) ?x140)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4588
(let ((?x132 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4589
(let (($x75 (< 0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4590
(let ((?x151 (ite $x75 ?x132 ?x146)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4591
(let (($x74 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4592
(let ((?x154 (ite $x74 ?v0 ?x151)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4593
(let ((?x131 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4594
(= ?x131 ?x154))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4595
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4596
(let ((@x165 (monotonicity (rewrite (= (< 0 ?0) (not $x107))) (= (ite (< 0 ?0) ?x132 ?x146) (ite (not $x107) ?x132 ?x146)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4597
(let ((@x170 (trans @x165 (rewrite (= (ite (not $x107) ?x132 ?x146) ?x166)) (= (ite (< 0 ?0) ?x132 ?x146) ?x166))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4598
(let ((@x173 (monotonicity @x170 (= (ite $x74 ?1 (ite (< 0 ?0) ?x132 ?x146)) ?x171))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4599
(let ((@x176 (monotonicity @x173 (= (= ?x131 (ite $x74 ?1 (ite (< 0 ?0) ?x132 ?x146))) $x174))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4600
(let (($x75 (< 0 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4601
(let ((?x151 (ite $x75 ?x132 ?x146)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4602
(let ((?x154 (ite $x74 ?1 ?x151)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4603
(let (($x157 (= ?x131 ?x154)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4604
(let (($x158 (= (= ?x131 (ite $x74 ?1 (ite $x75 ?x132 (- (mod (- ?1) (- ?0)))))) $x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4605
(let ((@x142 (monotonicity (rewrite (= (- ?1) ?x86)) (rewrite (= (- ?0) ?x89)) (= (mod (- ?1) (- ?0)) ?x140))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4606
(let ((@x150 (trans (monotonicity @x142 (= (- (mod (- ?1) (- ?0))) (- ?x140))) (rewrite (= (- ?x140) ?x146)) (= (- (mod (- ?1) (- ?0))) ?x146))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4607
(let ((@x153 (monotonicity @x150 (= (ite $x75 ?x132 (- (mod (- ?1) (- ?0)))) ?x151))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4608
(let ((@x156 (monotonicity @x153 (= (ite $x74 ?1 (ite $x75 ?x132 (- (mod (- ?1) (- ?0))))) ?x154))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4609
(let ((@x181 (trans (quant-intro (monotonicity @x156 $x158) (= $x138 $x160)) (quant-intro @x176 (= $x160 $x177)) (= $x138 $x177))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4610
(let ((@x192 (mp~ (mp (asserted $x138) @x181 $x177) (nnf-pos (refl (~ $x174 $x174)) (~ $x177 $x177)) $x177)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4611
(let ((@x206 (mp @x192 (quant-intro (refl (= $x174 $x174)) (= $x177 $x201)) $x201)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4612
(let (($x266 (or (not $x201) $x260)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4613
(let ((?x221 (* (- 1) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4614
(let ((?x220 (* (- 1) x$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4615
(let ((?x222 (mod ?x220 ?x221)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4616
(let ((?x223 (* (- 1) ?x222)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4617
(let (($x219 (<= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4618
(let ((?x225 (ite $x219 ?x223 ?x224)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4619
(let (($x218 (= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4620
(let ((?x226 (ite $x218 x$ ?x225)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4621
(let (($x227 (= ?x29 ?x226)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4622
(let ((@x240 (monotonicity (monotonicity (rewrite (= ?x221 (- 2))) (= ?x222 (mod ?x220 (- 2)))) (= ?x223 (* (- 1) (mod ?x220 (- 2)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4623
(let ((@x243 (monotonicity (rewrite (= $x219 false)) @x240 (= ?x225 (ite false (* (- 1) (mod ?x220 (- 2))) ?x224)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4624
(let ((@x247 (trans @x243 (rewrite (= (ite false (* (- 1) (mod ?x220 (- 2))) ?x224) ?x224)) (= ?x225 ?x224))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4625
(let ((@x250 (monotonicity (rewrite (= $x218 false)) @x247 (= ?x226 (ite false x$ ?x224)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4626
(let ((@x257 (monotonicity (trans @x250 (rewrite (= (ite false x$ ?x224) ?x224)) (= ?x226 ?x224)) (= $x227 (= ?x29 ?x224)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4627
(let ((@x270 (monotonicity (trans @x257 (rewrite (= (= ?x29 ?x224) $x260)) (= $x227 $x260)) (= (or (not $x201) $x227) $x266))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4628
(let ((@x273 (trans @x270 (rewrite (= $x266 $x266)) (= (or (not $x201) $x227) $x266))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4629
(let ((@x274 (mp ((_ quant-inst x$ 2) (or (not $x201) $x227)) @x273 $x266)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4630
(let ((@x336 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x260) $x275)) (unit-resolution @x274 @x206 $x260) $x275)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4631
(let (($x63 (>= ?x29 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4632
(let ((?x37 (* 2 ?x29)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4633
(let (($x56 (>= ?x37 3)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4634
(let (($x46 (< (+ x$ ?x37) (+ 3 x$))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4635
(let (($x49 (not $x46)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4636
(let ((@x58 (monotonicity (rewrite (= $x46 (not $x56))) (= $x49 (not (not $x56))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4637
(let ((@x67 (trans (trans @x58 (rewrite (= (not (not $x56)) $x56)) (= $x49 $x56)) (rewrite (= $x56 $x63)) (= $x49 $x63))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4638
(let ((@x42 (monotonicity (rewrite (= (+ ?x29 ?x29) ?x37)) (= (+ x$ (+ ?x29 ?x29)) (+ x$ ?x37)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4639
(let ((@x48 (monotonicity @x42 (rewrite (= (+ x$ 3) (+ 3 x$))) (= (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3)) $x46))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4640
(let ((@x51 (monotonicity @x48 (= (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3))) $x49))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4641
(let ((@x69 (trans @x51 @x67 (= (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3))) $x63))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4642
(let ((@x70 (mp (asserted (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3)))) @x69 $x63)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4643
((_ th-lemma arith farkas -1 1 1) @x70 @x336 (unit-resolution ((_ th-lemma arith) (or false $x319)) (true-axiom true) $x319) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4644
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4645
1880f0ed1cb3d1cfa006dff17f1b5553ce3a5158 236 0
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4646
unsat
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4647
((set-logic <null>)
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4648
(proof
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4649
(let ((?x410 (div n$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4650
(let ((?x704 (* (- 1) ?x410)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4651
(let ((?x381 (div n$ 4)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4652
(let ((?x601 (* (- 2) ?x381)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4653
(let ((?x329 (mod n$ 4)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4654
(let ((?x363 (* (- 1) ?x329)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4655
(let ((?x35 (mod$ n$ 4)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4656
(let ((?x705 (+ n$ ?x35 ?x363 ?x601 ?x704)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4657
(let (($x706 (>= ?x705 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4658
(let ((?x39 (mod$ n$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4659
(let (($x515 (>= ?x39 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4660
(let (($x725 (not $x515)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4661
(let (($x514 (<= ?x39 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4662
(let ((?x519 (mod n$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4663
(let ((?x534 (* (- 1) ?x519)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4664
(let ((?x535 (+ ?x39 ?x534)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4665
(let (($x408 (<= ?x535 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4666
(let (($x490 (= ?x535 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4667
(let (($x191 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x108 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4668
(let ((?x65 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4669
(let ((?x62 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4670
(let ((?x116 (mod ?x62 ?x65)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4671
(let ((?x122 (* (- 1) ?x116)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4672
(let (($x83 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4673
(let ((?x142 (ite $x83 ?x122 ?x108)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4674
(let (($x50 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4675
(let ((?x147 (ite $x50 ?v0 ?x142)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4676
(let ((?x107 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4677
(= ?x107 ?x147))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4678
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4679
(let (($x153 (forall ((?v0 Int) (?v1 Int) )(let ((?x108 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4680
(let ((?x65 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4681
(let ((?x62 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4682
(let ((?x116 (mod ?x62 ?x65)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4683
(let ((?x122 (* (- 1) ?x116)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4684
(let (($x83 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4685
(let ((?x142 (ite $x83 ?x122 ?x108)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4686
(let (($x50 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4687
(let ((?x147 (ite $x50 ?v0 ?x142)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4688
(let ((?x107 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4689
(= ?x107 ?x147))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4690
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4691
(let ((?x108 (mod ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4692
(let ((?x65 (* (- 1) ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4693
(let ((?x62 (* (- 1) ?1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4694
(let ((?x116 (mod ?x62 ?x65)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4695
(let ((?x122 (* (- 1) ?x116)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4696
(let (($x83 (<= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4697
(let ((?x142 (ite $x83 ?x122 ?x108)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4698
(let (($x50 (= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4699
(let ((?x147 (ite $x50 ?1 ?x142)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4700
(let ((?x107 (mod$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4701
(let (($x150 (= ?x107 ?x147)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4702
(let (($x114 (forall ((?v0 Int) (?v1 Int) )(let (($x50 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4703
(let ((?x112 (ite $x50 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4704
(let ((?x107 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4705
(= ?x107 ?x112)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4706
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4707
(let (($x136 (forall ((?v0 Int) (?v1 Int) )(let ((?x65 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4708
(let ((?x62 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4709
(let ((?x116 (mod ?x62 ?x65)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4710
(let ((?x122 (* (- 1) ?x116)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4711
(let ((?x108 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4712
(let (($x51 (< 0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4713
(let ((?x127 (ite $x51 ?x108 ?x122)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4714
(let (($x50 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4715
(let ((?x130 (ite $x50 ?v0 ?x127)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4716
(let ((?x107 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4717
(= ?x107 ?x130))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4718
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4719
(let ((@x141 (monotonicity (rewrite (= (< 0 ?0) (not $x83))) (= (ite (< 0 ?0) ?x108 ?x122) (ite (not $x83) ?x108 ?x122)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4720
(let ((@x146 (trans @x141 (rewrite (= (ite (not $x83) ?x108 ?x122) ?x142)) (= (ite (< 0 ?0) ?x108 ?x122) ?x142))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4721
(let ((@x149 (monotonicity @x146 (= (ite $x50 ?1 (ite (< 0 ?0) ?x108 ?x122)) ?x147))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4722
(let ((@x152 (monotonicity @x149 (= (= ?x107 (ite $x50 ?1 (ite (< 0 ?0) ?x108 ?x122))) $x150))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4723
(let (($x51 (< 0 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4724
(let ((?x127 (ite $x51 ?x108 ?x122)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4725
(let ((?x130 (ite $x50 ?1 ?x127)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4726
(let (($x133 (= ?x107 ?x130)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4727
(let (($x134 (= (= ?x107 (ite $x50 ?1 (ite $x51 ?x108 (- (mod (- ?1) (- ?0)))))) $x133)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4728
(let ((@x118 (monotonicity (rewrite (= (- ?1) ?x62)) (rewrite (= (- ?0) ?x65)) (= (mod (- ?1) (- ?0)) ?x116))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4729
(let ((@x126 (trans (monotonicity @x118 (= (- (mod (- ?1) (- ?0))) (- ?x116))) (rewrite (= (- ?x116) ?x122)) (= (- (mod (- ?1) (- ?0))) ?x122))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4730
(let ((@x129 (monotonicity @x126 (= (ite $x51 ?x108 (- (mod (- ?1) (- ?0)))) ?x127))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4731
(let ((@x132 (monotonicity @x129 (= (ite $x50 ?1 (ite $x51 ?x108 (- (mod (- ?1) (- ?0))))) ?x130))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4732
(let ((@x157 (trans (quant-intro (monotonicity @x132 $x134) (= $x114 $x136)) (quant-intro @x152 (= $x136 $x153)) (= $x114 $x153))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4733
(let ((@x168 (mp~ (mp (asserted $x114) @x157 $x153) (nnf-pos (refl (~ $x150 $x150)) (~ $x153 $x153)) $x153)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4734
(let ((@x196 (mp @x168 (quant-intro (refl (= $x150 $x150)) (= $x153 $x191)) $x191)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4735
(let (($x260 (not $x191)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4736
(let (($x541 (or $x260 $x490)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4737
(let ((?x211 (* (- 1) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4738
(let ((?x222 (* (- 1) n$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4739
(let ((?x517 (mod ?x222 ?x211)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4740
(let ((?x518 (* (- 1) ?x517)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4741
(let (($x209 (<= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4742
(let ((?x520 (ite $x209 ?x518 ?x519)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4743
(let (($x208 (= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4744
(let ((?x521 (ite $x208 n$ ?x520)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4745
(let (($x485 (= ?x39 ?x521)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4746
(let ((@x593 (monotonicity (monotonicity (rewrite (= ?x211 (- 2))) (= ?x517 (mod ?x222 (- 2)))) (= ?x518 (* (- 1) (mod ?x222 (- 2)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4747
(let ((@x221 (rewrite (= $x209 false))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4748
(let ((@x596 (monotonicity @x221 @x593 (= ?x520 (ite false (* (- 1) (mod ?x222 (- 2))) ?x519)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4749
(let ((@x599 (trans @x596 (rewrite (= (ite false (* (- 1) (mod ?x222 (- 2))) ?x519) ?x519)) (= ?x520 ?x519))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4750
(let ((@x219 (rewrite (= $x208 false))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4751
(let ((@x487 (trans (monotonicity @x219 @x599 (= ?x521 (ite false n$ ?x519))) (rewrite (= (ite false n$ ?x519) ?x519)) (= ?x521 ?x519))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4752
(let ((@x538 (trans (monotonicity @x487 (= $x485 (= ?x39 ?x519))) (rewrite (= (= ?x39 ?x519) $x490)) (= $x485 $x490))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4753
(let ((@x406 (trans (monotonicity @x538 (= (or $x260 $x485) $x541)) (rewrite (= $x541 $x541)) (= (or $x260 $x485) $x541))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4754
(let ((@x407 (mp ((_ quant-inst n$ 2) (or $x260 $x485)) @x406 $x541)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4755
(let ((@x715 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x490) $x408)) (unit-resolution @x407 @x196 $x490) $x408)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4756
(let (($x303 (>= ?x519 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4757
(let (($x304 (not $x303)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4758
(let ((@x26 (true-axiom true)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4759
(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)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4760
(let (($x41 (= ?x39 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4761
(let (($x169 (not $x41)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4762
(let ((?x42 (mod$ m$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4763
(let (($x43 (= ?x42 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4764
(let ((?x29 (+ n$ m$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4765
(let ((?x214 (mod ?x29 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4766
(let ((?x253 (* (- 1) ?x214)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4767
(let ((?x31 (mod$ ?x29 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4768
(let ((?x603 (+ n$ m$ ?x31 ?x35 ?x253 (* (- 1) (div ?x29 2)) ?x363 ?x601 (* (- 1) (div m$ 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4769
(let (($x604 (>= ?x603 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4770
(let (($x523 (>= ?x42 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4771
(let (($x609 (not $x523)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4772
(let (($x522 (<= ?x42 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4773
(let ((?x439 (mod m$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4774
(let ((?x466 (* (- 1) ?x439)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4775
(let ((?x467 (+ ?x42 ?x466)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4776
(let (($x482 (<= ?x467 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4777
(let (($x468 (= ?x467 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4778
(let (($x473 (or $x260 $x468)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4779
(let ((?x440 (ite $x209 (* (- 1) (mod (* (- 1) m$) ?x211)) ?x439)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4780
(let ((?x441 (ite $x208 m$ ?x440)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4781
(let (($x442 (= ?x42 ?x441)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4782
(let ((@x453 (rewrite (= (ite false (* (- 1) (mod (* (- 1) m$) (- 2))) ?x439) ?x439))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4783
(let (($x447 (= (* (- 1) (mod (* (- 1) m$) ?x211)) (* (- 1) (mod (* (- 1) m$) (- 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4784
(let ((@x229 (rewrite (= ?x211 (- 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4785
(let ((@x445 (monotonicity @x229 (= (mod (* (- 1) m$) ?x211) (mod (* (- 1) m$) (- 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4786
(let ((@x451 (monotonicity @x221 (monotonicity @x445 $x447) (= ?x440 (ite false (* (- 1) (mod (* (- 1) m$) (- 2))) ?x439)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4787
(let ((@x458 (monotonicity @x219 (trans @x451 @x453 (= ?x440 ?x439)) (= ?x441 (ite false m$ ?x439)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4788
(let ((@x465 (monotonicity (trans @x458 (rewrite (= (ite false m$ ?x439) ?x439)) (= ?x441 ?x439)) (= $x442 (= ?x42 ?x439)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4789
(let ((@x477 (monotonicity (trans @x465 (rewrite (= (= ?x42 ?x439) $x468)) (= $x442 $x468)) (= (or $x260 $x442) $x473))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4790
(let ((@x481 (mp ((_ quant-inst m$ 2) (or $x260 $x442)) (trans @x477 (rewrite (= $x473 $x473)) (= (or $x260 $x442) $x473)) $x473)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4791
(let ((@x277 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x468) $x482)) (unit-resolution @x481 @x196 $x468) $x482)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4792
(let ((@x386 (unit-resolution ((_ th-lemma arith) (or false (not (>= ?x439 2)))) @x26 (not (>= ?x439 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4793
(let ((@x384 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x522 (>= ?x439 2) (not $x482))) @x386 @x277 $x522)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4794
(let ((@x564 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x43 (not $x522) $x609)) (hypothesis (not $x43)) (or (not $x522) $x609))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4795
(let ((?x272 (div ?x29 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4796
(let ((?x288 (* (- 2) ?x272)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4797
(let ((?x289 (+ n$ m$ ?x253 ?x288)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4798
(let (($x294 (<= ?x289 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4799
(let (($x287 (= ?x289 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4800
(let ((@x617 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x287) $x294)) (unit-resolution ((_ th-lemma arith) (or false $x287)) @x26 $x287) $x294)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4801
(let (($x433 (<= ?x31 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4802
(let (($x32 (= ?x31 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4803
(let ((@x33 (asserted $x32)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4804
(let ((?x254 (+ ?x31 ?x253)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4805
(let (($x270 (<= ?x254 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4806
(let (($x255 (= ?x254 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4807
(let (($x261 (or $x260 $x255)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4808
(let ((?x215 (ite $x209 (* (- 1) (mod (* (- 1) ?x29) ?x211)) ?x214)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4809
(let ((?x216 (ite $x208 ?x29 ?x215)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4810
(let (($x217 (= ?x31 ?x216)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4811
(let (($x239 (= (ite false (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2))) ?x214) ?x214)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4812
(let (($x237 (= ?x215 (ite false (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2))) ?x214))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4813
(let (($x234 (= (* (- 1) (mod (* (- 1) ?x29) ?x211)) (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4814
(let ((@x232 (monotonicity (rewrite (= (* (- 1) ?x29) (+ ?x222 (* (- 1) m$)))) @x229 (= (mod (* (- 1) ?x29) ?x211) (mod (+ ?x222 (* (- 1) m$)) (- 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4815
(let ((@x242 (trans (monotonicity @x221 (monotonicity @x232 $x234) $x237) (rewrite $x239) (= ?x215 ?x214))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4816
(let ((@x249 (trans (monotonicity @x219 @x242 (= ?x216 (ite false ?x29 ?x214))) (rewrite (= (ite false ?x29 ?x214) ?x214)) (= ?x216 ?x214))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4817
(let ((@x259 (trans (monotonicity @x249 (= $x217 (= ?x31 ?x214))) (rewrite (= (= ?x31 ?x214) $x255)) (= $x217 $x255))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4818
(let ((@x268 (trans (monotonicity @x259 (= (or $x260 $x217) $x261)) (rewrite (= $x261 $x261)) (= (or $x260 $x217) $x261))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4819
(let ((@x269 (mp ((_ quant-inst (+ n$ m$) 2) (or $x260 $x217)) @x268 $x261)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4820
(let ((@x626 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x255) $x270)) (unit-resolution @x269 @x196 $x255) $x270)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4821
(let ((?x498 (+ m$ ?x466 (* (- 2) (div m$ 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4822
(let (($x496 (= ?x498 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4823
(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))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4824
(let ((?x397 (* (- 4) ?x381)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4825
(let ((?x398 (+ n$ ?x363 ?x397)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4826
(let (($x403 (<= ?x398 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4827
(let (($x396 (= ?x398 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4828
(let ((@x640 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x396) $x403)) (unit-resolution ((_ th-lemma arith) (or false $x396)) @x26 $x396) $x403)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4829
(let ((?x364 (+ ?x35 ?x363)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4830
(let (($x379 (<= ?x364 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4831
(let (($x365 (= ?x364 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4832
(let (($x370 (or $x260 $x365)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4833
(let ((?x330 (ite (<= 4 0) (* (- 1) (mod ?x222 (* (- 1) 4))) ?x329)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4834
(let ((?x331 (ite (= 4 0) n$ ?x330)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4835
(let (($x332 (= ?x35 ?x331)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4836
(let ((@x342 (monotonicity (rewrite (= (* (- 1) 4) (- 4))) (= (mod ?x222 (* (- 1) 4)) (mod ?x222 (- 4))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4837
(let ((@x345 (monotonicity @x342 (= (* (- 1) (mod ?x222 (* (- 1) 4))) (* (- 1) (mod ?x222 (- 4)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4838
(let ((@x348 (monotonicity (rewrite (= (<= 4 0) false)) @x345 (= ?x330 (ite false (* (- 1) (mod ?x222 (- 4))) ?x329)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4839
(let ((@x352 (trans @x348 (rewrite (= (ite false (* (- 1) (mod ?x222 (- 4))) ?x329) ?x329)) (= ?x330 ?x329))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4840
(let ((@x355 (monotonicity (rewrite (= (= 4 0) false)) @x352 (= ?x331 (ite false n$ ?x329)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4841
(let ((@x362 (monotonicity (trans @x355 (rewrite (= (ite false n$ ?x329) ?x329)) (= ?x331 ?x329)) (= $x332 (= ?x35 ?x329)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4842
(let ((@x374 (monotonicity (trans @x362 (rewrite (= (= ?x35 ?x329) $x365)) (= $x332 $x365)) (= (or $x260 $x332) $x370))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4843
(let ((@x378 (mp ((_ quant-inst n$ 4) (or $x260 $x332)) (trans @x374 (rewrite (= $x370 $x370)) (= (or $x260 $x332) $x370)) $x370)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4844
(let ((@x645 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x365) $x379)) (unit-resolution @x378 @x196 $x365) $x379)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4845
(let (($x435 (<= ?x35 3)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4846
(let (($x37 (= ?x35 3)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4847
(let ((@x38 (asserted $x37)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4848
(let ((@x655 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x468) (>= ?x467 0))) (unit-resolution @x481 @x196 $x468) (>= ?x467 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4849
(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)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4850
(let ((@x565 (unit-resolution (lemma @x656 (or (not $x604) $x523)) (unit-resolution @x564 @x384 $x609) (not $x604))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4851
(let (($x295 (>= ?x289 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4852
(let ((@x566 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x287) $x295)) (unit-resolution ((_ th-lemma arith) (or false $x287)) @x26 $x287) $x295)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4853
(let (($x434 (>= ?x31 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4854
(let (($x271 (>= ?x254 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4855
(let ((@x531 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x255) $x271)) (unit-resolution @x269 @x196 $x255) $x271)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4856
(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))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4857
(let ((@x549 (unit-resolution ((_ th-lemma arith) (or false (>= ?x439 0))) @x26 (>= ?x439 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4858
(let (($x404 (>= ?x398 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4859
(let ((@x552 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x396) $x404)) (unit-resolution ((_ th-lemma arith) (or false $x396)) @x26 $x396) $x404)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4860
(let (($x380 (>= ?x364 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4861
(let ((@x273 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x365) $x380)) (unit-resolution @x378 @x196 $x365) $x380)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4862
(let (($x436 (>= ?x35 3)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4863
(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)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4864
(let (($x171 (or $x169 (not $x43))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4865
(let ((@x177 (monotonicity (rewrite (= (and $x41 $x43) (not $x171))) (= (not (and $x41 $x43)) (not (not $x171))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4866
(let ((@x181 (trans @x177 (rewrite (= (not (not $x171)) $x171)) (= (not (and $x41 $x43)) $x171))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4867
(let ((@x182 (mp (asserted (not (and $x41 $x43))) @x181 $x171)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4868
(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))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4869
(let ((?x420 (* (- 2) ?x410)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4870
(let ((?x421 (+ n$ ?x420 ?x534)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4871
(let (($x426 (<= ?x421 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4872
(let (($x419 (= ?x421 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4873
(let ((@x737 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x419) $x426)) (unit-resolution ((_ th-lemma arith) (or false $x419)) @x26 $x419) $x426)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4874
(let (($x409 (>= ?x535 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4875
(let ((@x741 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x490) $x409)) (unit-resolution @x407 @x196 $x490) $x409)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4876
(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)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4877
(let (($x427 (>= ?x421 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4878
(let ((@x584 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x419) $x427)) (unit-resolution ((_ th-lemma arith) (or false $x419)) @x26 $x419) $x427)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4879
(let (($x542 (>= ?x519 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4880
((_ 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)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4881
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4882
f6a4c40290fd6742c0b08a1fe90b3664e90c2143 336 0
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4883
unsat
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4884
((set-logic <null>)
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4885
(proof
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4886
(let ((?x99 (mod$ l$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4887
(let ((?x96 (map$ uu$ xs$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4888
(let ((?x97 (eval_dioph$ ks$ ?x96)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4889
(let ((?x98 (mod$ ?x97 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4890
(let (($x100 (= ?x98 ?x99)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4891
(let ((?x93 (eval_dioph$ ks$ xs$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4892
(let (($x95 (= ?x93 l$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4893
(let ((?x110 (* (- 1) ?x97)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4894
(let ((?x111 (+ l$ ?x110)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4895
(let ((?x114 (divide$ ?x111 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4896
(let ((?x101 (map$ uua$ xs$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4897
(let ((?x102 (eval_dioph$ ks$ ?x101)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4898
(let (($x117 (= ?x102 ?x114)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4899
(let (($x282 (not $x117)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4900
(let (($x281 (not $x100)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4901
(let (($x283 (or $x281 $x282)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4902
(let ((?x744 (div ?x93 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4903
(let ((?x970 (* (- 1) ?x744)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4904
(let ((?x699 (mod ?x93 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4905
(let ((?x726 (* (- 1) ?x699)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4906
(let ((?x516 (mod l$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4907
(let ((?x543 (* (- 1) ?x516)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4908
(let (($x972 (>= (+ l$ ?x99 ?x543 (* (- 1) (div l$ 2)) ?x726 ?x970) 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4909
(let ((?x369 (* (- 1) l$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4910
(let ((?x693 (+ ?x93 ?x369)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4911
(let (($x695 (>= ?x693 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4912
(let (($x861 (not $x695)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4913
(let (($x694 (<= ?x693 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4914
(let ((?x686 (+ ?x102 (* (- 1) ?x114))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4915
(let (($x687 (<= ?x686 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4916
(let (($x284 (not $x283)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4917
(let ((@x466 (hypothesis $x284)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4918
(let ((@x856 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x282 $x687)) (unit-resolution (def-axiom (or $x283 $x117)) @x466 $x117) $x687)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4919
(let ((?x437 (+ l$ ?x110 (* (- 2) (div ?x111 2)) (* (- 1) (mod (+ l$ ?x97) 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4920
(let (($x443 (>= ?x437 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4921
(let (($x434 (= ?x437 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4922
(let ((@x26 (true-axiom true)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4923
(let ((@x793 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x434) $x443)) (unit-resolution ((_ th-lemma arith) (or false $x434)) @x26 $x434) $x443)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4924
(let ((?x501 (* (- 2) ?x102)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4925
(let ((?x502 (+ ?x93 ?x110 ?x501)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4926
(let (($x509 (<= ?x502 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4927
(let (($x503 (= ?x502 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4928
(let (($x304 (forall ((?v0 Int_list$) (?v1 Int_list$) )(!(let ((?x45 (eval_dioph$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4929
(let ((?x83 (+ ?x45 (* (- 1) (eval_dioph$ ?v0 (map$ uu$ ?v1))) (* (- 2) (eval_dioph$ ?v0 (map$ uua$ ?v1))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4930
(= ?x83 0))) :pattern ( (eval_dioph$ ?v0 (map$ uu$ ?v1)) ) :pattern ( (eval_dioph$ ?v0 (map$ uua$ ?v1)) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4931
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4932
(let (($x85 (forall ((?v0 Int_list$) (?v1 Int_list$) )(let ((?x45 (eval_dioph$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4933
(let ((?x83 (+ ?x45 (* (- 1) (eval_dioph$ ?v0 (map$ uu$ ?v1))) (* (- 2) (eval_dioph$ ?v0 (map$ uua$ ?v1))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4934
(= ?x83 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4935
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4936
(let ((?x45 (eval_dioph$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4937
(let ((?x83 (+ ?x45 (* (- 1) (eval_dioph$ ?1 (map$ uu$ ?0))) (* (- 2) (eval_dioph$ ?1 (map$ uua$ ?0))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4938
(let (($x79 (= ?x83 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4939
(let (($x58 (forall ((?v0 Int_list$) (?v1 Int_list$) )(let ((?x45 (eval_dioph$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4940
(let ((?x48 (eval_dioph$ ?v0 (map$ uu$ ?v1))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4941
(let ((?x56 (+ (* (eval_dioph$ ?v0 (map$ uua$ ?v1)) 2) ?x48)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4942
(= ?x56 ?x45)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4943
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4944
(let (($x74 (forall ((?v0 Int_list$) (?v1 Int_list$) )(let ((?x45 (eval_dioph$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4945
(let ((?x54 (eval_dioph$ ?v0 (map$ uua$ ?v1))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4946
(let ((?x60 (* 2 ?x54)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4947
(let ((?x48 (eval_dioph$ ?v0 (map$ uu$ ?v1))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4948
(let ((?x66 (+ ?x48 ?x60)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4949
(= ?x66 ?x45)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4950
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4951
(let ((?x54 (eval_dioph$ ?1 (map$ uua$ ?0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4952
(let ((?x60 (* 2 ?x54)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4953
(let ((?x48 (eval_dioph$ ?1 (map$ uu$ ?0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4954
(let ((?x66 (+ ?x48 ?x60)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4955
(let (($x71 (= ?x66 ?x45)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4956
(let ((@x65 (monotonicity (rewrite (= (* ?x54 2) ?x60)) (= (+ (* ?x54 2) ?x48) (+ ?x60 ?x48)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4957
(let ((@x70 (trans @x65 (rewrite (= (+ ?x60 ?x48) ?x66)) (= (+ (* ?x54 2) ?x48) ?x66))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4958
(let ((@x76 (quant-intro (monotonicity @x70 (= (= (+ (* ?x54 2) ?x48) ?x45) $x71)) (= $x58 $x74))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4959
(let ((@x89 (trans @x76 (quant-intro (rewrite (= $x71 $x79)) (= $x74 $x85)) (= $x58 $x85))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4960
(let ((@x270 (mp~ (mp (asserted $x58) @x89 $x85) (nnf-pos (refl (~ $x79 $x79)) (~ $x85 $x85)) $x85)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4961
(let ((@x309 (mp @x270 (quant-intro (refl (= $x79 $x79)) (= $x85 $x304)) $x304)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4962
(let (($x507 (or (not $x304) $x503)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4963
(let ((@x508 ((_ quant-inst ks$ xs$) $x507)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4964
(let ((@x800 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x503) $x509)) (unit-resolution @x508 @x309 $x503) $x509)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4965
(let ((?x396 (+ ?x114 (* (- 1) (div ?x111 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4966
(let (($x413 (<= ?x396 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4967
(let (($x397 (= ?x396 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4968
(let (($x311 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x145 (div ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4969
(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4970
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4971
(let ((?x160 (div ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4972
(let (($x175 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4973
(let ((?x182 (ite $x175 ?x160 ?x145)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4974
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4975
(let ((?x141 (divide$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4976
(= ?x141 (ite $x143 0 ?x182)))))))))) :pattern ( (divide$ ?v0 ?v1) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4977
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4978
(let (($x193 (forall ((?v0 Int) (?v1 Int) )(let ((?x145 (div ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4979
(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4980
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4981
(let ((?x160 (div ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4982
(let (($x175 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4983
(let ((?x182 (ite $x175 ?x160 ?x145)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4984
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4985
(let ((?x141 (divide$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4986
(= ?x141 (ite $x143 0 ?x182)))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4987
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4988
(let ((?x145 (div ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4989
(let ((?x157 (* (- 1) ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4990
(let ((?x154 (* (- 1) ?1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4991
(let ((?x160 (div ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4992
(let (($x175 (<= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4993
(let ((?x182 (ite $x175 ?x160 ?x145)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4994
(let (($x143 (= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4995
(let ((?x141 (divide$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4996
(let (($x190 (= ?x141 (ite $x143 0 ?x182))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4997
(let (($x152 (forall ((?v0 Int) (?v1 Int) )(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4998
(let ((?x150 (ite $x143 0 (ite (< 0 ?v1) (div ?v0 ?v1) (div (- ?v0) (- ?v1))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  4999
(let ((?x141 (divide$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5000
(= ?x141 ?x150)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5001
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5002
(let (($x172 (forall ((?v0 Int) (?v1 Int) )(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5003
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5004
(let ((?x160 (div ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5005
(let ((?x145 (div ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5006
(let (($x144 (< 0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5007
(let ((?x163 (ite $x144 ?x145 ?x160)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5008
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5009
(let ((?x166 (ite $x143 0 ?x163)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5010
(let ((?x141 (divide$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5011
(= ?x141 ?x166)))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5012
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5013
(let (($x144 (< 0 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5014
(let ((?x163 (ite $x144 ?x145 ?x160)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5015
(let ((?x166 (ite $x143 0 ?x163)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5016
(let ((@x181 (monotonicity (rewrite (= $x144 (not $x175))) (= ?x163 (ite (not $x175) ?x145 ?x160)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5017
(let ((@x186 (trans @x181 (rewrite (= (ite (not $x175) ?x145 ?x160) ?x182)) (= ?x163 ?x182))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5018
(let ((@x192 (monotonicity (monotonicity @x186 (= ?x166 (ite $x143 0 ?x182))) (= (= ?x141 ?x166) $x190))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5019
(let (($x169 (= ?x141 ?x166)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5020
(let (($x170 (= (= ?x141 (ite $x143 0 (ite $x144 ?x145 (div (- ?1) (- ?0))))) $x169)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5021
(let ((@x162 (monotonicity (rewrite (= (- ?1) ?x154)) (rewrite (= (- ?0) ?x157)) (= (div (- ?1) (- ?0)) ?x160))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5022
(let ((@x168 (monotonicity (monotonicity @x162 (= (ite $x144 ?x145 (div (- ?1) (- ?0))) ?x163)) (= (ite $x143 0 (ite $x144 ?x145 (div (- ?1) (- ?0)))) ?x166))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5023
(let ((@x197 (trans (quant-intro (monotonicity @x168 $x170) (= $x152 $x172)) (quant-intro @x192 (= $x172 $x193)) (= $x152 $x193))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5024
(let ((@x275 (mp~ (mp (asserted $x152) @x197 $x193) (nnf-pos (refl (~ $x190 $x190)) (~ $x193 $x193)) $x193)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5025
(let ((@x316 (mp @x275 (quant-intro (refl (= $x190 $x190)) (= $x193 $x311)) $x311)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5026
(let (($x403 (or (not $x311) $x397)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5027
(let ((?x361 (div ?x111 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5028
(let (($x357 (<= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5029
(let ((?x362 (ite $x357 (div (* (- 1) ?x111) (* (- 1) 2)) ?x361)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5030
(let (($x356 (= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5031
(let ((?x363 (ite $x356 0 ?x362)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5032
(let (($x364 (= ?x114 ?x363)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5033
(let ((@x374 (rewrite (= (* (- 1) 2) (- 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5034
(let ((@x377 (monotonicity (rewrite (= (* (- 1) ?x111) (+ ?x369 ?x97))) @x374 (= (div (* (- 1) ?x111) (* (- 1) 2)) (div (+ ?x369 ?x97) (- 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5035
(let ((@x368 (rewrite (= $x357 false))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5036
(let ((@x380 (monotonicity @x368 @x377 (= ?x362 (ite false (div (+ ?x369 ?x97) (- 2)) ?x361)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5037
(let ((@x384 (trans @x380 (rewrite (= (ite false (div (+ ?x369 ?x97) (- 2)) ?x361) ?x361)) (= ?x362 ?x361))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5038
(let ((@x366 (rewrite (= $x356 false))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5039
(let ((@x391 (trans (monotonicity @x366 @x384 (= ?x363 (ite false 0 ?x361))) (rewrite (= (ite false 0 ?x361) ?x361)) (= ?x363 ?x361))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5040
(let ((@x401 (trans (monotonicity @x391 (= $x364 (= ?x114 ?x361))) (rewrite (= (= ?x114 ?x361) $x397)) (= $x364 $x397))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5041
(let ((@x410 (trans (monotonicity @x401 (= (or (not $x311) $x364) $x403)) (rewrite (= $x403 $x403)) (= (or (not $x311) $x364) $x403))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5042
(let ((@x802 (unit-resolution (mp ((_ quant-inst (+ l$ ?x110) 2) (or (not $x311) $x364)) @x410 $x403) @x316 $x397)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5043
(let ((?x425 (mod (+ l$ ?x97) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5044
(let (($x465 (>= ?x425 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5045
(let ((@x810 ((_ th-lemma arith farkas 1 -2 -2 -1 1 1) (unit-resolution ((_ th-lemma arith) (or false $x465)) @x26 $x465) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x397) $x413)) @x802 $x413) (hypothesis $x687) @x800 (hypothesis (not $x694)) @x793 false)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5046
(let (($x134 (not $x95)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5047
(let (($x290 (= $x95 $x283)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5048
(let ((@x289 (monotonicity (rewrite (= (and $x100 $x117) $x284)) (= (= $x134 (and $x100 $x117)) (= $x134 $x284)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5049
(let ((@x294 (trans @x289 (rewrite (= (= $x134 $x284) $x290)) (= (= $x134 (and $x100 $x117)) $x290))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5050
(let (($x120 (and $x100 $x117)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5051
(let (($x135 (= $x134 $x120)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5052
(let (($x107 (= $x95 (and $x100 (= ?x102 (divide$ (- l$ ?x97) 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5053
(let (($x108 (not $x107)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5054
(let ((@x116 (monotonicity (rewrite (= (- l$ ?x97) ?x111)) (= (divide$ (- l$ ?x97) 2) ?x114))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5055
(let ((@x122 (monotonicity (monotonicity @x116 (= (= ?x102 (divide$ (- l$ ?x97) 2)) $x117)) (= (and $x100 (= ?x102 (divide$ (- l$ ?x97) 2))) $x120))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5056
(let ((@x130 (trans (monotonicity @x122 (= $x107 (= $x95 $x120))) (rewrite (= (= $x95 $x120) (= $x95 $x120))) (= $x107 (= $x95 $x120)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5057
(let ((@x139 (trans (monotonicity @x130 (= $x108 (not (= $x95 $x120)))) (rewrite (= (not (= $x95 $x120)) $x135)) (= $x108 $x135))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5058
(let ((@x295 (mp (mp (asserted $x108) @x139 $x135) @x294 $x290)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5059
(let ((@x344 (unit-resolution (def-axiom (or $x134 $x283 (not $x290))) @x295 (or $x134 $x283))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5060
(let ((@x898 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x95 (not $x694) $x861)) (unit-resolution @x344 @x466 $x134) (or (not $x694) $x861))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5061
(let ((@x899 (unit-resolution @x898 (unit-resolution (lemma @x810 (or $x694 (not $x687))) @x856 $x694) $x861)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5062
(let ((?x544 (+ ?x99 ?x543)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5063
(let (($x561 (>= ?x544 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5064
(let (($x545 (= ?x544 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5065
(let (($x318 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x200 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5066
(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5067
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5068
(let ((?x208 (mod ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5069
(let ((?x214 (* (- 1) ?x208)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5070
(let (($x175 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5071
(let ((?x234 (ite $x175 ?x214 ?x200)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5072
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5073
(let ((?x239 (ite $x143 ?v0 ?x234)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5074
(let ((?x199 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5075
(= ?x199 ?x239))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5076
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5077
(let (($x245 (forall ((?v0 Int) (?v1 Int) )(let ((?x200 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5078
(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5079
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5080
(let ((?x208 (mod ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5081
(let ((?x214 (* (- 1) ?x208)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5082
(let (($x175 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5083
(let ((?x234 (ite $x175 ?x214 ?x200)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5084
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5085
(let ((?x239 (ite $x143 ?v0 ?x234)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5086
(let ((?x199 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5087
(= ?x199 ?x239))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5088
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5089
(let ((?x200 (mod ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5090
(let ((?x208 (mod ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5091
(let ((?x214 (* (- 1) ?x208)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5092
(let ((?x234 (ite $x175 ?x214 ?x200)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5093
(let ((?x239 (ite $x143 ?1 ?x234)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5094
(let ((?x199 (mod$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5095
(let (($x242 (= ?x199 ?x239)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5096
(let (($x206 (forall ((?v0 Int) (?v1 Int) )(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5097
(let ((?x204 (ite $x143 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5098
(let ((?x199 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5099
(= ?x199 ?x204)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5100
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5101
(let (($x228 (forall ((?v0 Int) (?v1 Int) )(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5102
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5103
(let ((?x208 (mod ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5104
(let ((?x214 (* (- 1) ?x208)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5105
(let ((?x200 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5106
(let (($x144 (< 0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5107
(let ((?x219 (ite $x144 ?x200 ?x214)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5108
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5109
(let ((?x222 (ite $x143 ?v0 ?x219)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5110
(let ((?x199 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5111
(= ?x199 ?x222))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5112
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5113
(let ((@x233 (monotonicity (rewrite (= $x144 (not $x175))) (= (ite $x144 ?x200 ?x214) (ite (not $x175) ?x200 ?x214)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5114
(let ((@x238 (trans @x233 (rewrite (= (ite (not $x175) ?x200 ?x214) ?x234)) (= (ite $x144 ?x200 ?x214) ?x234))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5115
(let ((@x244 (monotonicity (monotonicity @x238 (= (ite $x143 ?1 (ite $x144 ?x200 ?x214)) ?x239)) (= (= ?x199 (ite $x143 ?1 (ite $x144 ?x200 ?x214))) $x242))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5116
(let ((?x219 (ite $x144 ?x200 ?x214)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5117
(let ((?x222 (ite $x143 ?1 ?x219)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5118
(let (($x225 (= ?x199 ?x222)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5119
(let (($x226 (= (= ?x199 (ite $x143 ?1 (ite $x144 ?x200 (- (mod (- ?1) (- ?0)))))) $x225)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5120
(let ((@x210 (monotonicity (rewrite (= (- ?1) ?x154)) (rewrite (= (- ?0) ?x157)) (= (mod (- ?1) (- ?0)) ?x208))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5121
(let ((@x218 (trans (monotonicity @x210 (= (- (mod (- ?1) (- ?0))) (- ?x208))) (rewrite (= (- ?x208) ?x214)) (= (- (mod (- ?1) (- ?0))) ?x214))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5122
(let ((@x221 (monotonicity @x218 (= (ite $x144 ?x200 (- (mod (- ?1) (- ?0)))) ?x219))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5123
(let ((@x224 (monotonicity @x221 (= (ite $x143 ?1 (ite $x144 ?x200 (- (mod (- ?1) (- ?0))))) ?x222))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5124
(let ((@x249 (trans (quant-intro (monotonicity @x224 $x226) (= $x206 $x228)) (quant-intro @x244 (= $x228 $x245)) (= $x206 $x245))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5125
(let ((@x280 (mp~ (mp (asserted $x206) @x249 $x245) (nnf-pos (refl (~ $x242 $x242)) (~ $x245 $x245)) $x245)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5126
(let ((@x323 (mp @x280 (quant-intro (refl (= $x242 $x242)) (= $x245 $x318)) $x318)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5127
(let (($x550 (not $x318)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5128
(let (($x551 (or $x550 $x545)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5129
(let ((?x359 (* (- 1) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5130
(let ((?x511 (mod ?x369 ?x359)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5131
(let ((?x512 (* (- 1) ?x511)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5132
(let ((?x517 (ite $x357 ?x512 ?x516)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5133
(let ((?x518 (ite $x356 l$ ?x517)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5134
(let (($x519 (= ?x99 ?x518)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5135
(let ((@x525 (monotonicity (monotonicity @x374 (= ?x511 (mod ?x369 (- 2)))) (= ?x512 (* (- 1) (mod ?x369 (- 2)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5136
(let ((@x528 (monotonicity @x368 @x525 (= ?x517 (ite false (* (- 1) (mod ?x369 (- 2))) ?x516)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5137
(let ((@x532 (trans @x528 (rewrite (= (ite false (* (- 1) (mod ?x369 (- 2))) ?x516) ?x516)) (= ?x517 ?x516))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5138
(let ((@x539 (trans (monotonicity @x366 @x532 (= ?x518 (ite false l$ ?x516))) (rewrite (= (ite false l$ ?x516) ?x516)) (= ?x518 ?x516))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5139
(let ((@x549 (trans (monotonicity @x539 (= $x519 (= ?x99 ?x516))) (rewrite (= (= ?x99 ?x516) $x545)) (= $x519 $x545))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5140
(let ((@x558 (trans (monotonicity @x549 (= (or $x550 $x519) $x551)) (rewrite (= $x551 $x551)) (= (or $x550 $x519) $x551))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5141
(let ((@x559 (mp ((_ quant-inst l$ 2) (or $x550 $x519)) @x558 $x551)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5142
(let ((@x902 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x545) $x561)) (unit-resolution @x559 @x323 $x545) $x561)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5143
(let ((?x757 (* (- 2) ?x744)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5144
(let ((?x758 (+ ?x93 ?x726 ?x757)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5145
(let (($x764 (>= ?x758 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5146
(let (($x756 (= ?x758 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5147
(let ((@x872 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x756) $x764)) (unit-resolution ((_ th-lemma arith) (or false $x756)) @x26 $x756) $x764)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5148
(let ((?x562 (div l$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5149
(let ((?x575 (* (- 2) ?x562)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5150
(let ((?x576 (+ l$ ?x543 ?x575)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5151
(let (($x582 (>= ?x576 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5152
(let (($x574 (= ?x576 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5153
(let ((@x880 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x574) $x582)) (unit-resolution ((_ th-lemma arith) (or false $x574)) @x26 $x574) $x582)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5154
(let ((?x504 (mod$ ?x93 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5155
(let ((?x727 (+ ?x504 ?x726)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5156
(let (($x728 (= ?x727 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5157
(let (($x733 (or $x550 $x728)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5158
(let ((?x696 (* (- 1) ?x93)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5159
(let ((?x697 (mod ?x696 ?x359)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5160
(let ((?x698 (* (- 1) ?x697)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5161
(let ((?x700 (ite $x357 ?x698 ?x699)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5162
(let ((?x701 (ite $x356 ?x93 ?x700)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5163
(let (($x702 (= ?x504 ?x701)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5164
(let ((@x708 (monotonicity (monotonicity @x374 (= ?x697 (mod ?x696 (- 2)))) (= ?x698 (* (- 1) (mod ?x696 (- 2)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5165
(let ((@x711 (monotonicity @x368 @x708 (= ?x700 (ite false (* (- 1) (mod ?x696 (- 2))) ?x699)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5166
(let ((@x715 (trans @x711 (rewrite (= (ite false (* (- 1) (mod ?x696 (- 2))) ?x699) ?x699)) (= ?x700 ?x699))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5167
(let ((@x722 (trans (monotonicity @x366 @x715 (= ?x701 (ite false ?x93 ?x699))) (rewrite (= (ite false ?x93 ?x699) ?x699)) (= ?x701 ?x699))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5168
(let ((@x732 (trans (monotonicity @x722 (= $x702 (= ?x504 ?x699))) (rewrite (= (= ?x504 ?x699) $x728)) (= $x702 $x728))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5169
(let ((@x740 (trans (monotonicity @x732 (= (or $x550 $x702) $x733)) (rewrite (= $x733 $x733)) (= (or $x550 $x702) $x733))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5170
(let ((@x427 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x728) (>= ?x727 0))) (unit-resolution (mp ((_ quant-inst (eval_dioph$ ks$ xs$) 2) (or $x550 $x702)) @x740 $x733) @x323 $x728) (>= ?x727 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5171
(let ((?x783 (* (- 1) ?x504)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5172
(let ((?x784 (+ ?x99 ?x783)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5173
(let (($x786 (>= ?x784 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5174
(let (($x782 (= ?x99 ?x504)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5175
(let (($x821 (= ?x98 ?x504)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5176
(let (($x505 (= ?x504 ?x98)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5177
(let (($x297 (forall ((?v0 Int_list$) (?v1 Int_list$) )(!(= (mod$ (eval_dioph$ ?v0 ?v1) 2) (mod$ (eval_dioph$ ?v0 (map$ uu$ ?v1)) 2)) :pattern ( (eval_dioph$ ?v0 (map$ uu$ ?v1)) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5178
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5179
(let (($x51 (forall ((?v0 Int_list$) (?v1 Int_list$) )(= (mod$ (eval_dioph$ ?v0 ?v1) 2) (mod$ (eval_dioph$ ?v0 (map$ uu$ ?v1)) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5180
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5181
(let (($x50 (= (mod$ ?x45 2) (mod$ ?x48 2))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5182
(let ((@x265 (mp~ (asserted $x51) (nnf-pos (refl (~ $x50 $x50)) (~ $x51 $x51)) $x51)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5183
(let ((@x302 (mp @x265 (quant-intro (refl (= $x50 $x50)) (= $x51 $x297)) $x297)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5184
(let (($x514 (or (not $x297) $x505)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5185
(let ((@x515 ((_ quant-inst ks$ xs$) $x514)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5186
(let ((@x824 (symm (unit-resolution (def-axiom (or $x283 $x100)) @x466 $x100) (= ?x99 ?x98))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5187
(let ((@x939 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x782) $x786)) (trans @x824 (symm (unit-resolution @x515 @x302 $x505) $x821) $x782) $x786)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5188
(let (($x785 (<= ?x784 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5189
(let ((@x887 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x782) $x785)) (trans @x824 (symm (unit-resolution @x515 @x302 $x505) $x821) $x782) $x785)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5190
(let (($x688 (>= ?x686 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5191
(let ((@x855 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x282 $x688)) (unit-resolution (def-axiom (or $x283 $x117)) @x466 $x117) $x688)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5192
(let ((@x979 (unit-resolution ((_ th-lemma arith) (or false (not (>= ?x425 2)))) @x26 (not (>= ?x425 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5193
(let (($x560 (<= ?x544 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5194
(let ((@x461 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x545) $x560)) (unit-resolution @x559 @x323 $x545) $x560)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5195
(let (($x763 (<= ?x758 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5196
(let ((@x658 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x756) $x763)) (unit-resolution ((_ th-lemma arith) (or false $x756)) @x26 $x756) $x763)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5197
(let (($x581 (<= ?x576 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5198
(let ((@x986 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x574) $x581)) (unit-resolution ((_ th-lemma arith) (or false $x574)) @x26 $x574) $x581)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5199
(let ((@x989 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x728) (<= ?x727 0))) (unit-resolution (mp ((_ quant-inst (eval_dioph$ ks$ xs$) 2) (or $x550 $x702)) @x740 $x733) @x323 $x728) (<= ?x727 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5200
(let (($x510 (>= ?x502 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5201
(let ((@x994 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x503) $x510)) (unit-resolution @x508 @x309 $x503) $x510)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5202
(let ((@x998 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x397) (>= ?x396 0))) @x802 (>= ?x396 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5203
(let ((@x1001 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x434) (<= ?x437 0))) (unit-resolution ((_ th-lemma arith) (or false $x434)) @x26 $x434) (<= ?x437 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5204
(let ((@x1002 ((_ th-lemma arith farkas 1 -2 -2 -1 -2 1 1 1 1 1 1) @x1001 @x998 (hypothesis $x688) @x994 (hypothesis $x972) (hypothesis $x785) @x989 @x986 @x658 @x461 @x979 false)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5205
(let ((@x474 (unit-resolution (lemma @x1002 (or (not $x972) (not $x688) (not $x785))) @x855 @x887 (not $x972))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5206
(let ((@x941 (unit-resolution @x474 ((_ th-lemma arith) @x939 @x427 @x880 @x872 @x902 @x899 $x972) false)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5207
(let ((@x942 (lemma @x941 $x283)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5208
(let ((@x340 (unit-resolution (def-axiom (or $x95 $x284 (not $x290))) @x295 (or $x95 $x284))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5209
(let ((@x679 (unit-resolution @x340 @x942 $x95)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5210
(let ((@x889 (trans (symm (unit-resolution @x515 @x302 $x505) $x821) (monotonicity @x679 (= ?x504 ?x99)) $x100)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5211
(let (($x811 (not $x687)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5212
(let ((@x845 ((_ th-lemma arith assign-bounds 1 -1/2 -1/2 1/2 -1/2) (or $x688 (not $x413) (not $x465) (not $x443) (not $x509) $x861))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5213
(let ((@x892 (unit-resolution @x845 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x397) $x413)) @x802 $x413) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x134 $x695)) @x679 $x695) @x793 (unit-resolution ((_ th-lemma arith) (or false $x465)) @x26 $x465) @x800 $x688)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5214
(let ((@x935 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x117 $x811 (not $x688))) (hypothesis $x282) (or $x811 (not $x688)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5215
(let ((@x955 ((_ th-lemma arith farkas -2 -2 1 -1 1 1) (unit-resolution @x935 @x892 $x811) @x998 @x1001 @x994 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x134 $x694)) @x679 $x694) @x979 false)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5216
(let ((@x472 (unit-resolution (unit-resolution (def-axiom (or $x284 $x281 $x282)) @x942 $x283) (lemma @x955 $x117) $x281)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5217
(unit-resolution @x472 @x889 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5218
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5219
0f7f4a10f8a84029fd3a6efddc4408fa429b0cda 113 0
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5220
unsat
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5221
((set-logic <null>)
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5222
(proof
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5223
(let ((?x228 (mod x$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5224
(let ((?x262 (* (- 1) ?x228)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5225
(let ((?x31 (mod$ x$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5226
(let ((?x263 (+ ?x31 ?x262)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5227
(let (($x280 (>= ?x263 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5228
(let (($x264 (= ?x263 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5229
(let (($x205 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x136 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5230
(let ((?x93 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5231
(let ((?x90 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5232
(let ((?x144 (mod ?x90 ?x93)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5233
(let ((?x150 (* (- 1) ?x144)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5234
(let (($x111 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5235
(let ((?x170 (ite $x111 ?x150 ?x136)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5236
(let (($x78 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5237
(let ((?x175 (ite $x78 ?v0 ?x170)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5238
(let ((?x135 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5239
(= ?x135 ?x175))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5240
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5241
(let (($x181 (forall ((?v0 Int) (?v1 Int) )(let ((?x136 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5242
(let ((?x93 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5243
(let ((?x90 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5244
(let ((?x144 (mod ?x90 ?x93)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5245
(let ((?x150 (* (- 1) ?x144)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5246
(let (($x111 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5247
(let ((?x170 (ite $x111 ?x150 ?x136)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5248
(let (($x78 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5249
(let ((?x175 (ite $x78 ?v0 ?x170)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5250
(let ((?x135 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5251
(= ?x135 ?x175))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5252
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5253
(let ((?x136 (mod ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5254
(let ((?x93 (* (- 1) ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5255
(let ((?x90 (* (- 1) ?1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5256
(let ((?x144 (mod ?x90 ?x93)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5257
(let ((?x150 (* (- 1) ?x144)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5258
(let (($x111 (<= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5259
(let ((?x170 (ite $x111 ?x150 ?x136)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5260
(let (($x78 (= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5261
(let ((?x175 (ite $x78 ?1 ?x170)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5262
(let ((?x135 (mod$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5263
(let (($x178 (= ?x135 ?x175)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5264
(let (($x142 (forall ((?v0 Int) (?v1 Int) )(let (($x78 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5265
(let ((?x140 (ite $x78 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5266
(let ((?x135 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5267
(= ?x135 ?x140)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5268
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5269
(let (($x164 (forall ((?v0 Int) (?v1 Int) )(let ((?x93 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5270
(let ((?x90 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5271
(let ((?x144 (mod ?x90 ?x93)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5272
(let ((?x150 (* (- 1) ?x144)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5273
(let ((?x136 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5274
(let (($x79 (< 0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5275
(let ((?x155 (ite $x79 ?x136 ?x150)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5276
(let (($x78 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5277
(let ((?x158 (ite $x78 ?v0 ?x155)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5278
(let ((?x135 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5279
(= ?x135 ?x158))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5280
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5281
(let ((@x169 (monotonicity (rewrite (= (< 0 ?0) (not $x111))) (= (ite (< 0 ?0) ?x136 ?x150) (ite (not $x111) ?x136 ?x150)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5282
(let ((@x174 (trans @x169 (rewrite (= (ite (not $x111) ?x136 ?x150) ?x170)) (= (ite (< 0 ?0) ?x136 ?x150) ?x170))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5283
(let ((@x177 (monotonicity @x174 (= (ite $x78 ?1 (ite (< 0 ?0) ?x136 ?x150)) ?x175))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5284
(let ((@x180 (monotonicity @x177 (= (= ?x135 (ite $x78 ?1 (ite (< 0 ?0) ?x136 ?x150))) $x178))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5285
(let (($x79 (< 0 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5286
(let ((?x155 (ite $x79 ?x136 ?x150)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5287
(let ((?x158 (ite $x78 ?1 ?x155)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5288
(let (($x161 (= ?x135 ?x158)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5289
(let (($x162 (= (= ?x135 (ite $x78 ?1 (ite $x79 ?x136 (- (mod (- ?1) (- ?0)))))) $x161)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5290
(let ((@x146 (monotonicity (rewrite (= (- ?1) ?x90)) (rewrite (= (- ?0) ?x93)) (= (mod (- ?1) (- ?0)) ?x144))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5291
(let ((@x154 (trans (monotonicity @x146 (= (- (mod (- ?1) (- ?0))) (- ?x144))) (rewrite (= (- ?x144) ?x150)) (= (- (mod (- ?1) (- ?0))) ?x150))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5292
(let ((@x157 (monotonicity @x154 (= (ite $x79 ?x136 (- (mod (- ?1) (- ?0)))) ?x155))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5293
(let ((@x160 (monotonicity @x157 (= (ite $x78 ?1 (ite $x79 ?x136 (- (mod (- ?1) (- ?0))))) ?x158))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5294
(let ((@x185 (trans (quant-intro (monotonicity @x160 $x162) (= $x142 $x164)) (quant-intro @x180 (= $x164 $x181)) (= $x142 $x181))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5295
(let ((@x196 (mp~ (mp (asserted $x142) @x185 $x181) (nnf-pos (refl (~ $x178 $x178)) (~ $x181 $x181)) $x181)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5296
(let ((@x210 (mp @x196 (quant-intro (refl (= $x178 $x178)) (= $x181 $x205)) $x205)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5297
(let (($x270 (or (not $x205) $x264)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5298
(let ((?x225 (* (- 1) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5299
(let ((?x224 (* (- 1) x$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5300
(let ((?x226 (mod ?x224 ?x225)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5301
(let ((?x227 (* (- 1) ?x226)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5302
(let (($x223 (<= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5303
(let ((?x229 (ite $x223 ?x227 ?x228)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5304
(let (($x222 (= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5305
(let ((?x230 (ite $x222 x$ ?x229)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5306
(let (($x231 (= ?x31 ?x230)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5307
(let ((@x244 (monotonicity (monotonicity (rewrite (= ?x225 (- 2))) (= ?x226 (mod ?x224 (- 2)))) (= ?x227 (* (- 1) (mod ?x224 (- 2)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5308
(let ((@x247 (monotonicity (rewrite (= $x223 false)) @x244 (= ?x229 (ite false (* (- 1) (mod ?x224 (- 2))) ?x228)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5309
(let ((@x251 (trans @x247 (rewrite (= (ite false (* (- 1) (mod ?x224 (- 2))) ?x228) ?x228)) (= ?x229 ?x228))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5310
(let ((@x254 (monotonicity (rewrite (= $x222 false)) @x251 (= ?x230 (ite false x$ ?x228)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5311
(let ((@x261 (monotonicity (trans @x254 (rewrite (= (ite false x$ ?x228) ?x228)) (= ?x230 ?x228)) (= $x231 (= ?x31 ?x228)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5312
(let ((@x274 (monotonicity (trans @x261 (rewrite (= (= ?x31 ?x228) $x264)) (= $x231 $x264)) (= (or (not $x205) $x231) $x270))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5313
(let ((@x277 (trans @x274 (rewrite (= $x270 $x270)) (= (or (not $x205) $x231) $x270))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5314
(let ((@x278 (mp ((_ quant-inst x$ 2) (or (not $x205) $x231)) @x277 $x270)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5315
(let ((@x337 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x264) $x280)) (unit-resolution @x278 @x210 $x264) $x280)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5316
(let (($x305 (>= ?x228 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5317
(let (($x64 (>= ?x31 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5318
(let (($x67 (not $x64)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5319
(let (($x36 (not (<= (+ x$ 1) (+ x$ (+ (* 2 ?x31) 1))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5320
(let ((@x69 (monotonicity (rewrite (= (>= (* 2 ?x31) 0) $x64)) (= (not (>= (* 2 ?x31) 0)) $x67))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5321
(let ((?x32 (* 2 ?x31)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5322
(let ((?x47 (+ 1 x$ ?x32)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5323
(let (($x52 (<= (+ 1 x$) ?x47)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5324
(let (($x55 (not $x52)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5325
(let ((@x63 (monotonicity (rewrite (= $x52 (>= ?x32 0))) (= $x55 (not (>= ?x32 0))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5326
(let ((@x46 (monotonicity (rewrite (= (+ ?x32 1) (+ 1 ?x32))) (= (+ x$ (+ ?x32 1)) (+ x$ (+ 1 ?x32))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5327
(let ((@x51 (trans @x46 (rewrite (= (+ x$ (+ 1 ?x32)) ?x47)) (= (+ x$ (+ ?x32 1)) ?x47))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5328
(let ((@x54 (monotonicity (rewrite (= (+ x$ 1) (+ 1 x$))) @x51 (= (<= (+ x$ 1) (+ x$ (+ ?x32 1))) $x52))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5329
(let ((@x73 (trans (monotonicity @x54 (= $x36 $x55)) (trans @x63 @x69 (= $x55 $x67)) (= $x36 $x67))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5330
(let ((@x74 (mp (asserted $x36) @x73 $x67)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5331
((_ th-lemma arith farkas -1 1 1) @x74 (unit-resolution ((_ th-lemma arith) (or false $x305)) (true-axiom true) $x305) @x337 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5332
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5333
fa5abc269019f00f5093218b287856c2a08c0adf 112 0
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5334
unsat
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5335
((set-logic <null>)
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5336
(proof
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5337
(let ((?x224 (mod x$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5338
(let (($x318 (>= ?x224 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5339
(let (($x319 (not $x318)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5340
(let ((?x258 (* (- 1) ?x224)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5341
(let ((?x29 (mod$ x$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5342
(let ((?x259 (+ ?x29 ?x258)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5343
(let (($x275 (<= ?x259 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5344
(let (($x260 (= ?x259 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5345
(let (($x201 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x132 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5346
(let ((?x89 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5347
(let ((?x86 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5348
(let ((?x140 (mod ?x86 ?x89)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5349
(let ((?x146 (* (- 1) ?x140)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5350
(let (($x107 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5351
(let ((?x166 (ite $x107 ?x146 ?x132)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5352
(let (($x74 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5353
(let ((?x171 (ite $x74 ?v0 ?x166)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5354
(let ((?x131 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5355
(= ?x131 ?x171))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5356
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5357
(let (($x177 (forall ((?v0 Int) (?v1 Int) )(let ((?x132 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5358
(let ((?x89 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5359
(let ((?x86 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5360
(let ((?x140 (mod ?x86 ?x89)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5361
(let ((?x146 (* (- 1) ?x140)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5362
(let (($x107 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5363
(let ((?x166 (ite $x107 ?x146 ?x132)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5364
(let (($x74 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5365
(let ((?x171 (ite $x74 ?v0 ?x166)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5366
(let ((?x131 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5367
(= ?x131 ?x171))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5368
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5369
(let ((?x132 (mod ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5370
(let ((?x89 (* (- 1) ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5371
(let ((?x86 (* (- 1) ?1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5372
(let ((?x140 (mod ?x86 ?x89)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5373
(let ((?x146 (* (- 1) ?x140)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5374
(let (($x107 (<= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5375
(let ((?x166 (ite $x107 ?x146 ?x132)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5376
(let (($x74 (= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5377
(let ((?x171 (ite $x74 ?1 ?x166)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5378
(let ((?x131 (mod$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5379
(let (($x174 (= ?x131 ?x171)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5380
(let (($x138 (forall ((?v0 Int) (?v1 Int) )(let (($x74 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5381
(let ((?x136 (ite $x74 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5382
(let ((?x131 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5383
(= ?x131 ?x136)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5384
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5385
(let (($x160 (forall ((?v0 Int) (?v1 Int) )(let ((?x89 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5386
(let ((?x86 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5387
(let ((?x140 (mod ?x86 ?x89)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5388
(let ((?x146 (* (- 1) ?x140)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5389
(let ((?x132 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5390
(let (($x75 (< 0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5391
(let ((?x151 (ite $x75 ?x132 ?x146)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5392
(let (($x74 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5393
(let ((?x154 (ite $x74 ?v0 ?x151)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5394
(let ((?x131 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5395
(= ?x131 ?x154))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5396
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5397
(let ((@x165 (monotonicity (rewrite (= (< 0 ?0) (not $x107))) (= (ite (< 0 ?0) ?x132 ?x146) (ite (not $x107) ?x132 ?x146)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5398
(let ((@x170 (trans @x165 (rewrite (= (ite (not $x107) ?x132 ?x146) ?x166)) (= (ite (< 0 ?0) ?x132 ?x146) ?x166))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5399
(let ((@x173 (monotonicity @x170 (= (ite $x74 ?1 (ite (< 0 ?0) ?x132 ?x146)) ?x171))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5400
(let ((@x176 (monotonicity @x173 (= (= ?x131 (ite $x74 ?1 (ite (< 0 ?0) ?x132 ?x146))) $x174))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5401
(let (($x75 (< 0 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5402
(let ((?x151 (ite $x75 ?x132 ?x146)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5403
(let ((?x154 (ite $x74 ?1 ?x151)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5404
(let (($x157 (= ?x131 ?x154)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5405
(let (($x158 (= (= ?x131 (ite $x74 ?1 (ite $x75 ?x132 (- (mod (- ?1) (- ?0)))))) $x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5406
(let ((@x142 (monotonicity (rewrite (= (- ?1) ?x86)) (rewrite (= (- ?0) ?x89)) (= (mod (- ?1) (- ?0)) ?x140))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5407
(let ((@x150 (trans (monotonicity @x142 (= (- (mod (- ?1) (- ?0))) (- ?x140))) (rewrite (= (- ?x140) ?x146)) (= (- (mod (- ?1) (- ?0))) ?x146))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5408
(let ((@x153 (monotonicity @x150 (= (ite $x75 ?x132 (- (mod (- ?1) (- ?0)))) ?x151))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5409
(let ((@x156 (monotonicity @x153 (= (ite $x74 ?1 (ite $x75 ?x132 (- (mod (- ?1) (- ?0))))) ?x154))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5410
(let ((@x181 (trans (quant-intro (monotonicity @x156 $x158) (= $x138 $x160)) (quant-intro @x176 (= $x160 $x177)) (= $x138 $x177))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5411
(let ((@x192 (mp~ (mp (asserted $x138) @x181 $x177) (nnf-pos (refl (~ $x174 $x174)) (~ $x177 $x177)) $x177)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5412
(let ((@x206 (mp @x192 (quant-intro (refl (= $x174 $x174)) (= $x177 $x201)) $x201)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5413
(let (($x266 (or (not $x201) $x260)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5414
(let ((?x221 (* (- 1) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5415
(let ((?x220 (* (- 1) x$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5416
(let ((?x222 (mod ?x220 ?x221)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5417
(let ((?x223 (* (- 1) ?x222)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5418
(let (($x219 (<= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5419
(let ((?x225 (ite $x219 ?x223 ?x224)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5420
(let (($x218 (= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5421
(let ((?x226 (ite $x218 x$ ?x225)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5422
(let (($x227 (= ?x29 ?x226)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5423
(let ((@x240 (monotonicity (monotonicity (rewrite (= ?x221 (- 2))) (= ?x222 (mod ?x220 (- 2)))) (= ?x223 (* (- 1) (mod ?x220 (- 2)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5424
(let ((@x243 (monotonicity (rewrite (= $x219 false)) @x240 (= ?x225 (ite false (* (- 1) (mod ?x220 (- 2))) ?x224)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5425
(let ((@x247 (trans @x243 (rewrite (= (ite false (* (- 1) (mod ?x220 (- 2))) ?x224) ?x224)) (= ?x225 ?x224))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5426
(let ((@x250 (monotonicity (rewrite (= $x218 false)) @x247 (= ?x226 (ite false x$ ?x224)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5427
(let ((@x257 (monotonicity (trans @x250 (rewrite (= (ite false x$ ?x224) ?x224)) (= ?x226 ?x224)) (= $x227 (= ?x29 ?x224)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5428
(let ((@x270 (monotonicity (trans @x257 (rewrite (= (= ?x29 ?x224) $x260)) (= $x227 $x260)) (= (or (not $x201) $x227) $x266))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5429
(let ((@x273 (trans @x270 (rewrite (= $x266 $x266)) (= (or (not $x201) $x227) $x266))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5430
(let ((@x274 (mp ((_ quant-inst x$ 2) (or (not $x201) $x227)) @x273 $x266)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5431
(let ((@x336 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x260) $x275)) (unit-resolution @x274 @x206 $x260) $x275)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5432
(let (($x63 (>= ?x29 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5433
(let ((?x37 (* 2 ?x29)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5434
(let (($x56 (>= ?x37 3)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5435
(let (($x46 (< (+ x$ ?x37) (+ 3 x$))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5436
(let (($x49 (not $x46)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5437
(let ((@x58 (monotonicity (rewrite (= $x46 (not $x56))) (= $x49 (not (not $x56))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5438
(let ((@x67 (trans (trans @x58 (rewrite (= (not (not $x56)) $x56)) (= $x49 $x56)) (rewrite (= $x56 $x63)) (= $x49 $x63))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5439
(let ((@x42 (monotonicity (rewrite (= (+ ?x29 ?x29) ?x37)) (= (+ x$ (+ ?x29 ?x29)) (+ x$ ?x37)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5440
(let ((@x48 (monotonicity @x42 (rewrite (= (+ x$ 3) (+ 3 x$))) (= (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3)) $x46))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5441
(let ((@x51 (monotonicity @x48 (= (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3))) $x49))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5442
(let ((@x69 (trans @x51 @x67 (= (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3))) $x63))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5443
(let ((@x70 (mp (asserted (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3)))) @x69 $x63)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5444
((_ th-lemma arith farkas -1 1 1) @x70 @x336 (unit-resolution ((_ th-lemma arith) (or false $x319)) (true-axiom true) $x319) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5445
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5446
1880f0ed1cb3d1cfa006dff17f1b5553ce3a5158 236 0
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5447
unsat
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5448
((set-logic <null>)
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5449
(proof
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5450
(let ((?x410 (div n$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5451
(let ((?x704 (* (- 1) ?x410)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5452
(let ((?x381 (div n$ 4)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5453
(let ((?x601 (* (- 2) ?x381)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5454
(let ((?x329 (mod n$ 4)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5455
(let ((?x363 (* (- 1) ?x329)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5456
(let ((?x35 (mod$ n$ 4)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5457
(let ((?x705 (+ n$ ?x35 ?x363 ?x601 ?x704)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5458
(let (($x706 (>= ?x705 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5459
(let ((?x39 (mod$ n$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5460
(let (($x515 (>= ?x39 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5461
(let (($x725 (not $x515)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5462
(let (($x514 (<= ?x39 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5463
(let ((?x519 (mod n$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5464
(let ((?x534 (* (- 1) ?x519)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5465
(let ((?x535 (+ ?x39 ?x534)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5466
(let (($x408 (<= ?x535 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5467
(let (($x490 (= ?x535 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5468
(let (($x191 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x108 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5469
(let ((?x65 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5470
(let ((?x62 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5471
(let ((?x116 (mod ?x62 ?x65)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5472
(let ((?x122 (* (- 1) ?x116)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5473
(let (($x83 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5474
(let ((?x142 (ite $x83 ?x122 ?x108)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5475
(let (($x50 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5476
(let ((?x147 (ite $x50 ?v0 ?x142)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5477
(let ((?x107 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5478
(= ?x107 ?x147))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5479
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5480
(let (($x153 (forall ((?v0 Int) (?v1 Int) )(let ((?x108 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5481
(let ((?x65 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5482
(let ((?x62 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5483
(let ((?x116 (mod ?x62 ?x65)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5484
(let ((?x122 (* (- 1) ?x116)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5485
(let (($x83 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5486
(let ((?x142 (ite $x83 ?x122 ?x108)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5487
(let (($x50 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5488
(let ((?x147 (ite $x50 ?v0 ?x142)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5489
(let ((?x107 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5490
(= ?x107 ?x147))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5491
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5492
(let ((?x108 (mod ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5493
(let ((?x65 (* (- 1) ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5494
(let ((?x62 (* (- 1) ?1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5495
(let ((?x116 (mod ?x62 ?x65)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5496
(let ((?x122 (* (- 1) ?x116)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5497
(let (($x83 (<= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5498
(let ((?x142 (ite $x83 ?x122 ?x108)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5499
(let (($x50 (= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5500
(let ((?x147 (ite $x50 ?1 ?x142)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5501
(let ((?x107 (mod$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5502
(let (($x150 (= ?x107 ?x147)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5503
(let (($x114 (forall ((?v0 Int) (?v1 Int) )(let (($x50 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5504
(let ((?x112 (ite $x50 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5505
(let ((?x107 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5506
(= ?x107 ?x112)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5507
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5508
(let (($x136 (forall ((?v0 Int) (?v1 Int) )(let ((?x65 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5509
(let ((?x62 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5510
(let ((?x116 (mod ?x62 ?x65)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5511
(let ((?x122 (* (- 1) ?x116)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5512
(let ((?x108 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5513
(let (($x51 (< 0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5514
(let ((?x127 (ite $x51 ?x108 ?x122)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5515
(let (($x50 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5516
(let ((?x130 (ite $x50 ?v0 ?x127)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5517
(let ((?x107 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5518
(= ?x107 ?x130))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5519
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5520
(let ((@x141 (monotonicity (rewrite (= (< 0 ?0) (not $x83))) (= (ite (< 0 ?0) ?x108 ?x122) (ite (not $x83) ?x108 ?x122)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5521
(let ((@x146 (trans @x141 (rewrite (= (ite (not $x83) ?x108 ?x122) ?x142)) (= (ite (< 0 ?0) ?x108 ?x122) ?x142))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5522
(let ((@x149 (monotonicity @x146 (= (ite $x50 ?1 (ite (< 0 ?0) ?x108 ?x122)) ?x147))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5523
(let ((@x152 (monotonicity @x149 (= (= ?x107 (ite $x50 ?1 (ite (< 0 ?0) ?x108 ?x122))) $x150))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5524
(let (($x51 (< 0 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5525
(let ((?x127 (ite $x51 ?x108 ?x122)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5526
(let ((?x130 (ite $x50 ?1 ?x127)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5527
(let (($x133 (= ?x107 ?x130)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5528
(let (($x134 (= (= ?x107 (ite $x50 ?1 (ite $x51 ?x108 (- (mod (- ?1) (- ?0)))))) $x133)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5529
(let ((@x118 (monotonicity (rewrite (= (- ?1) ?x62)) (rewrite (= (- ?0) ?x65)) (= (mod (- ?1) (- ?0)) ?x116))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5530
(let ((@x126 (trans (monotonicity @x118 (= (- (mod (- ?1) (- ?0))) (- ?x116))) (rewrite (= (- ?x116) ?x122)) (= (- (mod (- ?1) (- ?0))) ?x122))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5531
(let ((@x129 (monotonicity @x126 (= (ite $x51 ?x108 (- (mod (- ?1) (- ?0)))) ?x127))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5532
(let ((@x132 (monotonicity @x129 (= (ite $x50 ?1 (ite $x51 ?x108 (- (mod (- ?1) (- ?0))))) ?x130))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5533
(let ((@x157 (trans (quant-intro (monotonicity @x132 $x134) (= $x114 $x136)) (quant-intro @x152 (= $x136 $x153)) (= $x114 $x153))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5534
(let ((@x168 (mp~ (mp (asserted $x114) @x157 $x153) (nnf-pos (refl (~ $x150 $x150)) (~ $x153 $x153)) $x153)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5535
(let ((@x196 (mp @x168 (quant-intro (refl (= $x150 $x150)) (= $x153 $x191)) $x191)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5536
(let (($x260 (not $x191)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5537
(let (($x541 (or $x260 $x490)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5538
(let ((?x211 (* (- 1) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5539
(let ((?x222 (* (- 1) n$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5540
(let ((?x517 (mod ?x222 ?x211)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5541
(let ((?x518 (* (- 1) ?x517)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5542
(let (($x209 (<= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5543
(let ((?x520 (ite $x209 ?x518 ?x519)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5544
(let (($x208 (= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5545
(let ((?x521 (ite $x208 n$ ?x520)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5546
(let (($x485 (= ?x39 ?x521)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5547
(let ((@x593 (monotonicity (monotonicity (rewrite (= ?x211 (- 2))) (= ?x517 (mod ?x222 (- 2)))) (= ?x518 (* (- 1) (mod ?x222 (- 2)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5548
(let ((@x221 (rewrite (= $x209 false))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5549
(let ((@x596 (monotonicity @x221 @x593 (= ?x520 (ite false (* (- 1) (mod ?x222 (- 2))) ?x519)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5550
(let ((@x599 (trans @x596 (rewrite (= (ite false (* (- 1) (mod ?x222 (- 2))) ?x519) ?x519)) (= ?x520 ?x519))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5551
(let ((@x219 (rewrite (= $x208 false))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5552
(let ((@x487 (trans (monotonicity @x219 @x599 (= ?x521 (ite false n$ ?x519))) (rewrite (= (ite false n$ ?x519) ?x519)) (= ?x521 ?x519))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5553
(let ((@x538 (trans (monotonicity @x487 (= $x485 (= ?x39 ?x519))) (rewrite (= (= ?x39 ?x519) $x490)) (= $x485 $x490))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5554
(let ((@x406 (trans (monotonicity @x538 (= (or $x260 $x485) $x541)) (rewrite (= $x541 $x541)) (= (or $x260 $x485) $x541))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5555
(let ((@x407 (mp ((_ quant-inst n$ 2) (or $x260 $x485)) @x406 $x541)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5556
(let ((@x715 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x490) $x408)) (unit-resolution @x407 @x196 $x490) $x408)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5557
(let (($x303 (>= ?x519 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5558
(let (($x304 (not $x303)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5559
(let ((@x26 (true-axiom true)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5560
(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)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5561
(let (($x41 (= ?x39 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5562
(let (($x169 (not $x41)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5563
(let ((?x42 (mod$ m$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5564
(let (($x43 (= ?x42 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5565
(let ((?x29 (+ n$ m$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5566
(let ((?x214 (mod ?x29 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5567
(let ((?x253 (* (- 1) ?x214)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5568
(let ((?x31 (mod$ ?x29 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5569
(let ((?x603 (+ n$ m$ ?x31 ?x35 ?x253 (* (- 1) (div ?x29 2)) ?x363 ?x601 (* (- 1) (div m$ 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5570
(let (($x604 (>= ?x603 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5571
(let (($x523 (>= ?x42 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5572
(let (($x609 (not $x523)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5573
(let (($x522 (<= ?x42 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5574
(let ((?x439 (mod m$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5575
(let ((?x466 (* (- 1) ?x439)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5576
(let ((?x467 (+ ?x42 ?x466)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5577
(let (($x482 (<= ?x467 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5578
(let (($x468 (= ?x467 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5579
(let (($x473 (or $x260 $x468)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5580
(let ((?x440 (ite $x209 (* (- 1) (mod (* (- 1) m$) ?x211)) ?x439)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5581
(let ((?x441 (ite $x208 m$ ?x440)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5582
(let (($x442 (= ?x42 ?x441)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5583
(let ((@x453 (rewrite (= (ite false (* (- 1) (mod (* (- 1) m$) (- 2))) ?x439) ?x439))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5584
(let (($x447 (= (* (- 1) (mod (* (- 1) m$) ?x211)) (* (- 1) (mod (* (- 1) m$) (- 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5585
(let ((@x229 (rewrite (= ?x211 (- 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5586
(let ((@x445 (monotonicity @x229 (= (mod (* (- 1) m$) ?x211) (mod (* (- 1) m$) (- 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5587
(let ((@x451 (monotonicity @x221 (monotonicity @x445 $x447) (= ?x440 (ite false (* (- 1) (mod (* (- 1) m$) (- 2))) ?x439)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5588
(let ((@x458 (monotonicity @x219 (trans @x451 @x453 (= ?x440 ?x439)) (= ?x441 (ite false m$ ?x439)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5589
(let ((@x465 (monotonicity (trans @x458 (rewrite (= (ite false m$ ?x439) ?x439)) (= ?x441 ?x439)) (= $x442 (= ?x42 ?x439)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5590
(let ((@x477 (monotonicity (trans @x465 (rewrite (= (= ?x42 ?x439) $x468)) (= $x442 $x468)) (= (or $x260 $x442) $x473))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5591
(let ((@x481 (mp ((_ quant-inst m$ 2) (or $x260 $x442)) (trans @x477 (rewrite (= $x473 $x473)) (= (or $x260 $x442) $x473)) $x473)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5592
(let ((@x277 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x468) $x482)) (unit-resolution @x481 @x196 $x468) $x482)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5593
(let ((@x386 (unit-resolution ((_ th-lemma arith) (or false (not (>= ?x439 2)))) @x26 (not (>= ?x439 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5594
(let ((@x384 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x522 (>= ?x439 2) (not $x482))) @x386 @x277 $x522)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5595
(let ((@x564 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x43 (not $x522) $x609)) (hypothesis (not $x43)) (or (not $x522) $x609))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5596
(let ((?x272 (div ?x29 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5597
(let ((?x288 (* (- 2) ?x272)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5598
(let ((?x289 (+ n$ m$ ?x253 ?x288)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5599
(let (($x294 (<= ?x289 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5600
(let (($x287 (= ?x289 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5601
(let ((@x617 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x287) $x294)) (unit-resolution ((_ th-lemma arith) (or false $x287)) @x26 $x287) $x294)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5602
(let (($x433 (<= ?x31 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5603
(let (($x32 (= ?x31 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5604
(let ((@x33 (asserted $x32)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5605
(let ((?x254 (+ ?x31 ?x253)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5606
(let (($x270 (<= ?x254 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5607
(let (($x255 (= ?x254 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5608
(let (($x261 (or $x260 $x255)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5609
(let ((?x215 (ite $x209 (* (- 1) (mod (* (- 1) ?x29) ?x211)) ?x214)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5610
(let ((?x216 (ite $x208 ?x29 ?x215)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5611
(let (($x217 (= ?x31 ?x216)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5612
(let (($x239 (= (ite false (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2))) ?x214) ?x214)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5613
(let (($x237 (= ?x215 (ite false (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2))) ?x214))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5614
(let (($x234 (= (* (- 1) (mod (* (- 1) ?x29) ?x211)) (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5615
(let ((@x232 (monotonicity (rewrite (= (* (- 1) ?x29) (+ ?x222 (* (- 1) m$)))) @x229 (= (mod (* (- 1) ?x29) ?x211) (mod (+ ?x222 (* (- 1) m$)) (- 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5616
(let ((@x242 (trans (monotonicity @x221 (monotonicity @x232 $x234) $x237) (rewrite $x239) (= ?x215 ?x214))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5617
(let ((@x249 (trans (monotonicity @x219 @x242 (= ?x216 (ite false ?x29 ?x214))) (rewrite (= (ite false ?x29 ?x214) ?x214)) (= ?x216 ?x214))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5618
(let ((@x259 (trans (monotonicity @x249 (= $x217 (= ?x31 ?x214))) (rewrite (= (= ?x31 ?x214) $x255)) (= $x217 $x255))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5619
(let ((@x268 (trans (monotonicity @x259 (= (or $x260 $x217) $x261)) (rewrite (= $x261 $x261)) (= (or $x260 $x217) $x261))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5620
(let ((@x269 (mp ((_ quant-inst (+ n$ m$) 2) (or $x260 $x217)) @x268 $x261)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5621
(let ((@x626 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x255) $x270)) (unit-resolution @x269 @x196 $x255) $x270)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5622
(let ((?x498 (+ m$ ?x466 (* (- 2) (div m$ 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5623
(let (($x496 (= ?x498 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5624
(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))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5625
(let ((?x397 (* (- 4) ?x381)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5626
(let ((?x398 (+ n$ ?x363 ?x397)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5627
(let (($x403 (<= ?x398 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5628
(let (($x396 (= ?x398 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5629
(let ((@x640 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x396) $x403)) (unit-resolution ((_ th-lemma arith) (or false $x396)) @x26 $x396) $x403)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5630
(let ((?x364 (+ ?x35 ?x363)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5631
(let (($x379 (<= ?x364 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5632
(let (($x365 (= ?x364 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5633
(let (($x370 (or $x260 $x365)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5634
(let ((?x330 (ite (<= 4 0) (* (- 1) (mod ?x222 (* (- 1) 4))) ?x329)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5635
(let ((?x331 (ite (= 4 0) n$ ?x330)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5636
(let (($x332 (= ?x35 ?x331)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5637
(let ((@x342 (monotonicity (rewrite (= (* (- 1) 4) (- 4))) (= (mod ?x222 (* (- 1) 4)) (mod ?x222 (- 4))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5638
(let ((@x345 (monotonicity @x342 (= (* (- 1) (mod ?x222 (* (- 1) 4))) (* (- 1) (mod ?x222 (- 4)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5639
(let ((@x348 (monotonicity (rewrite (= (<= 4 0) false)) @x345 (= ?x330 (ite false (* (- 1) (mod ?x222 (- 4))) ?x329)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5640
(let ((@x352 (trans @x348 (rewrite (= (ite false (* (- 1) (mod ?x222 (- 4))) ?x329) ?x329)) (= ?x330 ?x329))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5641
(let ((@x355 (monotonicity (rewrite (= (= 4 0) false)) @x352 (= ?x331 (ite false n$ ?x329)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5642
(let ((@x362 (monotonicity (trans @x355 (rewrite (= (ite false n$ ?x329) ?x329)) (= ?x331 ?x329)) (= $x332 (= ?x35 ?x329)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5643
(let ((@x374 (monotonicity (trans @x362 (rewrite (= (= ?x35 ?x329) $x365)) (= $x332 $x365)) (= (or $x260 $x332) $x370))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5644
(let ((@x378 (mp ((_ quant-inst n$ 4) (or $x260 $x332)) (trans @x374 (rewrite (= $x370 $x370)) (= (or $x260 $x332) $x370)) $x370)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5645
(let ((@x645 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x365) $x379)) (unit-resolution @x378 @x196 $x365) $x379)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5646
(let (($x435 (<= ?x35 3)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5647
(let (($x37 (= ?x35 3)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5648
(let ((@x38 (asserted $x37)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5649
(let ((@x655 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x468) (>= ?x467 0))) (unit-resolution @x481 @x196 $x468) (>= ?x467 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5650
(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)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5651
(let ((@x565 (unit-resolution (lemma @x656 (or (not $x604) $x523)) (unit-resolution @x564 @x384 $x609) (not $x604))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5652
(let (($x295 (>= ?x289 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5653
(let ((@x566 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x287) $x295)) (unit-resolution ((_ th-lemma arith) (or false $x287)) @x26 $x287) $x295)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5654
(let (($x434 (>= ?x31 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5655
(let (($x271 (>= ?x254 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5656
(let ((@x531 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x255) $x271)) (unit-resolution @x269 @x196 $x255) $x271)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5657
(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))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5658
(let ((@x549 (unit-resolution ((_ th-lemma arith) (or false (>= ?x439 0))) @x26 (>= ?x439 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5659
(let (($x404 (>= ?x398 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5660
(let ((@x552 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x396) $x404)) (unit-resolution ((_ th-lemma arith) (or false $x396)) @x26 $x396) $x404)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5661
(let (($x380 (>= ?x364 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5662
(let ((@x273 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x365) $x380)) (unit-resolution @x378 @x196 $x365) $x380)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5663
(let (($x436 (>= ?x35 3)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5664
(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)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5665
(let (($x171 (or $x169 (not $x43))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5666
(let ((@x177 (monotonicity (rewrite (= (and $x41 $x43) (not $x171))) (= (not (and $x41 $x43)) (not (not $x171))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5667
(let ((@x181 (trans @x177 (rewrite (= (not (not $x171)) $x171)) (= (not (and $x41 $x43)) $x171))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5668
(let ((@x182 (mp (asserted (not (and $x41 $x43))) @x181 $x171)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5669
(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))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5670
(let ((?x420 (* (- 2) ?x410)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5671
(let ((?x421 (+ n$ ?x420 ?x534)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5672
(let (($x426 (<= ?x421 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5673
(let (($x419 (= ?x421 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5674
(let ((@x737 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x419) $x426)) (unit-resolution ((_ th-lemma arith) (or false $x419)) @x26 $x419) $x426)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5675
(let (($x409 (>= ?x535 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5676
(let ((@x741 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x490) $x409)) (unit-resolution @x407 @x196 $x490) $x409)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5677
(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)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5678
(let (($x427 (>= ?x421 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5679
(let ((@x584 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x419) $x427)) (unit-resolution ((_ th-lemma arith) (or false $x419)) @x26 $x419) $x427)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5680
(let (($x542 (>= ?x519 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5681
((_ 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)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5682
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5683
f6a4c40290fd6742c0b08a1fe90b3664e90c2143 336 0
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5684
unsat
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5685
((set-logic <null>)
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5686
(proof
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5687
(let ((?x99 (mod$ l$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5688
(let ((?x96 (map$ uu$ xs$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5689
(let ((?x97 (eval_dioph$ ks$ ?x96)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5690
(let ((?x98 (mod$ ?x97 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5691
(let (($x100 (= ?x98 ?x99)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5692
(let ((?x93 (eval_dioph$ ks$ xs$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5693
(let (($x95 (= ?x93 l$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5694
(let ((?x110 (* (- 1) ?x97)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5695
(let ((?x111 (+ l$ ?x110)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5696
(let ((?x114 (divide$ ?x111 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5697
(let ((?x101 (map$ uua$ xs$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5698
(let ((?x102 (eval_dioph$ ks$ ?x101)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5699
(let (($x117 (= ?x102 ?x114)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5700
(let (($x282 (not $x117)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5701
(let (($x281 (not $x100)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5702
(let (($x283 (or $x281 $x282)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5703
(let ((?x744 (div ?x93 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5704
(let ((?x970 (* (- 1) ?x744)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5705
(let ((?x699 (mod ?x93 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5706
(let ((?x726 (* (- 1) ?x699)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5707
(let ((?x516 (mod l$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5708
(let ((?x543 (* (- 1) ?x516)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5709
(let (($x972 (>= (+ l$ ?x99 ?x543 (* (- 1) (div l$ 2)) ?x726 ?x970) 1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5710
(let ((?x369 (* (- 1) l$)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5711
(let ((?x693 (+ ?x93 ?x369)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5712
(let (($x695 (>= ?x693 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5713
(let (($x861 (not $x695)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5714
(let (($x694 (<= ?x693 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5715
(let ((?x686 (+ ?x102 (* (- 1) ?x114))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5716
(let (($x687 (<= ?x686 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5717
(let (($x284 (not $x283)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5718
(let ((@x466 (hypothesis $x284)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5719
(let ((@x856 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x282 $x687)) (unit-resolution (def-axiom (or $x283 $x117)) @x466 $x117) $x687)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5720
(let ((?x437 (+ l$ ?x110 (* (- 2) (div ?x111 2)) (* (- 1) (mod (+ l$ ?x97) 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5721
(let (($x443 (>= ?x437 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5722
(let (($x434 (= ?x437 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5723
(let ((@x26 (true-axiom true)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5724
(let ((@x793 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x434) $x443)) (unit-resolution ((_ th-lemma arith) (or false $x434)) @x26 $x434) $x443)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5725
(let ((?x501 (* (- 2) ?x102)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5726
(let ((?x502 (+ ?x93 ?x110 ?x501)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5727
(let (($x509 (<= ?x502 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5728
(let (($x503 (= ?x502 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5729
(let (($x304 (forall ((?v0 Int_list$) (?v1 Int_list$) )(!(let ((?x45 (eval_dioph$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5730
(let ((?x83 (+ ?x45 (* (- 1) (eval_dioph$ ?v0 (map$ uu$ ?v1))) (* (- 2) (eval_dioph$ ?v0 (map$ uua$ ?v1))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5731
(= ?x83 0))) :pattern ( (eval_dioph$ ?v0 (map$ uu$ ?v1)) ) :pattern ( (eval_dioph$ ?v0 (map$ uua$ ?v1)) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5732
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5733
(let (($x85 (forall ((?v0 Int_list$) (?v1 Int_list$) )(let ((?x45 (eval_dioph$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5734
(let ((?x83 (+ ?x45 (* (- 1) (eval_dioph$ ?v0 (map$ uu$ ?v1))) (* (- 2) (eval_dioph$ ?v0 (map$ uua$ ?v1))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5735
(= ?x83 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5736
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5737
(let ((?x45 (eval_dioph$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5738
(let ((?x83 (+ ?x45 (* (- 1) (eval_dioph$ ?1 (map$ uu$ ?0))) (* (- 2) (eval_dioph$ ?1 (map$ uua$ ?0))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5739
(let (($x79 (= ?x83 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5740
(let (($x58 (forall ((?v0 Int_list$) (?v1 Int_list$) )(let ((?x45 (eval_dioph$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5741
(let ((?x48 (eval_dioph$ ?v0 (map$ uu$ ?v1))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5742
(let ((?x56 (+ (* (eval_dioph$ ?v0 (map$ uua$ ?v1)) 2) ?x48)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5743
(= ?x56 ?x45)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5744
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5745
(let (($x74 (forall ((?v0 Int_list$) (?v1 Int_list$) )(let ((?x45 (eval_dioph$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5746
(let ((?x54 (eval_dioph$ ?v0 (map$ uua$ ?v1))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5747
(let ((?x60 (* 2 ?x54)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5748
(let ((?x48 (eval_dioph$ ?v0 (map$ uu$ ?v1))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5749
(let ((?x66 (+ ?x48 ?x60)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5750
(= ?x66 ?x45)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5751
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5752
(let ((?x54 (eval_dioph$ ?1 (map$ uua$ ?0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5753
(let ((?x60 (* 2 ?x54)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5754
(let ((?x48 (eval_dioph$ ?1 (map$ uu$ ?0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5755
(let ((?x66 (+ ?x48 ?x60)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5756
(let (($x71 (= ?x66 ?x45)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5757
(let ((@x65 (monotonicity (rewrite (= (* ?x54 2) ?x60)) (= (+ (* ?x54 2) ?x48) (+ ?x60 ?x48)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5758
(let ((@x70 (trans @x65 (rewrite (= (+ ?x60 ?x48) ?x66)) (= (+ (* ?x54 2) ?x48) ?x66))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5759
(let ((@x76 (quant-intro (monotonicity @x70 (= (= (+ (* ?x54 2) ?x48) ?x45) $x71)) (= $x58 $x74))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5760
(let ((@x89 (trans @x76 (quant-intro (rewrite (= $x71 $x79)) (= $x74 $x85)) (= $x58 $x85))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5761
(let ((@x270 (mp~ (mp (asserted $x58) @x89 $x85) (nnf-pos (refl (~ $x79 $x79)) (~ $x85 $x85)) $x85)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5762
(let ((@x309 (mp @x270 (quant-intro (refl (= $x79 $x79)) (= $x85 $x304)) $x304)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5763
(let (($x507 (or (not $x304) $x503)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5764
(let ((@x508 ((_ quant-inst ks$ xs$) $x507)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5765
(let ((@x800 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x503) $x509)) (unit-resolution @x508 @x309 $x503) $x509)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5766
(let ((?x396 (+ ?x114 (* (- 1) (div ?x111 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5767
(let (($x413 (<= ?x396 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5768
(let (($x397 (= ?x396 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5769
(let (($x311 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x145 (div ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5770
(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5771
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5772
(let ((?x160 (div ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5773
(let (($x175 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5774
(let ((?x182 (ite $x175 ?x160 ?x145)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5775
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5776
(let ((?x141 (divide$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5777
(= ?x141 (ite $x143 0 ?x182)))))))))) :pattern ( (divide$ ?v0 ?v1) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5778
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5779
(let (($x193 (forall ((?v0 Int) (?v1 Int) )(let ((?x145 (div ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5780
(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5781
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5782
(let ((?x160 (div ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5783
(let (($x175 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5784
(let ((?x182 (ite $x175 ?x160 ?x145)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5785
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5786
(let ((?x141 (divide$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5787
(= ?x141 (ite $x143 0 ?x182)))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5788
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5789
(let ((?x145 (div ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5790
(let ((?x157 (* (- 1) ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5791
(let ((?x154 (* (- 1) ?1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5792
(let ((?x160 (div ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5793
(let (($x175 (<= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5794
(let ((?x182 (ite $x175 ?x160 ?x145)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5795
(let (($x143 (= ?0 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5796
(let ((?x141 (divide$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5797
(let (($x190 (= ?x141 (ite $x143 0 ?x182))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5798
(let (($x152 (forall ((?v0 Int) (?v1 Int) )(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5799
(let ((?x150 (ite $x143 0 (ite (< 0 ?v1) (div ?v0 ?v1) (div (- ?v0) (- ?v1))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5800
(let ((?x141 (divide$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5801
(= ?x141 ?x150)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5802
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5803
(let (($x172 (forall ((?v0 Int) (?v1 Int) )(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5804
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5805
(let ((?x160 (div ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5806
(let ((?x145 (div ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5807
(let (($x144 (< 0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5808
(let ((?x163 (ite $x144 ?x145 ?x160)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5809
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5810
(let ((?x166 (ite $x143 0 ?x163)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5811
(let ((?x141 (divide$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5812
(= ?x141 ?x166)))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5813
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5814
(let (($x144 (< 0 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5815
(let ((?x163 (ite $x144 ?x145 ?x160)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5816
(let ((?x166 (ite $x143 0 ?x163)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5817
(let ((@x181 (monotonicity (rewrite (= $x144 (not $x175))) (= ?x163 (ite (not $x175) ?x145 ?x160)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5818
(let ((@x186 (trans @x181 (rewrite (= (ite (not $x175) ?x145 ?x160) ?x182)) (= ?x163 ?x182))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5819
(let ((@x192 (monotonicity (monotonicity @x186 (= ?x166 (ite $x143 0 ?x182))) (= (= ?x141 ?x166) $x190))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5820
(let (($x169 (= ?x141 ?x166)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5821
(let (($x170 (= (= ?x141 (ite $x143 0 (ite $x144 ?x145 (div (- ?1) (- ?0))))) $x169)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5822
(let ((@x162 (monotonicity (rewrite (= (- ?1) ?x154)) (rewrite (= (- ?0) ?x157)) (= (div (- ?1) (- ?0)) ?x160))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5823
(let ((@x168 (monotonicity (monotonicity @x162 (= (ite $x144 ?x145 (div (- ?1) (- ?0))) ?x163)) (= (ite $x143 0 (ite $x144 ?x145 (div (- ?1) (- ?0)))) ?x166))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5824
(let ((@x197 (trans (quant-intro (monotonicity @x168 $x170) (= $x152 $x172)) (quant-intro @x192 (= $x172 $x193)) (= $x152 $x193))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5825
(let ((@x275 (mp~ (mp (asserted $x152) @x197 $x193) (nnf-pos (refl (~ $x190 $x190)) (~ $x193 $x193)) $x193)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5826
(let ((@x316 (mp @x275 (quant-intro (refl (= $x190 $x190)) (= $x193 $x311)) $x311)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5827
(let (($x403 (or (not $x311) $x397)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5828
(let ((?x361 (div ?x111 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5829
(let (($x357 (<= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5830
(let ((?x362 (ite $x357 (div (* (- 1) ?x111) (* (- 1) 2)) ?x361)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5831
(let (($x356 (= 2 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5832
(let ((?x363 (ite $x356 0 ?x362)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5833
(let (($x364 (= ?x114 ?x363)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5834
(let ((@x374 (rewrite (= (* (- 1) 2) (- 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5835
(let ((@x377 (monotonicity (rewrite (= (* (- 1) ?x111) (+ ?x369 ?x97))) @x374 (= (div (* (- 1) ?x111) (* (- 1) 2)) (div (+ ?x369 ?x97) (- 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5836
(let ((@x368 (rewrite (= $x357 false))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5837
(let ((@x380 (monotonicity @x368 @x377 (= ?x362 (ite false (div (+ ?x369 ?x97) (- 2)) ?x361)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5838
(let ((@x384 (trans @x380 (rewrite (= (ite false (div (+ ?x369 ?x97) (- 2)) ?x361) ?x361)) (= ?x362 ?x361))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5839
(let ((@x366 (rewrite (= $x356 false))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5840
(let ((@x391 (trans (monotonicity @x366 @x384 (= ?x363 (ite false 0 ?x361))) (rewrite (= (ite false 0 ?x361) ?x361)) (= ?x363 ?x361))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5841
(let ((@x401 (trans (monotonicity @x391 (= $x364 (= ?x114 ?x361))) (rewrite (= (= ?x114 ?x361) $x397)) (= $x364 $x397))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5842
(let ((@x410 (trans (monotonicity @x401 (= (or (not $x311) $x364) $x403)) (rewrite (= $x403 $x403)) (= (or (not $x311) $x364) $x403))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5843
(let ((@x802 (unit-resolution (mp ((_ quant-inst (+ l$ ?x110) 2) (or (not $x311) $x364)) @x410 $x403) @x316 $x397)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5844
(let ((?x425 (mod (+ l$ ?x97) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5845
(let (($x465 (>= ?x425 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5846
(let ((@x810 ((_ th-lemma arith farkas 1 -2 -2 -1 1 1) (unit-resolution ((_ th-lemma arith) (or false $x465)) @x26 $x465) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x397) $x413)) @x802 $x413) (hypothesis $x687) @x800 (hypothesis (not $x694)) @x793 false)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5847
(let (($x134 (not $x95)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5848
(let (($x290 (= $x95 $x283)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5849
(let ((@x289 (monotonicity (rewrite (= (and $x100 $x117) $x284)) (= (= $x134 (and $x100 $x117)) (= $x134 $x284)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5850
(let ((@x294 (trans @x289 (rewrite (= (= $x134 $x284) $x290)) (= (= $x134 (and $x100 $x117)) $x290))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5851
(let (($x120 (and $x100 $x117)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5852
(let (($x135 (= $x134 $x120)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5853
(let (($x107 (= $x95 (and $x100 (= ?x102 (divide$ (- l$ ?x97) 2))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5854
(let (($x108 (not $x107)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5855
(let ((@x116 (monotonicity (rewrite (= (- l$ ?x97) ?x111)) (= (divide$ (- l$ ?x97) 2) ?x114))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5856
(let ((@x122 (monotonicity (monotonicity @x116 (= (= ?x102 (divide$ (- l$ ?x97) 2)) $x117)) (= (and $x100 (= ?x102 (divide$ (- l$ ?x97) 2))) $x120))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5857
(let ((@x130 (trans (monotonicity @x122 (= $x107 (= $x95 $x120))) (rewrite (= (= $x95 $x120) (= $x95 $x120))) (= $x107 (= $x95 $x120)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5858
(let ((@x139 (trans (monotonicity @x130 (= $x108 (not (= $x95 $x120)))) (rewrite (= (not (= $x95 $x120)) $x135)) (= $x108 $x135))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5859
(let ((@x295 (mp (mp (asserted $x108) @x139 $x135) @x294 $x290)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5860
(let ((@x344 (unit-resolution (def-axiom (or $x134 $x283 (not $x290))) @x295 (or $x134 $x283))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5861
(let ((@x898 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x95 (not $x694) $x861)) (unit-resolution @x344 @x466 $x134) (or (not $x694) $x861))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5862
(let ((@x899 (unit-resolution @x898 (unit-resolution (lemma @x810 (or $x694 (not $x687))) @x856 $x694) $x861)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5863
(let ((?x544 (+ ?x99 ?x543)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5864
(let (($x561 (>= ?x544 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5865
(let (($x545 (= ?x544 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5866
(let (($x318 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x200 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5867
(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5868
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5869
(let ((?x208 (mod ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5870
(let ((?x214 (* (- 1) ?x208)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5871
(let (($x175 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5872
(let ((?x234 (ite $x175 ?x214 ?x200)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5873
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5874
(let ((?x239 (ite $x143 ?v0 ?x234)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5875
(let ((?x199 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5876
(= ?x199 ?x239))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5877
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5878
(let (($x245 (forall ((?v0 Int) (?v1 Int) )(let ((?x200 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5879
(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5880
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5881
(let ((?x208 (mod ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5882
(let ((?x214 (* (- 1) ?x208)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5883
(let (($x175 (<= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5884
(let ((?x234 (ite $x175 ?x214 ?x200)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5885
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5886
(let ((?x239 (ite $x143 ?v0 ?x234)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5887
(let ((?x199 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5888
(= ?x199 ?x239))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5889
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5890
(let ((?x200 (mod ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5891
(let ((?x208 (mod ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5892
(let ((?x214 (* (- 1) ?x208)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5893
(let ((?x234 (ite $x175 ?x214 ?x200)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5894
(let ((?x239 (ite $x143 ?1 ?x234)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5895
(let ((?x199 (mod$ ?1 ?0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5896
(let (($x242 (= ?x199 ?x239)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5897
(let (($x206 (forall ((?v0 Int) (?v1 Int) )(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5898
(let ((?x204 (ite $x143 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5899
(let ((?x199 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5900
(= ?x199 ?x204)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5901
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5902
(let (($x228 (forall ((?v0 Int) (?v1 Int) )(let ((?x157 (* (- 1) ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5903
(let ((?x154 (* (- 1) ?v0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5904
(let ((?x208 (mod ?x154 ?x157)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5905
(let ((?x214 (* (- 1) ?x208)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5906
(let ((?x200 (mod ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5907
(let (($x144 (< 0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5908
(let ((?x219 (ite $x144 ?x200 ?x214)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5909
(let (($x143 (= ?v1 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5910
(let ((?x222 (ite $x143 ?v0 ?x219)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5911
(let ((?x199 (mod$ ?v0 ?v1)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5912
(= ?x199 ?x222))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5913
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5914
(let ((@x233 (monotonicity (rewrite (= $x144 (not $x175))) (= (ite $x144 ?x200 ?x214) (ite (not $x175) ?x200 ?x214)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5915
(let ((@x238 (trans @x233 (rewrite (= (ite (not $x175) ?x200 ?x214) ?x234)) (= (ite $x144 ?x200 ?x214) ?x234))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5916
(let ((@x244 (monotonicity (monotonicity @x238 (= (ite $x143 ?1 (ite $x144 ?x200 ?x214)) ?x239)) (= (= ?x199 (ite $x143 ?1 (ite $x144 ?x200 ?x214))) $x242))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5917
(let ((?x219 (ite $x144 ?x200 ?x214)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5918
(let ((?x222 (ite $x143 ?1 ?x219)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5919
(let (($x225 (= ?x199 ?x222)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5920
(let (($x226 (= (= ?x199 (ite $x143 ?1 (ite $x144 ?x200 (- (mod (- ?1) (- ?0)))))) $x225)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5921
(let ((@x210 (monotonicity (rewrite (= (- ?1) ?x154)) (rewrite (= (- ?0) ?x157)) (= (mod (- ?1) (- ?0)) ?x208))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5922
(let ((@x218 (trans (monotonicity @x210 (= (- (mod (- ?1) (- ?0))) (- ?x208))) (rewrite (= (- ?x208) ?x214)) (= (- (mod (- ?1) (- ?0))) ?x214))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5923
(let ((@x221 (monotonicity @x218 (= (ite $x144 ?x200 (- (mod (- ?1) (- ?0)))) ?x219))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5924
(let ((@x224 (monotonicity @x221 (= (ite $x143 ?1 (ite $x144 ?x200 (- (mod (- ?1) (- ?0))))) ?x222))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5925
(let ((@x249 (trans (quant-intro (monotonicity @x224 $x226) (= $x206 $x228)) (quant-intro @x244 (= $x228 $x245)) (= $x206 $x245))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5926
(let ((@x280 (mp~ (mp (asserted $x206) @x249 $x245) (nnf-pos (refl (~ $x242 $x242)) (~ $x245 $x245)) $x245)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5927
(let ((@x323 (mp @x280 (quant-intro (refl (= $x242 $x242)) (= $x245 $x318)) $x318)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5928
(let (($x550 (not $x318)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5929
(let (($x551 (or $x550 $x545)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5930
(let ((?x359 (* (- 1) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5931
(let ((?x511 (mod ?x369 ?x359)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5932
(let ((?x512 (* (- 1) ?x511)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5933
(let ((?x517 (ite $x357 ?x512 ?x516)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5934
(let ((?x518 (ite $x356 l$ ?x517)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5935
(let (($x519 (= ?x99 ?x518)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5936
(let ((@x525 (monotonicity (monotonicity @x374 (= ?x511 (mod ?x369 (- 2)))) (= ?x512 (* (- 1) (mod ?x369 (- 2)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5937
(let ((@x528 (monotonicity @x368 @x525 (= ?x517 (ite false (* (- 1) (mod ?x369 (- 2))) ?x516)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5938
(let ((@x532 (trans @x528 (rewrite (= (ite false (* (- 1) (mod ?x369 (- 2))) ?x516) ?x516)) (= ?x517 ?x516))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5939
(let ((@x539 (trans (monotonicity @x366 @x532 (= ?x518 (ite false l$ ?x516))) (rewrite (= (ite false l$ ?x516) ?x516)) (= ?x518 ?x516))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5940
(let ((@x549 (trans (monotonicity @x539 (= $x519 (= ?x99 ?x516))) (rewrite (= (= ?x99 ?x516) $x545)) (= $x519 $x545))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5941
(let ((@x558 (trans (monotonicity @x549 (= (or $x550 $x519) $x551)) (rewrite (= $x551 $x551)) (= (or $x550 $x519) $x551))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5942
(let ((@x559 (mp ((_ quant-inst l$ 2) (or $x550 $x519)) @x558 $x551)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5943
(let ((@x902 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x545) $x561)) (unit-resolution @x559 @x323 $x545) $x561)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5944
(let ((?x757 (* (- 2) ?x744)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5945
(let ((?x758 (+ ?x93 ?x726 ?x757)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5946
(let (($x764 (>= ?x758 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5947
(let (($x756 (= ?x758 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5948
(let ((@x872 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x756) $x764)) (unit-resolution ((_ th-lemma arith) (or false $x756)) @x26 $x756) $x764)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5949
(let ((?x562 (div l$ 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5950
(let ((?x575 (* (- 2) ?x562)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5951
(let ((?x576 (+ l$ ?x543 ?x575)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5952
(let (($x582 (>= ?x576 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5953
(let (($x574 (= ?x576 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5954
(let ((@x880 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x574) $x582)) (unit-resolution ((_ th-lemma arith) (or false $x574)) @x26 $x574) $x582)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5955
(let ((?x504 (mod$ ?x93 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5956
(let ((?x727 (+ ?x504 ?x726)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5957
(let (($x728 (= ?x727 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5958
(let (($x733 (or $x550 $x728)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5959
(let ((?x696 (* (- 1) ?x93)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5960
(let ((?x697 (mod ?x696 ?x359)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5961
(let ((?x698 (* (- 1) ?x697)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5962
(let ((?x700 (ite $x357 ?x698 ?x699)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5963
(let ((?x701 (ite $x356 ?x93 ?x700)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5964
(let (($x702 (= ?x504 ?x701)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5965
(let ((@x708 (monotonicity (monotonicity @x374 (= ?x697 (mod ?x696 (- 2)))) (= ?x698 (* (- 1) (mod ?x696 (- 2)))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5966
(let ((@x711 (monotonicity @x368 @x708 (= ?x700 (ite false (* (- 1) (mod ?x696 (- 2))) ?x699)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5967
(let ((@x715 (trans @x711 (rewrite (= (ite false (* (- 1) (mod ?x696 (- 2))) ?x699) ?x699)) (= ?x700 ?x699))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5968
(let ((@x722 (trans (monotonicity @x366 @x715 (= ?x701 (ite false ?x93 ?x699))) (rewrite (= (ite false ?x93 ?x699) ?x699)) (= ?x701 ?x699))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5969
(let ((@x732 (trans (monotonicity @x722 (= $x702 (= ?x504 ?x699))) (rewrite (= (= ?x504 ?x699) $x728)) (= $x702 $x728))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5970
(let ((@x740 (trans (monotonicity @x732 (= (or $x550 $x702) $x733)) (rewrite (= $x733 $x733)) (= (or $x550 $x702) $x733))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5971
(let ((@x427 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x728) (>= ?x727 0))) (unit-resolution (mp ((_ quant-inst (eval_dioph$ ks$ xs$) 2) (or $x550 $x702)) @x740 $x733) @x323 $x728) (>= ?x727 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5972
(let ((?x783 (* (- 1) ?x504)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5973
(let ((?x784 (+ ?x99 ?x783)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5974
(let (($x786 (>= ?x784 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5975
(let (($x782 (= ?x99 ?x504)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5976
(let (($x821 (= ?x98 ?x504)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5977
(let (($x505 (= ?x504 ?x98)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5978
(let (($x297 (forall ((?v0 Int_list$) (?v1 Int_list$) )(!(= (mod$ (eval_dioph$ ?v0 ?v1) 2) (mod$ (eval_dioph$ ?v0 (map$ uu$ ?v1)) 2)) :pattern ( (eval_dioph$ ?v0 (map$ uu$ ?v1)) )))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5979
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5980
(let (($x51 (forall ((?v0 Int_list$) (?v1 Int_list$) )(= (mod$ (eval_dioph$ ?v0 ?v1) 2) (mod$ (eval_dioph$ ?v0 (map$ uu$ ?v1)) 2)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5981
))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5982
(let (($x50 (= (mod$ ?x45 2) (mod$ ?x48 2))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5983
(let ((@x265 (mp~ (asserted $x51) (nnf-pos (refl (~ $x50 $x50)) (~ $x51 $x51)) $x51)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5984
(let ((@x302 (mp @x265 (quant-intro (refl (= $x50 $x50)) (= $x51 $x297)) $x297)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5985
(let (($x514 (or (not $x297) $x505)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5986
(let ((@x515 ((_ quant-inst ks$ xs$) $x514)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5987
(let ((@x824 (symm (unit-resolution (def-axiom (or $x283 $x100)) @x466 $x100) (= ?x99 ?x98))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5988
(let ((@x939 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x782) $x786)) (trans @x824 (symm (unit-resolution @x515 @x302 $x505) $x821) $x782) $x786)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5989
(let (($x785 (<= ?x784 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5990
(let ((@x887 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x782) $x785)) (trans @x824 (symm (unit-resolution @x515 @x302 $x505) $x821) $x782) $x785)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5991
(let (($x688 (>= ?x686 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5992
(let ((@x855 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x282 $x688)) (unit-resolution (def-axiom (or $x283 $x117)) @x466 $x117) $x688)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5993
(let ((@x979 (unit-resolution ((_ th-lemma arith) (or false (not (>= ?x425 2)))) @x26 (not (>= ?x425 2)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5994
(let (($x560 (<= ?x544 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5995
(let ((@x461 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x545) $x560)) (unit-resolution @x559 @x323 $x545) $x560)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5996
(let (($x763 (<= ?x758 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5997
(let ((@x658 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x756) $x763)) (unit-resolution ((_ th-lemma arith) (or false $x756)) @x26 $x756) $x763)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5998
(let (($x581 (<= ?x576 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  5999
(let ((@x986 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x574) $x581)) (unit-resolution ((_ th-lemma arith) (or false $x574)) @x26 $x574) $x581)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6000
(let ((@x989 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x728) (<= ?x727 0))) (unit-resolution (mp ((_ quant-inst (eval_dioph$ ks$ xs$) 2) (or $x550 $x702)) @x740 $x733) @x323 $x728) (<= ?x727 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6001
(let (($x510 (>= ?x502 0)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6002
(let ((@x994 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x503) $x510)) (unit-resolution @x508 @x309 $x503) $x510)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6003
(let ((@x998 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x397) (>= ?x396 0))) @x802 (>= ?x396 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6004
(let ((@x1001 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x434) (<= ?x437 0))) (unit-resolution ((_ th-lemma arith) (or false $x434)) @x26 $x434) (<= ?x437 0))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6005
(let ((@x1002 ((_ th-lemma arith farkas 1 -2 -2 -1 -2 1 1 1 1 1 1) @x1001 @x998 (hypothesis $x688) @x994 (hypothesis $x972) (hypothesis $x785) @x989 @x986 @x658 @x461 @x979 false)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6006
(let ((@x474 (unit-resolution (lemma @x1002 (or (not $x972) (not $x688) (not $x785))) @x855 @x887 (not $x972))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6007
(let ((@x941 (unit-resolution @x474 ((_ th-lemma arith) @x939 @x427 @x880 @x872 @x902 @x899 $x972) false)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6008
(let ((@x942 (lemma @x941 $x283)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6009
(let ((@x340 (unit-resolution (def-axiom (or $x95 $x284 (not $x290))) @x295 (or $x95 $x284))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6010
(let ((@x679 (unit-resolution @x340 @x942 $x95)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6011
(let ((@x889 (trans (symm (unit-resolution @x515 @x302 $x505) $x821) (monotonicity @x679 (= ?x504 ?x99)) $x100)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6012
(let (($x811 (not $x687)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6013
(let ((@x845 ((_ th-lemma arith assign-bounds 1 -1/2 -1/2 1/2 -1/2) (or $x688 (not $x413) (not $x465) (not $x443) (not $x509) $x861))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6014
(let ((@x892 (unit-resolution @x845 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x397) $x413)) @x802 $x413) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x134 $x695)) @x679 $x695) @x793 (unit-resolution ((_ th-lemma arith) (or false $x465)) @x26 $x465) @x800 $x688)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6015
(let ((@x935 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x117 $x811 (not $x688))) (hypothesis $x282) (or $x811 (not $x688)))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6016
(let ((@x955 ((_ th-lemma arith farkas -2 -2 1 -1 1 1) (unit-resolution @x935 @x892 $x811) @x998 @x1001 @x994 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x134 $x694)) @x679 $x694) @x979 false)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6017
(let ((@x472 (unit-resolution (unit-resolution (def-axiom (or $x284 $x281 $x282)) @x942 $x283) (lemma @x955 $x117) $x281)))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6018
(unit-resolution @x472 @x889 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
d46de31a50c4 separate class for division operator, with particular syntax added in more specific classes
haftmann
parents: 59964
diff changeset
  6019
59964
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  6020
785615f585a02b3e6ed8608ecc9660ba5c4025e2 2 0
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  6021
sat
5c95c94952df updated certificates to latest Z3 (and took out one problem that no longer works)
blanchet
parents: 59046
diff changeset
  6022
(error "line 9 column 10: proof is not available")
61783
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6023
c4e20de399740e8f0c9a87abad030298d74bc47b 12 0
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6024
unsat
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6025
((set-logic AUFLIA)
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6026
(proof
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6027
(let ((?x31 (p$ true)))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6028
(let (($x29 (< 2 3)))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6029
(let ((?x30 (p$ $x29)))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6030
(let (($x32 (= ?x30 ?x31)))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6031
(let ((@x42 (monotonicity (monotonicity (rewrite (= $x29 true)) $x32) (= $x32 (= ?x31 ?x31)))))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6032
(let ((@x49 (monotonicity (trans @x42 (rewrite (= (= ?x31 ?x31) true)) (= $x32 true)) (= (not $x32) (not true)))))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6033
(let ((@x53 (trans @x49 (rewrite (= (not true) false)) (= (not $x32) false))))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6034
(mp (asserted (not $x32)) @x53 false))))))))))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6035
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6036
23f5eb3b530a4577da2f8947333286ff70ed557f 11 0
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6037
unsat
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6038
((set-logic AUFLIA)
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6039
(proof
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6040
(let (($x29 (exists ((?v0 A$) )(! (g$ ?v0) :qid k!7))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6041
))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6042
(let (($x30 (f$ $x29)))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6043
(let (($x31 (=> $x30 true)))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6044
(let (($x32 (not $x31)))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6045
(let ((@x42 (trans (monotonicity (rewrite (= $x31 true)) (= $x32 (not true))) (rewrite (= (not true) false)) (= $x32 false))))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6046
(mp (asserted $x32) @x42 false))))))))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6047
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6048
60f1b32e9c6a2229b64c85dcfb0bde9c2bd5433a 11 0
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6049
unsat
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6050
((set-logic AUFLIA)
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6051
(proof
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6052
(let (($x29 (forall ((?v0 A$) )(! (g$ ?v0) :qid k!7))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6053
))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6054
(let (($x30 (f$ $x29)))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6055
(let (($x31 (=> $x30 true)))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6056
(let (($x32 (not $x31)))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6057
(let ((@x42 (trans (monotonicity (rewrite (= $x31 true)) (= $x32 (not true))) (rewrite (= (not true) false)) (= $x32 false))))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6058
(mp (asserted $x32) @x42 false))))))))
7f36a8bfa822 updated SMT certificates
blanchet
parents: 60352
diff changeset
  6059