src/HOL/SMT_Examples/SMT_Examples.certs2
author blanchet
Thu, 26 Jun 2014 13:35:21 +0200
changeset 57365 d2090a01e920
parent 57204 7c36ce8e45f6
child 57696 fb71c6f100f8
permissions -rw-r--r--
tuning
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
     1
3aa17d1c77bc1a92bca05df291d11d81c645a931 6 0
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
     2
unsat
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
     3
((set-logic AUFLIA)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
     4
(proof
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
     5
(let ((@x30 (rewrite (= (not true) false))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
     6
(mp (asserted (not true)) @x30 false))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   152
(let (($x480 (forall ((?v0 A$) (?v1 A$) )(!(let ((?x30 (symm_f$ ?v1 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   153
(let ((?x29 (symm_f$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   154
(= ?x29 ?x30))) :pattern ( (symm_f$ ?v0 ?v1) ) :pattern ( (symm_f$ ?v1 ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   155
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   156
(let (($x32 (forall ((?v0 A$) (?v1 A$) )(let ((?x30 (symm_f$ ?v1 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   157
(let ((?x29 (symm_f$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   158
(= ?x29 ?x30))))
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)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   819
(let (($x41 (forall ((?v0 Int) )(let (($x32 (forall ((?v1 Int) )(let (($x28 (p$ ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   820
(or (p$ ?v0) $x28)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   821
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   822
(or (not (p$ ?v0)) $x32)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   823
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   824
(let (($x44 (not $x41)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   825
(let (($x52 (forall ((?v1 Int) )(let (($x28 (p$ ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   826
(let (($x48 (p$ ?v0!0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   827
(or $x48 $x28))))
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))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   830
(let (($x34 (forall ((?v0 Int) )(let (($x32 (forall ((?v1 Int) )(let (($x28 (p$ ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   831
(or (p$ ?v0) $x28)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   832
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   833
(let (($x28 (p$ ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   834
(=> $x28 $x32))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   835
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   836
(let (($x35 (not $x34)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   837
(let (($x32 (forall ((?v1 Int) )(let (($x28 (p$ ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
   838
(or (p$ ?0) $x28)))
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
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   851
(let (($x517 (forall ((?v0 A$) )(!(let (($x40 (p$ x$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   852
(not $x40)) :pattern ( (p$ x$ ?v0) )))
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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   856
(let (($x510 (forall ((?v0 Bool) (?v1 A$) )(!(let (($x29 (p$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   857
(= $x29 ?v0)) :pattern ( (p$ ?v0 ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   858
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   859
(let (($x36 (forall ((?v0 Bool) (?v1 A$) )(let (($x29 (p$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   860
(= $x29 ?v0)))
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))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   864
(let (($x31 (forall ((?v0 Bool) (?v1 A$) )(let (($x29 (p$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   865
(= $x29 ?v0)))
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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   875
(let (($x69 (forall ((?v0 A$) )(let (($x40 (p$ x$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   876
(not $x40)))
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)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   879
(let (($x42 (exists ((?v0 A$) )(p$ x$ ?v0))
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
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   905
(let (($x584 (forall ((?v0 A$) )(!(let (($x52 (p$ x$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   906
(not $x52)) :pattern ( (p$ x$ ?v0) )))
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$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   910
(let (($x561 (forall ((?v0 Bool) (?v1 A$) )(!(let (($x29 (p$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   911
(= $x29 ?v0)) :pattern ( (p$ ?v0 ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   912
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   913
(let (($x36 (forall ((?v0 Bool) (?v1 A$) )(let (($x29 (p$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   914
(= $x29 ?v0)))
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))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   918
(let (($x31 (forall ((?v0 Bool) (?v1 A$) )(let (($x29 (p$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   919
(= $x29 ?v0)))
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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   929
(let (($x120 (forall ((?v0 A$) )(let (($x52 (p$ x$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   930
(not $x52)))
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)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   933
(let (($x54 (exists ((?v0 A$) )(p$ x$ ?v0))
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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   962
(let (($x486 (forall ((?v0 A$) )(!(let (($x30 (p$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   963
(not $x30)) :pattern ( (p$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   964
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   965
(let (($x34 (forall ((?v0 A$) )(let (($x30 (p$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   966
(not $x30)))
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))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   969
(let (($x31 (exists ((?v0 A$) )(p$ ?v0))
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
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
   981
1b3bdde0d609ebf7ad7472d1510134c9c367d283 7 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   982
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   983
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   984
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   985
(let ((@x35 (monotonicity (rewrite (= (= 3 3) true)) (= (not (= 3 3)) (not true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   986
(let ((@x39 (trans @x35 (rewrite (= (not true) false)) (= (not (= 3 3)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
   987
(mp (asserted (not (= 3 3))) @x39 false)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
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
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1036
2d63144daf211d89368e355b9b23a3b5118b7ba9 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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1062
(let ((@x155 (hypothesis $x95)))
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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1091
(let ((@x169 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x139) (<= (+ y$ ?x114) 0.0))) (unit-resolution (def-axiom (or $x96 $x139)) @x155 $x139) (<= (+ y$ ?x114) 0.0))))
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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1096
(let ((@x159 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x71 $x84 $x96)) (hypothesis $x83) @x155 $x71)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1097
(let ((@x128 (def-axiom (or $x72 $x129))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1098
(let ((@x163 ((_ th-lemma arith triangle-eq) (or (not $x129) $x154))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1099
(let ((@x173 ((_ th-lemma arith triangle-eq) (or (not $x133) $x149))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1100
(let ((@x174 (unit-resolution @x173 (unit-resolution (def-axiom (or $x84 $x133)) (hypothesis $x83) $x133) $x149)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1101
(let ((@x175 ((_ th-lemma arith farkas -1 -1 1 1) @x174 @x169 @x126 (unit-resolution @x163 (unit-resolution @x128 @x159 $x129) $x154) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1102
(let ((@x138 (def-axiom (or $x83 $x134))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1103
(let ((@x184 (unit-resolution @x138 (unit-resolution (lemma @x175 (or $x84 $x96)) @x155 $x84) $x134)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1104
(let ((@x189 ((_ th-lemma arith farkas 2 -1 -1 1 1) @x155 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x134) $x153)) @x184 $x153) @x169 @x126 (hypothesis $x181) false)))
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))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1107
(let ((@x201 (unit-resolution @x199 (unit-resolution (lemma @x189 (or $x190 $x96)) @x155 $x190) (not $x130))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1108
(let ((@x132 (def-axiom (or $x71 $x130))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1109
(let ((@x204 (unit-resolution @x163 (unit-resolution @x128 (unit-resolution @x132 @x201 $x71) $x129) $x154)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1110
(let ((@x205 ((_ th-lemma arith farkas 2 1 1 1 1) (unit-resolution (lemma @x175 (or $x84 $x96)) @x155 $x84) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x134) $x153)) @x184 $x153) @x169 @x126 @x204 false)))
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))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1114
(let ((@x216 (unit-resolution @x163 (unit-resolution @x128 (hypothesis $x71) $x129) $x154)))
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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1119
(let ((@x222 ((_ th-lemma arith farkas 2 1 1 1 1) @x206 @x221 @x126 @x216 (unit-resolution @x173 (unit-resolution @x136 @x212 $x133) $x149) false)))
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)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
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 @x173 @x234 $x149) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
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
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1190
dfbbe6f3879b3c49e6d5f7ecff4f8f81ed746bd4 19 0
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1191
unsat
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1192
((set-logic AUFLIRA)
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1193
(proof
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1194
(let ((?x32 (* 7.0 a$)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1195
(let ((?x29 (* 3.0 x$)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1196
(let ((?x33 (+ ?x29 ?x32)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1197
(let (($x43 (>= ?x33 4.0)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1198
(let (($x41 (not $x43)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1199
(let ((@x40 (mp (asserted (< ?x33 4.0)) (rewrite (= (< ?x33 4.0) $x41)) $x41)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1200
(let ((?x38 (* 2.0 x$)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1201
(let (($x48 (<= ?x38 3.0)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1202
(let (($x49 (not $x48)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1203
(let ((@x52 (mp (asserted (< 3.0 ?x38)) (rewrite (= (< 3.0 ?x38) $x49)) $x49)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1204
(let (($x58 (>= a$ 0.0)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1205
(let ((@x62 (monotonicity (rewrite (= (< a$ 0.0) (not $x58))) (= (not (< a$ 0.0)) (not (not $x58))))))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1206
(let ((@x66 (trans @x62 (rewrite (= (not (not $x58)) $x58)) (= (not (< a$ 0.0)) $x58))))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1207
(let ((@x67 (mp (asserted (not (< a$ 0.0))) @x66 $x58)))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1208
((_ th-lemma arith farkas 7 3/2 1) @x67 @x52 @x40 false)))))))))))))))))
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1209
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1210
b9f61649fae66ac195bf2593181f9d76c958bfe2 22 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1211
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1212
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1213
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1214
(let (($x38 (not false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1215
(let (($x34 (<= 0 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1216
(let (($x35 (not $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1217
(let (($x36 (or $x35 $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1218
(let ((?x29 (- 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1219
(let ((?x31 (* ?x29 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1220
(let ((?x32 (+ y$ ?x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1221
(let (($x33 (<= 0 ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1222
(let (($x37 (or $x33 $x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1223
(let (($x39 (= $x37 $x38)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1224
(let (($x40 (not $x39)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1225
(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
  1226
(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
  1227
(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
  1228
(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
  1229
(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
  1230
(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
  1231
(mp (asserted $x40) @x78 false))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
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
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  1393
fbc59441c65d9a844da44405d06d138b55c5d187 933 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  1394
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  1395
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  1396
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1397
(let (($x91 (= x1$ x10$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1398
(let (($x582 (not $x91)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1399
(let (($x92 (= x2$ x11$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1400
(let ((?x655 (* (- 1) x11$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1401
(let ((?x656 (+ x2$ ?x655)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1402
(let (($x657 (<= ?x656 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1403
(let ((?x235 (* (- 1) x10$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1404
(let (($x313 (>= x10$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1405
(let ((?x320 (ite $x313 x10$ ?x235)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1406
(let ((?x331 (* (- 1) ?x320)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1407
(let ((?x662 (+ x10$ ?x331)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1408
(let (($x1382 (<= ?x662 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1409
(let (($x1530 (not $x1382)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1410
(let ((?x116 (* (- 1) x3$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1411
(let (($x463 (>= x3$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1412
(let ((?x470 (ite $x463 x3$ ?x116)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1413
(let ((?x481 (* (- 1) ?x470)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1414
(let ((?x680 (+ x3$ ?x481)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1415
(let (($x672 (>= ?x680 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1416
(let (($x588 (= x3$ ?x470)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1417
(let (($x766 (not $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1418
(let ((@x1256 (hypothesis $x766)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1419
(let ((?x676 (+ ?x116 ?x481)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1420
(let (($x1697 (>= ?x676 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1421
(let (($x589 (= ?x116 ?x470)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1422
(let (($x464 (not $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1423
(let ((@x688 (hypothesis $x464)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1424
(let ((@x593 (def-axiom (or $x463 $x589))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1425
(let ((@x1779 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x589) $x1697)) (hypothesis $x589) (hypothesis (not $x1697)) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1426
(let ((@x1780 (lemma @x1779 (or (not $x589) $x1697))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1427
(let ((?x133 (* (- 1) x4$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1428
(let (($x438 (>= x4$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1429
(let ((?x445 (ite $x438 x4$ ?x133)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1430
(let ((?x456 (* (- 1) ?x445)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1431
(let ((?x674 (+ ?x133 ?x456)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1432
(let (($x675 (<= ?x674 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1433
(let ((?x677 (+ x4$ ?x456)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1434
(let (($x678 (<= ?x677 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1435
(let (($x784 (not $x678)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1436
(let (($x745 (not $x675)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1437
(let ((@x1834 (hypothesis $x745)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1438
(let (($x597 (= ?x133 ?x445)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1439
(let (($x738 (not $x597)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1440
(let ((@x740 ((_ th-lemma arith triangle-eq) (or $x738 $x675))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1441
(let ((@x1837 (lemma (unit-resolution @x740 (hypothesis $x597) @x1834 false) (or $x738 $x675))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1442
(let ((@x601 (def-axiom (or $x438 $x597))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1443
(let ((@x1840 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x675 (not $x438) $x784)) (unit-resolution @x601 (unit-resolution @x1837 @x1834 $x738) $x438) @x1834 $x784)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1444
(let (($x596 (= x4$ ?x445)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1445
(let ((@x599 (def-axiom (or (not $x438) $x596))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1446
(let ((@x1841 (unit-resolution @x599 (unit-resolution @x601 (unit-resolution @x1837 @x1834 $x738) $x438) $x596)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1447
(let ((@x693 ((_ th-lemma arith triangle-eq) (or (not $x596) $x678))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1448
(let ((@x1843 (lemma (unit-resolution @x693 @x1841 @x1840 false) $x675)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1449
(let ((?x218 (* (- 1) x9$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1450
(let (($x288 (>= x9$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1451
(let ((?x295 (ite $x288 x9$ ?x218)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1452
(let ((?x306 (* (- 1) ?x295)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1453
(let ((?x659 (+ x9$ ?x306)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1454
(let (($x660 (<= ?x659 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1455
(let (($x636 (= x9$ ?x295)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1456
(let (($x338 (>= x8$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1457
(let (($x339 (not $x338)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1458
(let (($x661 (>= ?x659 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1459
(let (($x733 (not $x661)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1460
(let ((?x201 (* (- 1) x8$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1461
(let ((?x345 (ite $x338 x8$ ?x201)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1462
(let ((?x356 (* (- 1) ?x345)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1463
(let ((?x665 (+ x8$ ?x356)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1464
(let (($x667 (>= ?x665 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1465
(let (($x628 (= x8$ ?x345)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1466
(let (($x439 (not $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1467
(let ((@x763 (hypothesis $x439)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1468
(let ((@x1701 (hypothesis $x339)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1469
(let (($x289 (not $x288)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1470
(let ((@x1371 (hypothesis $x289)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1471
(let ((?x666 (+ ?x201 ?x356)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1472
(let (($x875 (<= ?x666 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1473
(let (($x629 (= ?x201 ?x345)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1474
(let ((@x633 (def-axiom (or $x338 $x629))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1475
(let (($x1626 (not $x875)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1476
(let ((@x1635 (hypothesis $x1626)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1477
(let ((@x1640 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x629) $x875)) (hypothesis $x629) @x1635 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1478
(let ((@x1641 (lemma @x1640 (or (not $x629) $x875))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1479
(let ((@x1738 (unit-resolution @x1641 (unit-resolution @x633 @x1701 $x629) $x875)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1480
(let ((?x150 (* (- 1) x5$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1481
(let (($x413 (>= x5$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1482
(let ((?x420 (ite $x413 x5$ ?x150)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1483
(let ((?x431 (* (- 1) ?x420)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1484
(let ((?x757 (+ x5$ ?x431)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1485
(let (($x776 (>= ?x757 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1486
(let (($x604 (= x5$ ?x420)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1487
(let (($x644 (= x10$ ?x320)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1488
(let (($x645 (= ?x235 ?x320)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1489
(let (($x1136 (not $x645)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1490
(let ((?x1104 (+ ?x235 ?x331)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1491
(let (($x1250 (<= ?x1104 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1492
(let (($x1262 (not $x1250)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1493
(let ((?x1357 (+ ?x218 ?x306)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1494
(let (($x1370 (>= ?x1357 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1495
(let (($x637 (= ?x218 ?x295)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1496
(let (($x414 (not $x413)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1497
(let ((@x844 (hypothesis $x414)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1498
(let ((?x167 (* (- 1) x6$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1499
(let (($x388 (>= x6$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1500
(let ((?x395 (ite $x388 x6$ ?x167)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1501
(let ((?x406 (* (- 1) ?x395)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1502
(let ((?x671 (+ x6$ ?x406)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1503
(let (($x673 (>= ?x671 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1504
(let (($x612 (= x6$ ?x395)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1505
(let ((@x1079 (hypothesis $x288)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1506
(let (($x860 (not $x667)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1507
(let ((?x931 (+ ?x150 ?x431)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1508
(let (($x933 (<= ?x931 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1509
(let (($x605 (= ?x150 ?x420)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1510
(let ((@x1000 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x605) $x933)) (unit-resolution (def-axiom (or $x413 $x605)) @x844 $x605) $x933)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1511
(let ((?x432 (+ x4$ x6$ ?x431)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1512
(let (($x611 (>= ?x432 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1513
(let (($x433 (= ?x432 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1514
(let ((?x332 (+ x9$ x11$ ?x331)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1515
(let (($x333 (= ?x332 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1516
(let ((?x307 (+ x8$ x10$ ?x306)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1517
(let (($x308 (= ?x307 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1518
(let ((?x357 (+ x7$ x9$ ?x356)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1519
(let (($x358 (= ?x357 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1520
(let ((?x184 (* (- 1) x7$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1521
(let (($x363 (>= x7$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1522
(let ((?x370 (ite $x363 x7$ ?x184)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1523
(let ((?x381 (* (- 1) ?x370)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1524
(let ((?x382 (+ x6$ x8$ ?x381)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1525
(let (($x383 (= ?x382 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1526
(let ((?x407 (+ x5$ x7$ ?x406)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1527
(let (($x408 (= ?x407 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1528
(let ((?x457 (+ x3$ x5$ ?x456)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1529
(let (($x458 (= ?x457 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1530
(let ((?x482 (+ x2$ x4$ ?x481)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1531
(let (($x483 (= ?x482 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1532
(let ((?x98 (* (- 1) x2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1533
(let (($x488 (>= x2$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1534
(let ((?x495 (ite $x488 x2$ ?x98)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1535
(let ((?x506 (* (- 1) ?x495)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1536
(let ((?x507 (+ x3$ x1$ ?x506)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1537
(let (($x508 (= ?x507 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1538
(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
  1539
(let (($x548 (not (or (not $x537) (and $x91 $x92)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1540
(let (($x93 (and $x91 $x92)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1541
(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
  1542
(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
  1543
(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
  1544
(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
  1545
(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
  1546
(let (($x95 (not $x94)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1547
(let (($x78 (< x10$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1548
(let ((?x238 (ite $x78 ?x235 x10$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1549
(let ((?x244 (+ ?x218 ?x238)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1550
(let (($x249 (= x11$ ?x244)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1551
(let (($x72 (< x9$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1552
(let ((?x221 (ite $x72 ?x218 x9$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1553
(let ((?x227 (+ ?x201 ?x221)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1554
(let (($x232 (= x10$ ?x227)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1555
(let (($x252 (and $x232 $x249)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1556
(let (($x66 (< x8$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1557
(let ((?x204 (ite $x66 ?x201 x8$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1558
(let ((?x210 (+ ?x184 ?x204)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1559
(let (($x215 (= x9$ ?x210)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1560
(let (($x255 (and $x215 $x252)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1561
(let (($x60 (< x7$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1562
(let ((?x187 (ite $x60 ?x184 x7$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1563
(let ((?x193 (+ ?x167 ?x187)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1564
(let (($x198 (= x8$ ?x193)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1565
(let (($x258 (and $x198 $x255)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1566
(let (($x54 (< x6$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1567
(let ((?x170 (ite $x54 ?x167 x6$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1568
(let ((?x176 (+ ?x150 ?x170)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1569
(let (($x181 (= x7$ ?x176)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1570
(let (($x261 (and $x181 $x258)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1571
(let (($x48 (< x5$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1572
(let ((?x153 (ite $x48 ?x150 x5$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1573
(let ((?x159 (+ ?x133 ?x153)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1574
(let (($x164 (= x6$ ?x159)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1575
(let (($x264 (and $x164 $x261)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1576
(let (($x42 (< x4$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1577
(let ((?x136 (ite $x42 ?x133 x4$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1578
(let ((?x142 (+ ?x116 ?x136)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1579
(let (($x147 (= x5$ ?x142)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1580
(let (($x267 (and $x147 $x264)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1581
(let (($x36 (< x3$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1582
(let ((?x119 (ite $x36 ?x116 x3$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1583
(let ((?x125 (+ ?x98 ?x119)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1584
(let (($x130 (= x4$ ?x125)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1585
(let (($x270 (and $x130 $x267)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1586
(let (($x29 (< x2$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1587
(let ((?x101 (ite $x29 ?x98 x2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1588
(let ((?x108 (+ (* (- 1) x1$) ?x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1589
(let (($x113 (= x3$ ?x108)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1590
(let (($x273 (and $x113 $x270)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1591
(let (($x280 (or (not $x273) $x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1592
(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
  1593
(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
  1594
(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
  1595
(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
  1596
(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
  1597
(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
  1598
(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
  1599
(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
  1600
(let ((@x312 (trans (monotonicity @x302 (= $x232 (= x10$ (+ ?x201 ?x295)))) (rewrite (= (= x10$ (+ ?x201 ?x295)) $x308)) (= $x232 $x308))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1601
(let ((@x344 (monotonicity (rewrite (= $x66 $x339)) (= ?x204 (ite $x339 ?x201 x8$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1602
(let ((@x352 (monotonicity (trans @x344 (rewrite (= (ite $x339 ?x201 x8$) ?x345)) (= ?x204 ?x345)) (= ?x210 (+ ?x184 ?x345)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1603
(let ((@x362 (trans (monotonicity @x352 (= $x215 (= x9$ (+ ?x184 ?x345)))) (rewrite (= (= x9$ (+ ?x184 ?x345)) $x358)) (= $x215 $x358))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1604
(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
  1605
(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
  1606
(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
  1607
(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
  1608
(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
  1609
(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
  1610
(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
  1611
(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
  1612
(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
  1613
(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
  1614
(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
  1615
(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
  1616
(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
  1617
(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
  1618
(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
  1619
(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
  1620
(let ((@x462 (trans (monotonicity @x452 (= $x147 (= x5$ (+ ?x116 ?x445)))) (rewrite (= (= x5$ (+ ?x116 ?x445)) $x458)) (= $x147 $x458))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1621
(let ((@x469 (monotonicity (rewrite (= $x36 $x464)) (= ?x119 (ite $x464 ?x116 x3$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1622
(let ((@x477 (monotonicity (trans @x469 (rewrite (= (ite $x464 ?x116 x3$) ?x470)) (= ?x119 ?x470)) (= ?x125 (+ ?x98 ?x470)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1623
(let ((@x487 (trans (monotonicity @x477 (= $x130 (= x4$ (+ ?x98 ?x470)))) (rewrite (= (= x4$ (+ ?x98 ?x470)) $x483)) (= $x130 $x483))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1624
(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
  1625
(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
  1626
(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
  1627
(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
  1628
(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
  1629
(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
  1630
(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
  1631
(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
  1632
(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
  1633
(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
  1634
(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
  1635
(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
  1636
(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
  1637
(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
  1638
(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
  1639
(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
  1640
(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
  1641
(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
  1642
(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
  1643
(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
  1644
(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
  1645
(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
  1646
(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
  1647
(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
  1648
(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
  1649
(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
  1650
(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
  1651
(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
  1652
(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
  1653
(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
  1654
(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
  1655
(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
  1656
(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
  1657
(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
  1658
(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
  1659
(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
  1660
(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
  1661
(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
  1662
(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
  1663
(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
  1664
(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
  1665
(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
  1666
(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
  1667
(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
  1668
(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
  1669
(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
  1670
(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
  1671
(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
  1672
(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
  1673
(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
  1674
(let ((@x558 (and-elim @x554 $x433)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1675
(let ((@x799 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x433) $x611)) @x558 $x611)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1676
(let (($x626 (<= ?x382 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1677
(let ((@x560 (and-elim @x554 $x383)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1678
(let ((@x703 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x383) $x626)) @x560 $x626)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1679
(let ((?x668 (+ x7$ ?x381)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1680
(let (($x670 (>= ?x668 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1681
(let (($x620 (= x7$ ?x370)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1682
(let ((?x777 (+ ?x167 ?x406)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1683
(let (($x780 (<= ?x777 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1684
(let (($x613 (= ?x167 ?x395)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1685
(let (($x389 (not $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1686
(let (($x364 (not $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1687
(let ((@x1027 (hypothesis $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1688
(let ((@x1026 (hypothesis $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1689
(let (($x619 (>= ?x407 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1690
(let ((@x559 (and-elim @x554 $x408)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1691
(let ((@x853 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x408) $x619)) @x559 $x619)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1692
(let (($x936 (<= ?x671 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1693
(let ((@x950 ((_ th-lemma arith triangle-eq) (or (not $x612) $x936))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1694
(let ((@x1029 (unit-resolution @x950 (unit-resolution (def-axiom (or $x389 $x612)) @x1026 $x612) $x936)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1695
(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
  1696
(let ((@x617 (def-axiom (or $x388 $x613))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1697
(let ((@x1064 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x613) $x780)) (unit-resolution @x617 (unit-resolution @x1032 @x1027 @x844 $x389) $x613) $x780)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1698
(let ((@x1065 ((_ th-lemma arith farkas 1 1 1 1 1) (unit-resolution @x1032 @x1027 @x844 $x389) @x853 @x1027 @x844 @x1064 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1699
(let ((@x623 (def-axiom (or $x364 $x620))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1700
(let ((@x1088 (unit-resolution @x623 (unit-resolution (lemma @x1065 (or $x363 $x413)) @x844 $x363) $x620)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1701
(let ((@x926 ((_ th-lemma arith triangle-eq) (or (not $x620) $x670))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1702
(let ((@x1089 (unit-resolution @x926 @x1088 $x670)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1703
(let ((@x858 (hypothesis $x667)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1704
(let (($x634 (<= ?x357 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1705
(let ((@x561 (and-elim @x554 $x358)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1706
(let ((@x857 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x358) $x634)) @x561 $x634)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1707
(let ((@x1105 (lemma ((_ th-lemma arith farkas 1 1 1 1 1 1 1 1 1) @x857 @x858 @x1089 @x703 @x763 @x799 @x1000 @x844 @x1079 false) (or $x438 $x860 $x413 $x289))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1708
(let (($x840 (<= ?x668 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1709
(let ((@x865 ((_ th-lemma arith triangle-eq) (or (not $x620) $x840))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1710
(let ((@x1090 (unit-resolution @x865 @x1088 $x840)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1711
(let (($x627 (>= ?x382 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1712
(let ((@x835 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x383) $x627)) @x560 $x627)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1713
(let ((@x1242 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x438 (not $x611) $x388 (not $x933) $x413)) @x763 @x799 @x1000 @x844 $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1714
(let ((@x615 (def-axiom (or $x389 $x612))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1715
(let ((@x1095 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x338 (not $x840) (not $x627) (not $x936) (not $x619) $x413))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1716
(let ((@x1245 (unit-resolution @x1095 (unit-resolution @x950 (unit-resolution @x615 @x1242 $x612) $x936) @x835 @x844 @x1090 @x853 $x338)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1717
(let ((@x631 (def-axiom (or $x339 $x628))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1718
(let ((@x1132 ((_ th-lemma arith triangle-eq) (or (not $x628) $x667))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1719
(let ((@x1247 (unit-resolution @x1132 (unit-resolution @x631 @x1245 $x628) (unit-resolution @x1105 @x763 @x844 @x1079 $x860) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1720
(let ((@x1328 (unit-resolution @x599 (unit-resolution (lemma @x1247 (or $x438 $x413 $x289)) @x844 @x1079 $x438) $x596)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1721
(let ((@x1147 ((_ th-lemma arith triangle-eq) (or (not $x636) $x661))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1722
(let ((@x1148 (unit-resolution @x1147 (unit-resolution (def-axiom (or $x289 $x636)) @x1079 $x636) $x661)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1723
(let ((@x1152 ((_ th-lemma arith triangle-eq) (or (not $x636) $x660))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1724
(let ((@x1153 (unit-resolution @x1152 (unit-resolution (def-axiom (or $x289 $x636)) @x1079 $x636) $x660)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1725
(let (($x658 (>= ?x656 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1726
(let (($x706 (not $x673)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1727
(let (($x663 (<= ?x665 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1728
(let (($x643 (>= ?x307 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1729
(let ((@x562 (and-elim @x554 $x308)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1730
(let ((@x1126 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x308) $x643)) @x562 $x643)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1731
(let (($x314 (not $x313)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1732
(let (($x1165 (not $x644)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1733
(let (($x664 (>= ?x662 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1734
(let (($x734 (not $x664)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1735
(let (($x710 (not $x658)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1736
(let ((@x711 (hypothesis $x710)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1737
(let ((@x731 (hypothesis $x661)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1738
(let ((@x716 (hypothesis $x664)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1739
(let (($x847 (not $x613)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1740
(let (($x839 (>= ?x777 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1741
(let (($x872 (not $x839)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1742
(let (($x681 (<= ?x680 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1743
(let (($x621 (= ?x184 ?x370)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1744
(let (($x823 (not $x621)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1745
(let ((?x778 (+ ?x184 ?x381)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1746
(let (($x779 (<= ?x778 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1747
(let (($x902 (not $x779)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1748
(let (($x669 (>= ?x677 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1749
(let (($x679 (<= ?x676 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1750
(let ((@x762 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x589) $x679)) (unit-resolution @x593 @x688 $x589) $x679)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1751
(let ((@x941 (unit-resolution @x740 (unit-resolution @x601 @x763 $x597) $x675)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1752
(let ((@x869 (hypothesis $x681)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1753
(let ((@x868 (hypothesis $x678)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1754
(let ((@x867 (hypothesis $x839)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1755
(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
  1756
(let ((@x841 (hypothesis $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1757
(let (($x618 (<= ?x407 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1758
(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
  1759
(let (($x603 (>= ?x457 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1760
(let ((@x557 (and-elim @x554 $x458)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1761
(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
  1762
(let (($x650 (<= ?x332 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1763
(let ((@x563 (and-elim @x554 $x333)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1764
(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
  1765
(let (($x595 (>= ?x482 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1766
(let ((@x556 (and-elim @x554 $x483)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1767
(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
  1768
(let (($x642 (<= ?x307 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1769
(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
  1770
(let ((@x870 ((_ th-lemma arith farkas -1 1 -1 1 -1 -1 1 1 -1 1 1 -1 -2 1) @x835 @x869 @x731 @x730 @x720 @x716 @x715 @x711 @x687 @x868 @x698 @x867 @x841 @x866 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1771
(let ((@x879 (unit-resolution (lemma @x870 (or $x364 (not $x681) $x733 $x734 $x658 $x784 $x872)) @x867 @x731 @x716 @x711 @x868 @x869 $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1772
(let ((@x625 (def-axiom (or $x363 $x621))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1773
(let ((@x825 ((_ th-lemma arith triangle-eq) (or $x823 $x779))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1774
(let ((@x882 ((_ th-lemma arith farkas -1 1 -1 1 -1 -1 1 1 -1 1 1 -1 1) @x835 @x869 @x731 @x730 @x720 @x716 @x715 @x711 @x687 @x868 @x698 @x867 (unit-resolution @x825 (unit-resolution @x625 @x879 $x621) $x779) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1775
(let ((@x884 (lemma @x882 (or $x872 (not $x681) $x733 $x734 $x658 $x784))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1776
(let ((@x945 (unit-resolution @x884 (unit-resolution ((_ th-lemma arith assign-bounds 2 1) (or $x678 $x438 $x745)) @x941 @x763 $x678) @x731 @x716 @x711 (unit-resolution ((_ th-lemma arith assign-bounds 1 2) (or $x681 (not $x679) $x463)) @x762 @x688 $x681) $x872)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1777
(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
  1778
(let ((@x893 (lemma @x892 (or $x847 $x839))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1779
(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
  1780
(let (($x775 (<= ?x757 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1781
(let ((@x954 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x413 $x745 (not $x603) $x463 $x438)) @x763 @x687 @x688 @x941 $x413)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1782
(let ((@x607 (def-axiom (or $x414 $x604))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1783
(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
  1784
(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
  1785
(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
  1786
(let (($x602 (<= ?x457 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1787
(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
  1788
(let (($x932 (>= ?x674 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1789
(let ((@x966 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x738 $x932)) (unit-resolution @x601 @x763 $x597) $x932)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1790
(let ((@x967 ((_ th-lemma arith farkas -1 -1 1 1 -1 -1 1 1 1 -1 -1 1 1) @x835 @x731 @x730 @x762 @x720 @x716 @x715 @x711 (unit-resolution @x950 @x948 $x936) @x853 @x966 @x832 (unit-resolution @x865 (unit-resolution @x623 @x961 $x620) $x840) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1791
(let ((@x974 (unit-resolution (lemma @x967 (or $x438 $x733 $x734 $x658 $x463)) @x688 @x716 @x711 @x731 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1792
(let ((@x828 ((_ th-lemma arith triangle-eq) (or (not $x596) $x669))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1793
(let ((@x978 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x413 (not $x603) $x463 $x439 $x784)) (unit-resolution @x693 (unit-resolution @x599 @x974 $x596) $x678) @x687 @x688 @x974 $x413)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1794
(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
  1795
(let ((@x981 (unit-resolution @x884 (unit-resolution @x693 (unit-resolution @x599 @x974 $x596) $x678) @x731 @x716 @x711 (unit-resolution ((_ th-lemma arith assign-bounds 1 2) (or $x681 (not $x679) $x463)) @x762 @x688 $x681) $x872)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1796
(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
  1797
(let ((@x808 ((_ th-lemma arith triangle-eq) (or (not $x612) $x673))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1798
(let ((@x900 (hypothesis $x669)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1799
(let (($x610 (<= ?x432 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1800
(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
  1801
(let ((@x699 (hypothesis $x673)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1802
(let ((@x935 ((_ th-lemma arith farkas -1 -1 1 1 -1 -1 1 1 -1 1 -2 2 -1 1 1) @x835 @x731 @x730 (hypothesis $x679) @x720 @x716 @x715 @x711 @x699 @x698 (hypothesis $x776) @x812 @x900 @x832 (hypothesis $x779) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1803
(let ((@x971 (lemma @x935 (or $x902 $x733 (not $x679) $x734 $x658 $x706 (not $x776) (not $x669)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1804
(let ((@x986 (unit-resolution @x971 @x762 @x731 @x716 @x711 (unit-resolution @x808 @x984 $x673) (unit-resolution @x791 (unit-resolution @x607 @x978 $x604) $x776) (unit-resolution @x828 (unit-resolution @x599 @x974 $x596) $x669) $x902)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1805
(let ((@x909 (lemma (unit-resolution @x825 (hypothesis $x621) (hypothesis $x902) false) (or $x823 $x779))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1806
(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
  1807
(let ((@x991 ((_ th-lemma arith farkas -1 -1 1 1 -1 -1 1 1 -1 1 -2 2 -2 -1 1 1) @x835 @x731 @x730 @x762 @x720 @x716 @x715 @x711 (unit-resolution @x808 @x984 $x673) @x698 (unit-resolution @x791 (unit-resolution @x607 @x978 $x604) $x776) @x812 (unit-resolution @x625 (unit-resolution @x909 @x986 $x823) $x363) (unit-resolution @x828 (unit-resolution @x599 @x974 $x596) $x669) @x832 (unit-resolution @x865 @x989 $x840) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1808
(let ((@x972 (unit-resolution (lemma @x991 (or $x463 $x733 $x734 $x658)) @x716 @x731 @x711 $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1809
(let ((@x591 (def-axiom (or $x464 $x588))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1810
(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
  1811
(let ((@x994 (unit-resolution @x725 (unit-resolution @x591 @x972 $x588) $x681)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1812
(let ((@x995 (unit-resolution @x884 (unit-resolution ((_ th-lemma arith assign-bounds 2 1) (or $x678 $x438 $x745)) @x941 @x763 $x678) @x731 @x716 @x711 @x994 $x872)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1813
(let ((@x1013 (unit-resolution @x615 (unit-resolution @x617 (unit-resolution @x893 @x995 $x847) $x388) $x612)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1814
(let ((@x1014 (unit-resolution @x950 @x1013 $x936)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1815
(let ((@x753 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x658 $x657)) @x711 $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1816
(let ((@x1001 (hypothesis $x936)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1817
(let ((@x1004 ((_ th-lemma arith assign-bounds 1 1 1 1 1 2) (or $x363 (not $x936) (not $x619) $x438 (not $x611) (not $x933) $x413))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1818
(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
  1819
(let ((@x764 (hypothesis $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1820
(let ((@x1008 ((_ th-lemma arith farkas 1 1 1 2 1 1 1 1 1 1 1 1 1 2 1) @x835 @x1001 @x853 @x844 @x731 @x730 @x720 @x716 @x715 @x764 @x687 @x941 @x869 @x763 (unit-resolution @x865 @x1006 $x840) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1821
(let ((@x1015 (unit-resolution (lemma @x1008 (or $x413 (not $x936) $x733 $x734 $x766 (not $x681) $x438)) @x1014 @x731 @x716 @x753 @x994 @x763 $x413)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1822
(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
  1823
(let ((@x1021 ((_ th-lemma arith farkas -1/2 1/2 -1/2 1/2 -1/2 1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 -1/2 1) @x832 @x966 (unit-resolution @x865 (unit-resolution @x623 @x1018 $x620) $x840) @x835 @x1014 @x853 @x731 @x730 @x720 @x716 @x715 @x711 @x994 @x972 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1824
(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
  1825
(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
  1826
(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
  1827
(let (($x1024 (>= ?x931 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1828
(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
  1829
(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
  1830
(let ((@x1046 ((_ th-lemma arith farkas -1 1 -1 1 1 -1 1 1 -1 -1 -1 1 -1 1 1) (unit-resolution @x950 (unit-resolution @x615 @x1037 $x612) $x936) @x853 @x1043 @x835 @x731 @x730 @x720 @x716 @x715 @x711 @x994 @x1040 @x812 @x972 @x1037 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1831
(let ((@x1049 (unit-resolution (lemma @x1046 (or $x413 $x733 $x734 $x658)) @x716 @x731 @x711 $x413)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1832
(let ((@x895 (hypothesis $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1833
(let ((@x897 (unit-resolution @x725 (unit-resolution @x591 @x895 $x588) $x681)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1834
(let ((@x901 ((_ th-lemma arith farkas -1/2 1/2 1 -1 -1/2 1/2 -1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 -1/2 1/2 1) @x832 @x900 (hypothesis $x776) @x812 (hypothesis $x779) @x835 @x897 @x731 @x730 @x720 @x716 @x715 @x711 @x698 @x699 @x895 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1835
(let ((@x905 (lemma @x901 (or $x902 (not $x669) (not $x776) $x733 $x734 $x658 $x706 $x464))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1836
(let ((@x1054 (unit-resolution @x905 (unit-resolution @x791 (unit-resolution @x607 @x1049 $x604) $x776) @x972 @x731 @x716 @x711 (unit-resolution @x828 (unit-resolution @x599 @x1025 $x596) $x669) (unit-resolution @x808 (unit-resolution @x615 @x1037 $x612) $x673) $x902)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1837
(let ((@x1057 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x909 @x1054 $x823) $x363) $x620)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1838
(let (($x707 (not $x670)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1839
(let ((@x704 (hypothesis $x338)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1840
(let ((@x768 (lemma ((_ th-lemma arith farkas 1 1 1 1 1 1 1 1 1 1) @x731 @x704 @x730 @x720 @x716 @x715 @x764 @x763 @x688 @x762 false) (or $x463 $x733 $x339 $x734 $x766 $x438))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1841
(let ((@x770 (unit-resolution @x591 (unit-resolution @x768 @x763 @x704 @x716 @x764 @x731 $x463) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1842
(let ((@x772 ((_ th-lemma arith farkas 1 1 1 1 1 1 1 1 1 1) (unit-resolution @x768 @x763 @x704 @x716 @x764 @x731 $x463) @x731 @x704 @x730 @x720 @x716 @x715 @x764 @x763 (unit-resolution @x725 @x770 $x681) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1843
(let ((@x774 (lemma @x772 (or $x438 $x733 $x339 $x734 $x766))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1844
(let ((@x782 (unit-resolution @x599 (unit-resolution @x774 @x704 @x731 @x716 @x753 $x438) $x596)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1845
(let ((@x783 (unit-resolution @x693 @x782 $x678)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1846
(let ((@x787 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x413 (not $x603) $x463 $x439 $x784)) @x688 @x687 (unit-resolution @x774 @x704 @x731 @x716 @x753 $x438) @x783 $x413)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1847
(let ((@x803 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x388 (not $x775) (not $x603) $x463 $x784 (not $x611)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1848
(let ((@x804 (unit-resolution @x803 @x688 @x799 @x687 @x783 (unit-resolution @x794 (unit-resolution @x607 @x787 $x604) $x775) $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1849
(let (($x818 (not $x610)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1850
(let (($x817 (not $x776)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1851
(let (($x816 (not $x650)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1852
(let (($x815 (not $x595)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1853
(let (($x814 (not $x642)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1854
(let (($x813 (not $x679)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1855
(let (($x743 (not $x618)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1856
(let (($x819 (or $x364 $x706 $x743 $x463 $x813 $x733 $x339 $x814 $x815 $x734 $x816 $x766 $x817 $x818)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1857
(let ((@x821 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1 1 1 1 1 -1) $x819) @x688 @x812 @x698 @x720 @x704 @x730 @x715 @x753 @x731 @x716 (unit-resolution @x808 (unit-resolution @x615 @x804 $x612) $x673) @x762 (unit-resolution @x791 (unit-resolution @x607 @x787 $x604) $x776) $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1858
(let ((@x836 ((_ th-lemma arith farkas -1 1 1 -1 1 -1 -1 1 1 -2 2 -1 1 -1 1) (unit-resolution @x808 (unit-resolution @x615 @x804 $x612) $x673) @x698 @x762 @x731 @x730 @x720 @x716 @x715 @x711 (unit-resolution @x791 (unit-resolution @x607 @x787 $x604) $x776) @x812 @x835 @x832 (unit-resolution @x828 @x782 $x669) (unit-resolution @x825 (unit-resolution @x625 @x821 $x621) $x779) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1859
(let ((@x894 (unit-resolution (lemma @x836 (or $x463 $x733 $x734 $x658 $x339)) @x704 @x716 @x711 @x731 $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1860
(let ((@x912 (unit-resolution @x884 (unit-resolution @x725 (unit-resolution @x591 @x894 $x588) $x681) @x731 @x716 @x711 @x783 $x872)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1861
(let ((@x915 (unit-resolution @x615 (unit-resolution @x617 (unit-resolution @x893 @x912 $x847) $x388) $x612)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1862
(let ((@x683 (hypothesis $x670)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1863
(let ((@x689 (hypothesis $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1864
(let ((@x694 (unit-resolution @x693 (unit-resolution @x599 @x689 $x596) $x678)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1865
(let ((@x709 (lemma ((_ th-lemma arith farkas 1 -1 1 -1 1 -1 -1 1 1) @x704 @x703 @x699 @x698 @x689 @x694 @x688 @x687 @x683 false) (or $x463 $x339 $x706 $x439 $x707))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1866
(let ((@x722 (unit-resolution @x591 (unit-resolution @x709 @x689 @x699 @x704 @x683 $x463) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1867
(let ((@x732 ((_ th-lemma arith farkas 2 -1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1) @x704 @x703 @x699 @x698 @x694 @x687 @x731 @x730 (unit-resolution @x725 @x722 $x681) @x720 @x716 @x715 @x711 @x683 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1868
(let ((@x682 (unit-resolution (lemma @x732 (or $x439 $x339 $x706 $x733 $x734 $x658 $x707)) @x699 @x704 @x731 @x716 @x711 @x683 $x439)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1869
(let ((@x747 ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x463 $x707 $x339 (not $x626) $x706 $x743 (not $x603) $x745 $x438))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1870
(let ((@x748 (unit-resolution @x747 @x682 @x687 @x698 @x703 @x704 @x683 @x699 (unit-resolution @x740 (unit-resolution @x601 @x682 $x597) $x675) $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1871
(let ((@x754 ((_ th-lemma arith farkas 1 2 1 1 1 1 1 2 1 1 1 1 1 1 1) @x683 @x704 @x703 @x699 @x698 @x687 (unit-resolution @x740 (unit-resolution @x601 @x682 $x597) $x675) @x682 @x731 @x730 @x720 @x716 @x715 @x753 (unit-resolution @x725 (unit-resolution @x591 @x748 $x588) $x681) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1872
(let ((@x917 (unit-resolution (lemma @x754 (or $x706 $x707 $x339 $x733 $x734 $x658)) (unit-resolution @x808 @x915 $x673) @x704 @x731 @x716 @x711 $x707)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1873
(let ((@x887 (unit-resolution @x599 (unit-resolution @x774 @x704 @x731 @x716 @x764 $x438) $x596)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1874
(let ((@x889 ((_ th-lemma arith farkas 1 1 1 1 1 1 1 1 1 -1 1) @x844 @x869 @x731 @x730 @x720 @x716 @x715 @x764 @x687 (unit-resolution @x693 @x887 $x678) @x704 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1875
(let ((@x918 (unit-resolution (lemma @x889 (or $x413 (not $x681) $x733 $x734 $x766 $x339)) (unit-resolution @x725 (unit-resolution @x591 @x894 $x588) $x681) @x731 @x716 @x753 @x704 $x413)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1876
(let ((@x921 (unit-resolution @x905 (unit-resolution @x828 @x782 $x669) (unit-resolution @x791 (unit-resolution @x607 @x918 $x604) $x776) @x731 @x716 @x711 (unit-resolution @x808 @x915 $x673) @x894 $x902)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1877
(let ((@x924 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x909 @x921 $x823) $x363) $x620)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1878
(let ((@x929 (lemma (unit-resolution @x926 @x924 @x917 false) (or $x339 $x733 $x734 $x658))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1879
(let ((@x1060 ((_ th-lemma arith farkas -1 1 1 -1 1 -1 -1 1 1) @x812 @x972 (unit-resolution @x828 (unit-resolution @x599 @x1025 $x596) $x669) @x832 (unit-resolution @x625 (unit-resolution @x909 @x1054 $x823) $x363) (unit-resolution @x929 @x716 @x731 @x711 $x339) (unit-resolution @x865 @x1057 $x840) @x835 (unit-resolution @x791 (unit-resolution @x607 @x1049 $x604) $x776) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1880
(let ((@x1164 (hypothesis $x644)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1881
(let ((@x1168 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1165 $x664)) @x1164 (hypothesis $x734) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1882
(let ((@x1169 (lemma @x1168 (or $x1165 $x664))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1883
(let ((@x1171 (unit-resolution @x1169 (unit-resolution (lemma @x1060 (or $x734 $x733 $x658)) @x711 @x1148 $x734) $x1165)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1884
(let ((@x647 (def-axiom (or $x314 $x644))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1885
(let ((@x1172 (unit-resolution @x647 @x1171 $x314)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1886
(let ((@x1194 ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x338 $x313 (not $x660) (not $x643) $x289))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1887
(let ((@x1219 (unit-resolution @x631 (unit-resolution @x1194 @x1172 @x1126 @x1079 @x1153 $x338) $x628)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1888
(let ((@x1118 ((_ th-lemma arith triangle-eq) (or (not $x628) $x663))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1889
(let ((@x1220 (unit-resolution @x1118 @x1219 $x663)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1890
(let ((@x845 (hypothesis $x389)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1891
(let ((@x1071 (unit-resolution @x803 @x845 @x799 (unit-resolution ((_ th-lemma arith assign-bounds 1 2) (or $x775 (not $x933) $x413)) @x1000 @x844 $x775) @x688 @x687 $x784)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1892
(let ((@x1074 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x438 (not $x611) $x388 (not $x933) $x413)) @x845 @x799 @x844 @x1000 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1893
(let ((@x1078 (lemma (unit-resolution @x693 (unit-resolution @x599 @x1074 $x596) @x1071 false) (or $x388 $x463 $x413))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1894
(let ((@x1084 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1) (or $x745 $x818 $x389 $x463 (not $x603) (not $x1024))) (unit-resolution @x1078 @x688 @x844 $x388) @x812 @x687 @x688 @x1040 $x745)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1895
(let ((@x1086 (unit-resolution @x808 (unit-resolution @x615 (unit-resolution @x1078 @x688 @x844 $x388) $x612) $x673)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1896
(let ((@x1091 (unit-resolution @x950 (unit-resolution @x615 (unit-resolution @x1078 @x688 @x844 $x388) $x612) $x936)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1897
(let ((@x1097 (unit-resolution @x709 (unit-resolution @x1095 @x1091 @x835 @x844 @x853 @x1090 $x338) @x1089 @x688 @x1086 $x439)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1898
(let ((@x1101 (lemma (unit-resolution @x740 (unit-resolution @x601 @x1097 $x597) @x1084 false) (or $x463 $x413))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1899
(let ((@x1122 (unit-resolution @x725 (unit-resolution @x591 (unit-resolution @x1101 @x844 $x463) $x588) $x681)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1900
(let (($x1106 (>= ?x1104 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1901
(let ((@x1161 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1136 $x1106)) (hypothesis $x645) (hypothesis (not $x1106)) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1902
(let ((@x1162 (lemma @x1161 (or $x1136 $x1106))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1903
(let ((@x1174 (unit-resolution @x1162 (unit-resolution (def-axiom (or $x313 $x645)) @x1172 $x645) $x1106)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1904
(let ((@x850 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x847 $x780)) (unit-resolution @x617 @x845 $x613) $x780)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1905
(let ((@x1113 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x936 $x673)) (unit-resolution ((_ th-lemma arith assign-bounds 1 2) (or $x706 (not $x780) $x388)) @x850 @x845 $x706) $x936)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1906
(let ((@x1115 (unit-resolution @x631 (unit-resolution @x1095 @x1113 @x835 @x853 @x844 @x1090 $x338) $x628)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1907
(let ((@x1127 (hypothesis $x660)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1908
(let (($x635 (>= ?x357 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1909
(let ((@x1130 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x358) $x635)) @x561 $x635)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1910
(let ((@x859 ((_ th-lemma arith farkas 1 1 1 1 1 1 1 1 1) @x858 @x857 @x853 @x845 @x731 @x730 @x850 @x844 (hypothesis $x313) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1911
(let ((@x1134 (unit-resolution (lemma @x859 (or $x413 $x860 $x388 $x733 $x314)) (unit-resolution @x1132 @x1115 $x667) @x844 @x731 @x845 $x314)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1912
(let ((@x649 (def-axiom (or $x313 $x645))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1913
(let ((@x1139 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1136 $x1106)) (unit-resolution @x649 @x1134 $x645) $x1106)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1914
(let ((@x1140 (unit-resolution @x893 (unit-resolution @x617 @x845 $x613) $x839)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1915
(let ((@x1141 ((_ th-lemma arith farkas 1/2 -1/2 1/2 -1/2 -1/2 -1 1/2 -1/2 -1/2 1/2 1/2 1/2 -1/2 1/2 1) @x1090 @x835 @x698 @x1140 @x1139 @x1130 @x1127 @x1126 @x720 @x715 @x711 (unit-resolution @x693 (unit-resolution @x599 @x1074 $x596) $x678) @x687 @x1122 (unit-resolution @x1118 @x1115 $x663) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1916
(let ((@x1175 (unit-resolution (lemma @x1141 (or $x388 (not $x660) $x658 $x413 $x733)) @x844 @x711 @x1153 @x1148 $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1917
(let ((@x1154 (hypothesis $x1106)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1918
(let ((@x1155 ((_ th-lemma arith farkas 1/2 -1/2 1/2 -1/2 1/2 -1/2 1/2 1/2 -1/2 -1/2 -1/2 1/2 -1/2 1) @x683 @x703 @x699 @x698 @x1154 @x1153 @x1126 @x720 @x715 @x711 @x868 @x687 @x869 @x1079 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1919
(let ((@x1178 (unit-resolution (lemma @x1155 (or (not $x1106) $x707 $x706 $x658 $x784 (not $x681) $x289)) (unit-resolution @x808 (unit-resolution @x615 @x1175 $x612) $x673) @x1174 @x711 @x1122 @x1089 @x1079 $x784)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1920
(let ((@x1180 (unit-resolution @x1095 @x1090 @x835 @x844 (unit-resolution @x950 (unit-resolution @x615 @x1175 $x612) $x936) @x853 $x338)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1921
(let ((@x1183 (unit-resolution @x1105 (unit-resolution @x1132 (unit-resolution @x631 @x1180 $x628) $x667) @x844 @x1079 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1922
(let ((@x1187 (lemma (unit-resolution @x693 (unit-resolution @x599 @x1183 $x596) @x1178 false) (or $x413 $x289 $x658))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1923
(let ((@x1223 (unit-resolution @x791 (unit-resolution @x607 (unit-resolution @x1187 @x711 @x1079 $x413) $x604) $x776)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1924
(let ((@x1190 (unit-resolution @x794 (unit-resolution @x607 (hypothesis $x413) $x604) $x775)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1925
(let ((@x1196 (unit-resolution @x631 (unit-resolution @x1194 (hypothesis $x314) @x1126 @x1079 @x1153 $x338) $x628)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1926
(let ((@x1191 (hypothesis $x314)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1927
(let ((@x1202 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x363 $x313 (not $x635) (not $x663) (not $x660) (not $x643)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1928
(let ((@x1203 (unit-resolution @x1202 (unit-resolution @x1118 @x1196 $x663) @x1126 @x1191 @x1153 @x1130 $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1929
(let ((@x1188 (hypothesis $x413)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1930
(let ((@x1206 ((_ th-lemma arith farkas -1 -1 -1 1 1 -1 1 -1 1) @x1188 @x1079 (unit-resolution @x926 (unit-resolution @x623 @x1203 $x620) $x670) @x703 @x857 (unit-resolution @x1132 @x1196 $x667) @x763 @x799 @x1190 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1931
(let ((@x1208 (lemma @x1206 (or $x438 $x414 $x289 $x313))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1932
(let ((@x1224 (unit-resolution @x1208 (unit-resolution @x1187 @x711 @x1079 $x413) @x1079 @x1172 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1933
(let (($x1200 (not $x663)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1934
(let (($x1199 (not $x635)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1935
(let (($x1192 (not $x643)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1936
(let (($x1142 (not $x660)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1937
(let ((@x1227 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1 -1 1 1 1 -1 1 -1) (or $x706 $x743 $x313 $x1142 $x1192 $x817 $x1199 $x1200 $x439 $x818)) @x1172 @x698 @x1130 @x1126 @x812 @x1153 @x1224 @x1223 @x1220 $x706)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1938
(let ((@x1228 (unit-resolution @x794 (unit-resolution @x607 (unit-resolution @x1187 @x711 @x1079 $x413) $x604) $x775)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1939
(let ((@x1232 (unit-resolution @x623 (unit-resolution @x1202 @x1220 @x1126 @x1172 @x1153 @x1130 $x363) $x620)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1940
(let ((@x1209 (hypothesis $x840)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1941
(let ((@x1212 (unit-resolution @x591 (unit-resolution @x803 @x845 @x799 (hypothesis $x775) @x868 @x687 $x463) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1942
(let ((@x1214 (hypothesis $x663)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1943
(let ((@x1215 ((_ th-lemma arith farkas -1 2 -2 -1 1 1 1 -1 -1 -1 -1 1 -1 1 1) @x698 @x1130 @x1214 @x1127 @x1126 @x1154 @x720 @x715 @x711 (unit-resolution @x725 @x1212 $x681) @x1209 @x835 @x868 @x687 @x1140 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1944
(let ((@x1217 (lemma @x1215 (or $x388 $x1200 $x1142 (not $x1106) $x658 (not $x840) $x784 (not $x775)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1945
(let ((@x1234 (unit-resolution @x1217 @x1220 @x1153 @x1174 @x711 (unit-resolution @x865 @x1232 $x840) (unit-resolution @x693 (unit-resolution @x599 @x1224 $x596) $x678) @x1228 $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1946
(let ((@x1238 (lemma (unit-resolution @x808 (unit-resolution @x615 @x1234 $x612) @x1227 false) (or $x658 $x289))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1947
(let ((@x1268 (unit-resolution @x631 (unit-resolution @x1095 @x1113 @x835 @x844 @x1090 @x853 $x338) $x628)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1948
(let ((@x1271 ((_ th-lemma arith triangle-eq) (or (not $x588) $x672))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1949
(let ((@x1272 (unit-resolution @x1271 (unit-resolution @x591 (unit-resolution @x1101 @x844 $x463) $x588) $x672)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1950
(let ((@x1273 (unit-resolution (lemma @x859 (or $x413 $x860 $x388 $x733 $x314)) (unit-resolution @x1132 @x1268 $x667) @x844 @x731 @x845 $x314)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1951
(let ((@x1277 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1136 $x1250)) (unit-resolution @x649 @x1273 $x645) $x1250)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1952
(let ((@x1251 (hypothesis $x780)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1953
(let ((@x1252 (hypothesis $x672)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1954
(let (($x594 (<= ?x482 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1955
(let ((@x1255 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x483) $x594)) @x556 $x594)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1956
(let (($x651 (>= ?x332 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1957
(let ((@x1259 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x333) $x651)) @x563 $x651)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1958
(let ((@x1261 ((_ th-lemma arith farkas 1/2 -1 -1/2 -1/2 1/2 1/2 1/2 -1/2 1/2 -1/2 -1/2 1/2 -1/2 1/2 1) @x683 @x857 @x703 (hypothesis $x1250) @x1259 @x1256 @x731 @x730 @x900 @x832 @x1255 @x1252 @x1251 @x853 @x858 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1959
(let ((@x1265 (lemma @x1261 (or $x657 $x707 $x1262 $x733 (not $x669) (not $x672) (not $x780) $x860))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1960
(let ((@x1278 (unit-resolution @x1265 @x1277 @x1089 @x731 @x900 @x1272 @x850 (unit-resolution @x1132 @x1268 $x667) $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1961
(let ((@x1280 ((_ th-lemma arith triangle-eq) (or $x92 $x766 $x710))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1962
(let (($x583 (not $x92)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1963
(let (($x570 (or $x582 $x583)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1964
(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
  1965
(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
  1966
(let ((@x569 (mp (not-or-elim (mp (asserted $x95) @x552 $x548) (not $x93)) @x568 $x570)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1967
(let ((@x1282 (unit-resolution @x569 (unit-resolution @x1280 @x1278 (hypothesis $x658) $x92) $x582)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1968
(let ((?x652 (+ x1$ ?x235)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1969
(let (($x654 (>= ?x652 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1970
(let (($x587 (>= ?x507 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1971
(let ((@x555 (and-elim @x554 $x508)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1972
(let ((@x1287 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x508) $x587)) @x555 $x587)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1973
(let ((?x1145 (+ x2$ ?x506)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1974
(let (($x1239 (<= ?x1145 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1975
(let (($x584 (= x2$ ?x495)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1976
(let ((@x1289 ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x488 $x815 $x413 $x784 (not $x603) (not $x681)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1977
(let ((@x573 (def-axiom (or (not $x488) $x584))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1978
(let ((@x1291 (unit-resolution @x573 (unit-resolution @x1289 @x868 @x687 @x844 @x1122 @x720 $x488) $x584)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1979
(let ((@x1294 ((_ th-lemma arith triangle-eq) (or (not $x584) $x1239))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1980
(let ((@x1296 ((_ th-lemma arith assign-bounds 1 -3/2 3/2 -1 1/2 -1/2 1/2 -1/2 -1 1 1/2 -1/2 -1/2 1/2 1/2 1/2 -1/2) (unit-resolution @x1294 @x1291 $x1239) @x720 @x1122 @x1287 @x1090 @x731 @x730 @x835 @x1040 @x812 @x850 @x853 (unit-resolution @x1162 (unit-resolution @x649 @x1273 $x645) $x1106) @x715 @x1278 @x868 @x687 $x654)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1981
(let (($x653 (<= ?x652 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1982
(let (($x586 (<= ?x507 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1983
(let ((@x1299 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x508) $x586)) @x555 $x586)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1984
(let (($x1240 (>= ?x1145 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1985
(let ((@x1301 ((_ th-lemma arith triangle-eq) (or (not $x584) $x1240))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1986
(let ((@x1303 ((_ th-lemma arith assign-bounds 1 -3/2 3/2 -1 1/2 -1/2 1/2 -1/2 -1 1 1/2 -1/2 -1/2 1/2 1/2 1/2 -1/2) (unit-resolution @x1301 @x1291 $x1240) @x1255 @x1272 @x1299 @x1089 @x1127 @x1126 @x703 @x1000 @x799 @x1140 @x698 @x1277 @x1259 (hypothesis $x658) @x900 @x832 $x653)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1987
(let ((@x1307 ((_ th-lemma arith triangle-eq) (or $x91 (not $x653) (not $x654)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1988
(let ((@x1310 (lemma (unit-resolution @x1307 @x1303 @x1296 @x1282 false) (or $x388 $x1142 $x710 (not $x669) $x733 $x784 $x413))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1989
(let ((@x1332 (unit-resolution @x1310 (unit-resolution @x828 @x1328 $x669) (unit-resolution @x1238 @x1079 $x658) @x1153 @x1148 (unit-resolution @x693 @x1328 $x678) @x844 $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1990
(let (($x1304 (not $x653)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1991
(let ((@x1338 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x780 $x389 (not $x936))) (unit-resolution @x950 (unit-resolution @x615 @x1332 $x612) $x936) @x1332 $x780)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1992
(let ((@x1339 (unit-resolution @x1095 (unit-resolution @x950 (unit-resolution @x615 @x1332 $x612) $x936) @x835 @x844 @x1090 @x853 $x338)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1993
(let ((@x1341 (unit-resolution @x1132 (unit-resolution @x631 @x1339 $x628) $x667)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1994
(let ((@x1316 (unit-resolution @x631 (unit-resolution @x1095 @x1029 @x835 @x844 @x1090 @x853 $x338) $x628)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1995
(let ((@x1318 ((_ th-lemma arith farkas -1 -1 -1 1 -1 1 -1 1 1) @x1026 (hypothesis $x313) @x731 @x730 @x853 @x844 (unit-resolution @x1132 @x1316 $x667) @x857 @x1029 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1996
(let ((@x1342 (unit-resolution (lemma @x1318 (or $x314 $x389 $x733 $x413)) @x1332 @x1148 @x844 $x314)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1997
(let ((@x1312 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1136 $x1250)) (hypothesis $x645) (hypothesis $x1262) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1998
(let ((@x1313 (lemma @x1312 (or $x1136 $x1250))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  1999
(let ((@x1345 (unit-resolution @x1265 (unit-resolution @x1313 (unit-resolution @x649 @x1342 $x645) $x1250) @x1341 @x1148 (unit-resolution @x828 @x1328 $x669) @x1272 @x1338 @x1089 $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2000
(let ((@x1347 (unit-resolution @x569 (unit-resolution @x1280 @x1345 (unit-resolution @x1238 @x1079 $x658) $x92) $x582)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2001
(let ((@x1348 (unit-resolution @x1289 (unit-resolution @x693 @x1328 $x678) @x687 @x844 @x1122 @x720 $x488)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2002
(let ((@x1314 (hypothesis $x1024)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2003
(let (($x1305 (not $x654)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2004
(let ((@x1321 (hypothesis $x1305)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2005
(let ((@x1322 (hypothesis $x1239)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2006
(let ((@x1323 ((_ th-lemma arith farkas -2 -1 1 -1 -1 1 1 -1 1 -1 1 -1 1 1) @x1026 @x731 @x730 @x853 @x858 @x857 @x1322 @x720 @x869 @x1287 @x1321 @x1314 @x812 @x1029 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2007
(let ((@x1326 (lemma @x1323 (or $x654 $x389 $x733 $x860 (not $x1239) (not $x681) (not $x1024)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2008
(let ((@x1351 (unit-resolution @x1326 @x1332 @x1148 @x1341 (unit-resolution @x1294 (unit-resolution @x573 @x1348 $x584) $x1239) @x1122 @x1040 $x654)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2009
(let ((@x1354 ((_ th-lemma arith farkas -1 1 -1 1 -1 1 -1 1 -1 1 -1 1 2 2 -2 1) @x1153 @x1126 @x698 @x1341 @x857 (unit-resolution @x1301 (unit-resolution @x573 @x1348 $x584) $x1240) @x1255 @x1272 @x1299 (unit-resolution @x1307 @x1351 @x1347 $x1304) @x1000 @x799 @x1079 @x1089 @x703 (unit-resolution @x808 (unit-resolution @x615 @x1332 $x612) $x673) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2010
(let ((@x641 (def-axiom (or $x288 $x637))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2011
(let ((@x1435 (unit-resolution @x641 (unit-resolution (lemma @x1354 (or $x413 $x289)) @x844 $x289) $x637)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2012
(let ((@x1438 ((_ th-lemma arith triangle-eq) (or (not $x637) $x1370))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2013
(let ((@x1439 (unit-resolution @x1438 @x1435 $x1370)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2014
(let ((@x1374 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1) (or $x1200 $x1199 $x288 (not $x840) $x388 (not $x627))) @x845 @x1130 @x1371 @x866 @x835 $x1200)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2015
(let ((@x1377 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x338 $x364 (not $x840) $x388 (not $x627))) @x845 @x835 @x841 @x866 $x338)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2016
(let ((@x1381 (lemma (unit-resolution @x1118 (unit-resolution @x631 @x1377 $x628) @x1374 false) (or $x388 $x288 $x364))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2017
(let ((@x1440 (unit-resolution @x1381 (unit-resolution (lemma @x1354 (or $x413 $x289)) @x844 $x289) (unit-resolution (lemma @x1065 (or $x363 $x413)) @x844 $x363) $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2018
(let ((@x1442 (unit-resolution @x950 (unit-resolution @x615 @x1440 $x612) $x936)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2019
(let ((@x1445 (unit-resolution (unit-resolution @x1095 @x835 @x853 (or $x338 (not $x840) (not $x936) $x413)) @x1442 @x844 @x1090 $x338)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2020
(let ((@x1448 (unit-resolution @x808 (unit-resolution @x615 @x1440 $x612) $x673)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2021
(let (($x1361 (<= ?x1357 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2022
(let ((@x1450 ((_ th-lemma arith triangle-eq) (or (not $x637) $x1361))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2023
(let ((@x1451 (unit-resolution @x1450 @x1435 $x1361)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2024
(let ((@x1452 (unit-resolution @x1118 (unit-resolution @x631 @x1445 $x628) $x663)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2025
(let (($x1403 (not $x1361)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2026
(let (($x1002 (not $x933)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2027
(let (($x957 (not $x936)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2028
(let (($x1092 (not $x840)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2029
(let (($x1392 (not $x1370)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2030
(let (($x1081 (not $x1024)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2031
(let ((@x1383 (hypothesis $x1370)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2032
(let ((@x1387 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x488 $x815 $x464 (not $x681) $x438)) @x720 (or $x488 $x464 (not $x681) $x438))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2033
(let ((@x1390 (unit-resolution @x1294 (unit-resolution @x573 (unit-resolution @x1387 @x763 @x897 @x895 $x488) $x584) $x1239)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2034
(let (($x958 (not $x619)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2035
(let (($x1093 (not $x627)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2036
(let (($x871 (not $x681)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2037
(let (($x1391 (not $x587)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2038
(let (($x1324 (not $x1239)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2039
(let (($x1393 (or $x654 $x1324 $x1391 $x871 $x815 $x1081 $x818 $x1392 $x814 $x1092 $x1093 $x957 $x958 $x1200 $x1199)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2040
(let ((@x1395 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 2 -2 1 -1 1 -1) $x1393) @x1390 @x812 @x853 @x835 @x1130 @x730 @x1287 @x897 @x1001 @x1209 @x1314 @x1214 @x720 @x1383 $x654)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2041
(let ((@x1396 (hypothesis $x1361)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2042
(let ((@x1397 (hypothesis $x933)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2043
(let ((@x1399 (unit-resolution @x1301 (unit-resolution @x573 (unit-resolution @x1387 @x763 @x897 @x895 $x488) $x584) $x1240)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2044
(let (($x1404 (not $x634)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2045
(let (($x742 (not $x626)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2046
(let (($x801 (not $x611)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2047
(let (($x1402 (not $x594)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2048
(let (($x1263 (not $x672)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2049
(let (($x1401 (not $x586)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2050
(let (($x1400 (not $x1240)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2051
(let (($x1405 (or $x653 $x1400 $x1401 $x1263 $x1402 $x1002 $x801 $x1403 $x1192 $x707 $x742 $x706 $x743 $x860 $x1404)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2052
(let ((@x1407 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 2 -2 1 -1 1 -1) $x1405) @x1399 @x799 @x698 @x703 @x857 @x1126 @x1299 @x699 @x683 @x858 (unit-resolution @x1271 (unit-resolution @x591 @x895 $x588) $x672) @x1397 @x1396 @x1255 $x653)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2053
(let ((@x1411 ((_ th-lemma arith assign-bounds 1 1 2 2 1 1 1 1 1 1 1) (or $x313 $x1403 $x1192 $x707 $x742 $x706 $x743 $x1002 $x438 $x801 $x860 $x1404))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2054
(let ((@x1412 (unit-resolution @x1411 @x763 @x698 @x703 @x857 @x1126 @x799 @x699 @x683 @x858 @x1397 @x1396 $x313)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2055
(let ((@x1415 ((_ th-lemma arith triangle-eq) (or $x1165 $x1382))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2056
(let ((@x1417 ((_ th-lemma arith assign-bounds 1 -1 -1 1 2 -2 1 -1 -3 3 -1 1 -2 2 -1 1) (unit-resolution @x1415 (unit-resolution @x647 @x1412 $x644) $x1382) @x1259 (unit-resolution @x1271 (unit-resolution @x591 @x895 $x588) $x672) @x1255 @x1397 @x799 @x1396 @x1126 @x683 @x703 @x699 @x698 @x858 @x857 @x966 @x832 $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2057
(let ((@x1419 ((_ th-lemma arith assign-bounds 1 -1 -1 1 2 -2 1 -1 -3 3 -1 1 -2 2 -1 1) (unit-resolution @x1169 (unit-resolution @x647 @x1412 $x644) $x664) @x715 @x897 @x720 @x1314 @x812 @x1383 @x730 @x1209 @x835 @x1001 @x853 @x1214 @x1130 @x941 @x687 $x658)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2058
(let ((@x1420 (unit-resolution @x1280 @x1419 @x1417 (unit-resolution @x569 (unit-resolution @x1307 @x1407 @x1395 $x91) $x583) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2059
(let ((@x1422 (lemma @x1420 (or $x438 $x1081 $x1392 $x1092 $x957 $x1200 $x1002 $x1403 $x707 $x706 $x860 $x464))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2060
(let ((@x1453 (unit-resolution @x1422 @x1040 @x1439 @x1090 @x1442 @x1452 @x1000 @x1451 @x1089 @x1448 (unit-resolution @x1132 (unit-resolution @x631 @x1445 $x628) $x667) (unit-resolution @x1101 @x844 $x463) $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2061
(let ((@x1459 (unit-resolution (unit-resolution @x1289 @x687 @x720 (or $x488 $x413 $x784 $x871)) (unit-resolution @x693 (unit-resolution @x599 @x1453 $x596) $x678) @x844 @x1122 $x488)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2062
(let ((@x1462 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 2 -2 1 -1 1 -1) $x1393) (unit-resolution @x1294 (unit-resolution @x573 @x1459 $x584) $x1239) @x812 @x853 @x835 @x1130 @x730 @x720 @x1122 @x1442 @x1090 @x1040 @x1452 @x1287 @x1439 $x654)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2063
(let ((@x1464 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 2 -2 1 -1 1 -1) $x1405) (unit-resolution @x1301 (unit-resolution @x573 @x1459 $x584) $x1240) @x799 @x698 @x703 @x857 @x1126 @x1255 @x1448 @x1089 (unit-resolution @x1132 (unit-resolution @x631 @x1445 $x628) $x667) @x1272 @x1000 @x1451 @x1299 $x653)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2064
(let (($x1156 (not $x1106)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2065
(let ((@x1423 ((_ th-lemma arith farkas -1 -1 -1 -1 1 1 1 -1 -1 1 1 -1 1) @x715 @x711 @x868 @x869 @x720 @x687 @x683 @x703 @x1396 @x1126 @x699 @x698 @x1154 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2066
(let ((@x1426 (unit-resolution (lemma @x1423 (or $x1156 $x658 $x784 $x871 $x707 $x1403 $x706)) @x711 @x694 @x869 @x683 @x1396 @x699 $x1156)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2067
(let ((@x1429 (unit-resolution @x647 (unit-resolution @x649 (unit-resolution @x1162 @x1426 $x1136) $x313) $x644)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2068
(let ((@x1431 ((_ th-lemma arith farkas 1/2 -1/2 -3/2 3/2 -1/2 1/2 1 -1 -1 1 1/2 -1/2 -1/2 -1/2 -1/2 1/2 1/2 1) @x1383 @x730 @x1209 @x835 @x1001 @x853 @x1314 @x812 @x1214 @x1130 (unit-resolution @x1169 @x1429 $x664) @x715 @x711 @x694 @x869 @x720 @x687 @x689 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2069
(let ((@x1433 (lemma @x1431 (or $x658 $x1392 $x1092 $x957 $x1081 $x1200 $x871 $x439 $x707 $x1403 $x706))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2070
(let ((@x1467 (unit-resolution @x1433 @x1439 @x1090 @x1442 @x1040 @x1452 @x1122 @x1453 @x1089 @x1451 @x1448 $x658)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2071
(let ((@x1468 (unit-resolution @x1280 @x1467 (unit-resolution @x569 (unit-resolution @x1307 @x1464 @x1462 $x91) $x583) $x766)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2072
(let (($x1470 (not $x602)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2073
(let (($x903 (not $x669)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2074
(let (($x1469 (not $x651)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2075
(let (($x1471 (or $x1262 $x1469 $x657 $x903 $x1263 $x1402 $x1470 $x1092 $x1093 $x1392 $x814 $x957 $x958)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2076
(let ((@x1473 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1 -1 -1 1 1 1 -1 -1 1 1 -1) $x1471) @x1468 @x853 @x835 @x730 @x1259 @x832 (unit-resolution @x828 (unit-resolution @x599 @x1453 $x596) $x669) @x1272 @x1442 @x1090 @x1255 @x1439 $x1262)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2077
(let ((@x1476 (unit-resolution @x647 (unit-resolution @x649 (unit-resolution @x1313 @x1473 $x1136) $x313) $x644)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2078
(let ((@x1478 ((_ th-lemma arith farkas -1 -1 -2 -1 -1 1 1 1 -1 -1 1 1 -1 1) @x1259 @x1468 (unit-resolution @x649 (unit-resolution @x1313 @x1473 $x1136) $x313) (unit-resolution @x828 (unit-resolution @x599 @x1453 $x596) $x669) @x1272 @x1255 @x832 @x1090 @x835 @x1439 @x730 @x1442 @x853 (unit-resolution @x1415 @x1476 $x1382) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2079
(let ((@x1479 (lemma @x1478 $x413)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2080
(let ((@x1536 (unit-resolution @x791 (unit-resolution @x607 @x1479 $x604) $x776)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2081
(let ((@x1515 (unit-resolution @x794 (unit-resolution @x607 @x1479 $x604) $x775)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2082
(let ((@x1360 (lemma ((_ th-lemma arith farkas 1 1 1 1 1) @x1188 @x763 @x799 @x845 @x1190 false) (or $x438 $x414 $x388))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2083
(let ((@x1518 (unit-resolution @x693 (unit-resolution @x599 (unit-resolution @x1360 @x845 @x1479 $x438) $x596) $x678)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2084
(let ((@x1521 (unit-resolution (unit-resolution @x803 @x799 @x687 (or $x388 (not $x775) $x463 $x784)) @x1518 @x1515 @x845 $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2085
(let ((@x1523 (unit-resolution @x1271 (unit-resolution @x591 @x1521 $x588) $x672)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2086
(let ((@x1524 (unit-resolution @x828 (unit-resolution @x599 (unit-resolution @x1360 @x845 @x1479 $x438) $x596) $x669)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2087
(let ((@x906 (hypothesis $x902)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2088
(let ((@x1366 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x779 $x364 $x1092)) (unit-resolution @x625 (unit-resolution @x909 @x906 $x823) $x363) @x906 $x1092)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2089
(let ((@x1367 (unit-resolution @x623 (unit-resolution @x625 (unit-resolution @x909 @x906 $x823) $x363) $x620)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2090
(let ((@x1369 (lemma (unit-resolution @x865 @x1367 @x1366 false) $x779)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2091
(let ((@x1483 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1) (or $x902 $x338 $x1093 $x872 $x743 $x414)) @x835 @x1369 @x698 (or $x338 $x872 $x414))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2092
(let ((@x1486 (unit-resolution @x1118 (unit-resolution @x631 (unit-resolution @x1483 @x1140 @x1479 $x338) $x628) $x663)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2093
(let ((@x1489 (unit-resolution ((_ th-lemma arith assign-bounds 1 2 2 2 2 2) (or $x872 $x957 $x1200 $x1199 $x288 $x1092 $x1093)) @x1371 @x1130 @x835 @x1140 @x1113 @x1486 $x1092)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2094
(let ((@x1495 (unit-resolution (unit-resolution ((_ th-lemma arith assign-bounds 2 1) (or $x707 $x363 $x902)) @x1369 (or $x707 $x363)) (unit-resolution @x1381 @x1371 @x845 $x364) $x707)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2095
(let ((@x1500 (lemma (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x840 $x670)) @x1495 @x1489 false) (or $x288 $x388))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2096
(let ((@x639 (def-axiom (or $x289 $x636))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2097
(let ((@x1508 (unit-resolution @x1152 (unit-resolution @x639 (unit-resolution @x1500 @x845 $x288) $x636) $x660)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2098
(let ((@x1535 (unit-resolution @x1132 (unit-resolution @x631 (unit-resolution @x1483 @x1140 @x1479 $x338) $x628) $x667)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2099
(let ((@x1537 (unit-resolution @x1147 (unit-resolution @x639 (unit-resolution @x1500 @x845 $x288) $x636) $x661)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2100
(let (($x585 (= ?x98 ?x495)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2101
(let (($x1544 (not $x585)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2102
(let ((?x1502 (+ ?x98 ?x506)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2103
(let (($x1503 (<= ?x1502 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2104
(let (($x1548 (not $x1503)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2105
(let (($x1107 (not $x780)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2106
(let (($x1549 (or $x654 $x1548 $x903 $x1263 $x1402 $x1470 $x1391 $x817 $x818 $x733 $x814 $x1107 $x860 $x1404 $x958)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2107
(let ((@x1568 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 -1 1 2 -1 -1 1 -1 1 1 -1 1 -1) $x1549) @x1321 @x832 @x812 @x853 @x857 @x730 @x1255 @x731 @x1536 @x858 @x1251 @x900 @x1252 @x1287 $x1548)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2108
(let ((@x1566 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1544 $x1503)) (hypothesis $x585) (hypothesis $x1548) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2109
(let ((@x1567 (lemma @x1566 (or $x1544 $x1503))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2110
(let ((@x575 (def-axiom (or $x488 $x585))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2111
(let ((@x1571 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1567 @x1568 $x1544) $x488) $x584)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2112
(let ((@x1573 ((_ th-lemma arith farkas -1/2 1/2 1 1/2 -1/2 -1 1/2 -1/2 1/2 -1/2 -1/2 1/2 -1/2 1/2 -1/2 1) @x1251 @x853 @x900 @x1252 @x1255 @x832 @x731 @x730 @x858 @x857 (unit-resolution @x1294 @x1571 $x1239) @x1287 @x1321 @x1536 @x812 (unit-resolution @x575 (unit-resolution @x1567 @x1568 $x1544) $x488) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2113
(let ((@x1575 (lemma @x1573 (or $x654 $x1107 $x903 $x1263 $x733 $x860))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2114
(let ((@x1581 (unit-resolution @x1118 (unit-resolution @x631 (unit-resolution @x1483 @x867 @x1479 $x338) $x628) $x663)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2115
(let (($x800 (not $x775)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2116
(let (($x1583 (or $x1400 $x414 $x872 $x743 $x1142 $x1192 $x1200 $x1199 $x1401 $x653 $x1263 $x1402 $x800 $x801)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2117
(let ((@x1585 (unit-resolution ((_ th-lemma arith assign-bounds 2 1 -1 -1 1 -1 1 -1 1 1 -1 -1 1) $x1583) (hypothesis $x1304) @x1479 @x799 @x698 @x1130 @x1126 @x1255 @x1127 @x1515 @x867 @x1252 @x1581 @x1299 $x1400)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2118
(let (($x1504 (>= ?x1502 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2119
(let (($x1556 (not $x1504)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2120
(let (($x744 (not $x603)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2121
(let (($x1557 (or $x653 $x1556 $x784 $x871 $x815 $x744 $x1401 $x800 $x801 $x1142 $x1192 $x872 $x1200 $x1199 $x743)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2122
(let ((@x1586 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 -1 1 2 -1 -1 1 -1 1 1 -1 1 -1) $x1557) (hypothesis $x1304) @x687 @x799 @x698 @x1130 @x1126 @x720 @x1127 @x868 @x1515 @x869 @x867 @x1581 @x1299 $x1556)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2123
(let ((@x1577 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1544 $x1504)) (hypothesis $x585) (hypothesis $x1556) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2124
(let ((@x1578 (lemma @x1577 (or $x1544 $x1504))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2125
(let ((@x1589 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1578 @x1586 $x1544) $x488) $x584)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2126
(let ((@x1592 (lemma (unit-resolution @x1301 @x1589 @x1585 false) (or $x653 $x1142 $x872 $x1263 $x784 $x871))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2127
(let ((@x1594 (unit-resolution @x1592 @x1508 @x1140 @x1523 @x1518 (unit-resolution @x725 (unit-resolution @x591 @x1521 $x588) $x681) $x653)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2128
(let ((@x1595 (unit-resolution @x1307 @x1594 (unit-resolution @x1575 @x850 @x1524 @x1523 @x1537 @x1535 $x654) $x91)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2129
(let ((@x1597 (unit-resolution @x1280 (unit-resolution @x569 @x1595 $x583) (unit-resolution @x1238 (unit-resolution @x1500 @x845 $x288) $x658) $x766)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2130
(let ((@x1511 (unit-resolution (unit-resolution @x1202 @x1126 @x1130 (or $x363 $x313 $x1200 $x1142)) @x1027 @x1486 @x1508 $x313)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2131
(let (($x1501 (>= ?x778 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2132
(let ((@x1528 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x823 $x1501)) (unit-resolution @x625 @x1027 $x621) $x1501)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2133
(let (($x1529 (not $x1501)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2134
(let (($x1531 (or $x657 $x1529 $x742 $x1530 $x1469 $x1142 $x1192 $x1107 $x958 $x903 $x1263 $x1402 $x1470)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2135
(let ((@x1532 ((_ th-lemma arith assign-bounds 1 -1 -1 1 -1 1 -1 1 1 1 -1 -1) $x1531)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2136
(let ((@x1533 (unit-resolution @x1532 @x1528 @x853 @x703 @x1126 @x1259 @x1255 @x1508 @x850 @x1524 @x1523 @x832 (unit-resolution @x1415 (unit-resolution @x647 @x1511 $x644) $x1382) $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2137
(let ((@x1534 (unit-resolution @x1280 @x1533 (unit-resolution @x1238 (unit-resolution @x1500 @x845 $x288) $x658) $x92)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2138
(let (($x489 (not $x488)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2139
(let ((@x1541 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x489 $x1263 $x1402 $x1470 $x903 $x363 $x958 $x388 $x1107)) @x832 @x853 @x1255 (or $x489 $x1263 $x903 $x363 $x388 $x1107))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2140
(let ((@x1543 (unit-resolution @x575 (unit-resolution @x1541 @x1027 @x845 @x850 @x1524 @x1523 $x489) $x585)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2141
(let ((@x1551 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 -1 1 2 -1 -1 1 -1 1 1 -1 1 -1) $x1549) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1544 $x1503)) @x1543 $x1503) @x832 @x812 @x853 @x857 @x730 @x1287 @x1537 @x1536 @x1535 @x850 @x1524 @x1523 @x1255 $x654)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2142
(let ((@x1559 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2 -1 1 2 -1 -1 1 -1 1 1 -1 1 -1) $x1557) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x1544 $x1504)) @x1543 $x1504) @x687 @x799 @x698 @x1130 @x1126 @x1299 @x1508 @x1518 @x1515 (unit-resolution @x725 (unit-resolution @x591 @x1521 $x588) $x681) @x1140 @x1486 @x720 $x653)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2143
(let ((@x1561 (unit-resolution @x569 (unit-resolution @x1307 @x1559 @x1551 $x91) @x1534 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2144
(let ((@x1599 (unit-resolution @x623 (unit-resolution (lemma @x1561 (or $x363 $x388)) @x845 $x363) $x620)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2145
(let ((@x1601 (unit-resolution @x1265 @x1597 @x1535 @x1537 @x1524 @x1523 @x850 (unit-resolution @x926 @x1599 $x670) $x1262)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2146
(let ((@x1604 (unit-resolution @x647 (unit-resolution @x649 (unit-resolution @x1313 @x1601 $x1136) $x313) $x644)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2147
(let ((@x1608 (unit-resolution ((_ th-lemma arith assign-bounds -2 2 -2 2 -2 -1) (or $x1501 $x733 $x814 $x860 $x1404 $x314 $x707)) (unit-resolution @x649 (unit-resolution @x1313 @x1601 $x1136) $x313) @x730 @x1537 (unit-resolution @x926 @x1599 $x670) @x1535 @x857 $x1501)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2148
(let ((@x1609 (unit-resolution @x1532 @x1608 (unit-resolution @x1415 @x1604 $x1382) @x853 @x703 @x1126 @x1259 @x1597 @x1508 @x850 @x1524 @x1523 @x832 @x1255 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2149
(let ((@x1610 (lemma @x1609 $x388)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2150
(let ((@x1615 (unit-resolution @x808 (unit-resolution @x615 @x1610 $x612) $x673)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2151
(let ((@x1808 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x439 $x706 $x817 $x818 $x743 $x1199 $x288 $x1626 $x338)) @x1371 @x698 @x1701 @x1130 @x812 @x1615 @x1536 @x1738 $x439)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2152
(let ((@x1781 (unit-resolution (unit-resolution ((_ th-lemma arith assign-bounds 2 1) (or $x707 $x363 $x902)) @x1369 (or $x707 $x363)) @x1027 $x707)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2153
(let (($x1637 (not $x629)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2154
(let ((@x1667 (unit-resolution ((_ th-lemma arith assign-bounds -1 1 -1 -1 1) (or $x1626 $x1199 $x288 $x1529 $x389 $x742)) @x1528 @x1130 @x1371 @x1610 @x703 $x1626)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2155
(let ((@x1670 (unit-resolution @x631 (unit-resolution @x633 (unit-resolution @x1641 @x1667 $x1637) $x338) $x628)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2156
(let ((@x1672 ((_ th-lemma arith farkas 1 1 1 1 1) @x1027 (unit-resolution @x1118 @x1670 $x663) @x1130 @x1371 (unit-resolution @x633 (unit-resolution @x1641 @x1667 $x1637) $x338) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2157
(let ((@x1711 (unit-resolution @x639 (unit-resolution (lemma @x1672 (or $x363 $x288)) @x1027 $x288) $x636)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2158
(let ((@x1712 (unit-resolution @x1152 @x1711 $x660)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2159
(let ((@x1618 (unit-resolution @x1438 (unit-resolution @x641 (unit-resolution @x1238 @x711 $x289) $x637) $x1370)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2160
(let ((@x1619 (unit-resolution @x1450 (unit-resolution @x641 (unit-resolution @x1238 @x711 $x289) $x637) $x1361)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2161
(let ((@x1616 (unit-resolution @x1238 @x711 $x289)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2162
(let ((@x1676 (unit-resolution @x623 (unit-resolution (lemma @x1672 (or $x363 $x288)) @x1616 $x363) $x620)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2163
(let ((@x1677 (unit-resolution @x926 @x1676 $x670)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2164
(let ((@x1611 (unit-resolution @x950 (unit-resolution @x615 @x1610 $x612) $x936)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2165
(let ((@x1643 (unit-resolution (unit-resolution @x960 @x853 @x799 (or $x363 $x957 $x438 $x800)) @x763 @x1611 @x1515 $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2166
(let ((@x1645 (unit-resolution @x926 (unit-resolution @x623 @x1643 $x620) $x670)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2167
(let ((@x1612 (hypothesis $x875)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2168
(let ((@x1613 (hypothesis $x675)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2169
(let ((@x1622 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x313 $x707 $x742 $x288 $x1192 $x414 $x1403 $x706 $x743)) @x683 @x703 @x1616 @x1126 @x1479 @x1615 @x698 @x1619 $x313)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2170
(let ((@x1625 ((_ th-lemma arith assign-bounds -1 1 1 -1 -1 -1 1 1 -1 -3 3 1 2 -2 -2 2) (unit-resolution @x1169 (unit-resolution @x647 @x1622 $x644) $x664) @x715 @x711 @x720 @x687 @x683 @x703 @x730 @x1618 @x1615 @x698 @x1613 @x1612 @x1130 @x1536 @x812 $x871)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2171
(let ((@x1628 ((_ th-lemma arith assign-bounds 1 1 1 1 2 2 1 1 1 1 1) (or $x463 $x744 $x745 $x707 $x742 $x706 $x743 $x1626 $x1199 $x817 $x818 $x288))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2172
(let ((@x1629 (unit-resolution @x1628 @x1612 @x812 @x698 @x703 @x1130 @x1616 @x1615 @x683 @x1613 @x1536 @x687 $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2173
(let ((@x1633 (lemma (unit-resolution @x725 (unit-resolution @x591 @x1629 $x588) @x1625 false) (or $x1626 $x658 $x707 $x745))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2174
(let ((@x1648 (unit-resolution @x633 (unit-resolution @x1641 (unit-resolution @x1633 @x1645 @x711 @x941 $x1626) $x1637) $x338)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2175
(let ((@x1650 ((_ th-lemma arith assign-bounds -1 -2 -2 2 -2 2) (or $x1024 $x817 $x339 $x707 $x742 $x706 $x743))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2176
(let ((@x1653 (unit-resolution @x747 @x687 @x698 @x703 (or $x463 $x707 $x339 $x706 $x745 $x438))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2177
(let ((@x1662 (unit-resolution @x1422 (unit-resolution @x1132 (unit-resolution @x631 @x1648 $x628) $x667) (unit-resolution @x1118 (unit-resolution @x631 @x1648 $x628) $x663) @x1618 @x763 @x1611 (unit-resolution @x865 (unit-resolution @x623 @x1643 $x620) $x840) (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x933 $x414 $x800)) @x1515 @x1479 $x933) @x1619 @x1645 @x1615 (unit-resolution @x1653 @x1648 @x941 @x1645 @x1615 @x763 $x463) (unit-resolution @x1650 @x1648 @x703 @x1615 @x1645 @x1536 @x698 $x1024) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2178
(let ((@x1678 (unit-resolution (lemma @x1662 (or $x438 $x658)) @x711 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2179
(let ((@x1683 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x675 $x439 $x784)) (unit-resolution @x693 (unit-resolution @x599 @x1678 $x596) $x678) @x1678 $x675)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2180
(let ((@x1686 (unit-resolution @x633 (unit-resolution @x1641 (unit-resolution @x1633 @x1677 @x711 @x1683 $x1626) $x1637) $x338)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2181
(let ((@x1692 (unit-resolution @x591 (unit-resolution @x709 @x1686 @x1615 @x1678 @x1677 $x463) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2182
(let ((@x1694 (unit-resolution @x1433 (unit-resolution @x725 @x1692 $x681) (unit-resolution @x1118 (unit-resolution @x631 @x1686 $x628) $x663) @x1615 @x1611 @x711 @x1678 (unit-resolution @x865 @x1676 $x840) (unit-resolution @x1650 @x1686 @x703 @x1615 @x1677 @x1536 @x698 $x1024) @x1677 @x1619 @x1618 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2183
(let ((@x1695 (lemma @x1694 $x658)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2184
(let ((@x1698 (unit-resolution (unit-resolution @x960 @x853 @x799 (or $x363 $x957 $x438 $x800)) @x1027 @x1611 @x1515 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2185
(let ((@x1700 (unit-resolution @x828 (unit-resolution @x599 @x1698 $x596) $x669)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2186
(let ((@x1704 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x464 $x1470 $x817 $x818 $x903 $x338 $x1093 $x363 $x902)) @x1701 @x812 @x1027 @x835 @x832 @x1536 @x1700 @x1369 $x464)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2187
(let ((@x1708 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x589) $x1697)) (unit-resolution @x593 @x1704 $x589) $x1697)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2188
(let ((@x1709 (unit-resolution @x693 (unit-resolution @x599 @x1698 $x596) $x678)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2189
(let ((@x1714 (unit-resolution @x1194 @x1126 (or $x338 $x313 $x1142 $x289))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2190
(let ((@x1715 (unit-resolution @x1714 @x1701 @x1712 (unit-resolution (lemma @x1672 (or $x363 $x288)) @x1027 $x288) $x313)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2191
(let ((@x1717 (unit-resolution @x1415 (unit-resolution @x647 @x1715 $x644) $x1382)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2192
(let (($x1718 (not $x1697)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2193
(let (($x1719 (or $x657 $x1718 $x744 $x1530 $x1469 $x1402 $x957 $x958 $x784 $x800 $x801 $x742 $x1529 $x1142 $x1192)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2194
(let ((@x1721 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 -1 1 -1 -1 1 -1 -2 2 -1 1 -1 1) $x1719) @x1717 @x799 @x853 @x703 @x1126 @x1259 @x1255 @x1712 @x1709 @x1515 @x1611 @x1528 @x687 @x1708 $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2195
(let (($x1696 (>= ?x666 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2196
(let ((@x1726 ((_ th-lemma arith triangle-eq) (or $x1637 $x1696))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2197
(let ((@x1727 (unit-resolution @x1726 (unit-resolution @x633 @x1701 $x629) $x1696)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2198
(let ((@x1730 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1) (or $x488 $x1530 $x1469 $x710 $x338 $x1142 $x1192)) @x1701 @x1126 @x1259 @x1695 @x1712 @x1717 $x488)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2199
(let (($x1733 (not $x1696)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2200
(let (($x1734 (or $x654 $x1324 $x1391 $x1530 $x1469 $x710 $x1470 $x817 $x818 $x903 $x1093 $x902 $x1733 $x1404)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2201
(let ((@x1736 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 -1 -1 1 -1 1) $x1734) (unit-resolution @x1294 (unit-resolution @x573 @x1730 $x584) $x1239) @x812 @x835 @x857 @x1259 @x1287 @x1695 @x1536 @x1700 @x1369 @x832 @x1717 @x1727 $x654)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2202
(let (($x1740 (or $x653 $x1400 $x1401 $x734 $x816 $x766 $x744 $x800 $x801 $x784 $x742 $x1529 $x1626 $x1199)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2203
(let ((@x1742 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 -1 -1 1 -1 1) $x1740) @x1721 @x799 @x703 @x1130 @x715 @x1299 @x687 (unit-resolution @x1169 (unit-resolution @x647 @x1715 $x644) $x664) @x1709 @x1515 @x1738 (unit-resolution @x1301 (unit-resolution @x573 @x1730 $x584) $x1240) @x1528 $x653)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2204
(let ((@x1743 (unit-resolution @x1307 @x1742 @x1736 (unit-resolution @x569 (unit-resolution @x1280 @x1721 @x1695 $x92) $x582) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2205
(let ((@x1784 (unit-resolution @x631 (unit-resolution (lemma @x1743 (or $x338 $x363)) @x1027 $x338) $x628)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2206
(let ((@x1785 (unit-resolution @x1118 @x1784 $x663)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2207
(let ((@x1788 (unit-resolution ((_ th-lemma arith assign-bounds 2 2 2 2 2 1) (or $x1529 $x1142 $x1192 $x1200 $x1199 $x313 $x1092)) @x1785 @x1528 @x1712 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x840 $x670)) @x1781 $x840) @x1126 @x1130 $x313)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2208
(let ((@x1790 (unit-resolution @x1415 (unit-resolution @x647 @x1788 $x644) $x1382)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2209
(let ((@x1791 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x780 $x389 $x957)) @x1611 @x1610 $x780)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2210
(let ((@x1796 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2) (or $x875 $x1200 $x339)) (unit-resolution (lemma @x1743 (or $x338 $x363)) @x1027 $x338) @x1785 $x875)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2211
(let ((@x1750 (hypothesis $x1382)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2212
(let ((@x1747 ((_ th-lemma arith farkas 1 -1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -2 2 1) @x832 @x1287 @x1321 @x716 @x715 @x764 @x1536 @x812 @x900 @x835 @x1369 @x857 @x858 @x731 @x730 (hypothesis $x1503) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2213
(let ((@x1751 (unit-resolution (lemma @x1747 (or $x1548 $x654 $x734 $x766 $x903 $x860 $x733)) @x1321 @x716 @x764 @x900 @x858 @x731 $x1548)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2214
(let ((@x1754 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1567 @x1751 $x1544) $x488) $x584)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2215
(let ((@x1758 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 -2 2 2 -2 2) (or $x1696 $x860 $x489 $x734 $x816 $x766 $x733 $x814)) (unit-resolution @x575 (unit-resolution @x1567 @x1751 $x1544) $x488) @x715 @x764 @x731 @x716 @x858 @x730 $x1696)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2216
(let ((@x1759 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 -1 -1 1 -1 1) $x1734) @x1758 (unit-resolution @x1294 @x1754 $x1239) @x812 @x835 @x857 @x1259 @x1750 @x1695 @x1536 @x900 @x1369 @x1321 @x832 @x1287 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2217
(let ((@x1765 (unit-resolution (lemma @x1759 (or $x654 $x1530 $x903 $x766 $x733 $x734 $x860)) @x764 @x900 @x1750 @x731 @x716 @x858 $x654)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2218
(let ((@x1766 (unit-resolution @x1307 @x1765 (unit-resolution @x569 (unit-resolution @x1280 @x764 @x1695 $x92) $x582) $x1304)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2219
(let ((@x1767 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 -1 1 -1 1 -1 -1 1 -1 1) $x1740) @x1766 @x799 @x703 @x1130 @x715 @x1299 @x687 @x716 @x868 @x1515 @x1612 @x764 (hypothesis $x1501) $x1400)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2220
(let (($x1768 (or $x1556 $x744 $x1401 $x653 $x1530 $x1469 $x710 $x800 $x801 $x784 $x742 $x1529 $x1199 $x1200 $x1142 $x1192)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2221
(let ((@x1770 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1 -1 1 1 -1 1 -1 -1 1 1 -1 -2 2) $x1768) @x1766 @x799 @x703 @x1130 @x1126 @x1259 @x687 @x1695 @x1127 @x868 @x1515 @x1214 (hypothesis $x1501) @x1750 @x1299 $x1556)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2222
(let ((@x1773 (unit-resolution @x573 (unit-resolution @x575 (unit-resolution @x1578 @x1770 $x1544) $x488) $x584)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2223
(let ((@x1776 (lemma (unit-resolution @x1301 @x1773 @x1767 false) (or $x766 $x1142 $x784 $x1200 $x1529 $x1530 $x734 $x1626 $x903 $x733 $x860))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2224
(let ((@x1798 (unit-resolution @x1776 @x1712 @x1709 @x1785 @x1528 @x1790 (unit-resolution @x1169 (unit-resolution @x647 @x1788 $x644) $x664) @x1796 @x1700 (unit-resolution @x1147 @x1711 $x661) (unit-resolution @x1132 @x1784 $x667) $x766)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2225
(let ((@x1799 (unit-resolution @x1532 @x1798 @x853 @x703 @x1126 @x1259 @x1528 @x1712 @x1791 @x1700 @x1790 @x832 @x1255 $x1263)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2226
(let (($x759 (not $x589)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2227
(let ((@x1800 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 -1 1 -1 -1 1 -1 -2 2 -1 1 -1 1) $x1719) @x1798 @x799 @x853 @x703 @x1126 @x1259 @x1790 @x1712 @x1709 @x1515 @x1611 @x1528 @x687 @x1255 $x1718)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2228
(let ((@x1803 (unit-resolution @x591 (unit-resolution @x593 (unit-resolution @x1780 @x1800 $x759) $x463) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2229
(let ((@x1805 (lemma (unit-resolution @x1271 @x1803 @x1799 false) $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2230
(let ((@x1812 (unit-resolution @x926 (unit-resolution @x623 @x1805 $x620) $x670)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2231
(let ((@x1814 (unit-resolution @x1628 @x812 @x698 @x703 @x1130 @x1615 @x1812 @x1536 @x687 (or $x463 $x745 $x1626 $x288))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2232
(let ((@x1815 (unit-resolution @x1814 (unit-resolution @x740 (unit-resolution @x601 @x1808 $x597) $x675) @x1738 @x1371 $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2233
(let ((@x1818 (unit-resolution @x865 (unit-resolution @x623 @x1805 $x620) $x840)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2234
(let ((@x1819 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x738 $x932)) (unit-resolution @x601 @x1808 $x597) $x932)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2235
(let ((@x1823 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1 1 1) (or $x313 $x707 $x742 $x288 $x1192 $x414 $x1403 $x706 $x743)) @x703 @x1812 @x1126 @x1479 @x1615 @x698 (or $x313 $x288 $x1403))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2236
(let ((@x1824 (unit-resolution @x1823 (unit-resolution @x1450 (unit-resolution @x641 @x1371 $x637) $x1361) @x1371 $x313)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2237
(let ((@x1827 ((_ th-lemma arith farkas -1 -3 3 -2 2 -2 2 -1 1 1 1 -1 1 -1 -1 1 1) @x1255 @x1611 @x853 @x1515 @x799 @x857 @x1727 (unit-resolution @x1415 (unit-resolution @x647 @x1824 $x644) $x1382) @x1259 @x1256 @x1126 (unit-resolution @x1450 (unit-resolution @x641 @x1371 $x637) $x1361) @x1819 @x1818 @x832 @x835 (unit-resolution @x1271 (unit-resolution @x591 @x1815 $x588) $x672) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2238
(let ((@x1829 (lemma @x1827 (or $x288 $x657 $x338))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2239
(let ((@x1844 (unit-resolution @x1829 @x1701 @x1256 $x288)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2240
(let ((@x1848 (unit-resolution @x1208 @x1479 (or $x438 $x289 $x313))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2241
(let ((@x1851 (unit-resolution @x1415 (unit-resolution @x647 (unit-resolution @x1848 @x1844 @x763 $x313) $x644) $x1382)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2242
(let ((@x1831 ((_ th-lemma arith farkas -1 1 -1 -1 1 1 1 -1 1 1 -1 -1 1) @x1255 @x1615 @x698 @x1750 @x1259 @x1256 @x1126 @x1613 @x1812 @x687 @x703 @x1127 (hypothesis $x1697) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2243
(let ((@x1833 (lemma @x1831 (or $x745 $x1530 $x657 $x1142 $x1718))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2244
(let ((@x1852 (unit-resolution @x1833 (unit-resolution @x1152 (unit-resolution @x639 @x1844 $x636) $x660) @x1843 @x1256 @x1851 $x1718)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2245
(let ((@x1855 (unit-resolution @x591 (unit-resolution @x593 (unit-resolution @x1780 @x1852 $x759) $x463) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2246
(let ((@x1857 ((_ th-lemma arith farkas 1/2 -3/2 -1 1 3/2 -1 -1/2 -1/2 1/2 1 1/2 -1/2 -1/2 1/2 1/2 1/2 -1/2 1) @x966 @x1611 @x1515 @x799 @x853 @x857 @x1818 @x832 @x835 @x1727 (unit-resolution @x1271 @x1855 $x672) @x1255 @x1851 @x1259 @x1256 @x1126 (unit-resolution @x1152 (unit-resolution @x639 @x1844 $x636) $x660) @x1844 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2247
(let ((@x1868 (unit-resolution (lemma @x1857 (or $x338 $x657 $x438)) @x763 @x1256 $x338)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2248
(let ((@x1874 (unit-resolution ((_ th-lemma arith assign-bounds 2 2 2 2 2 1) (or $x1529 $x438 $x800 $x801 $x957 $x958 $x1092)) @x853 @x1515 @x1611 @x799 @x1818 (or $x1529 $x438))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2249
(let (($x1436 (not $x637)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2250
(let ((@x1878 (unit-resolution (unit-resolution @x1650 @x703 @x1615 @x1812 @x1536 @x698 (or $x1024 $x339)) @x1868 $x1024)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2251
(let ((@x1881 (unit-resolution (unit-resolution @x1653 @x1812 @x1615 (or $x463 $x339 $x745 $x438)) @x1868 @x1843 @x763 $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2252
(let ((@x1864 (unit-resolution @x1422 @x1611 @x1818 (unit-resolution ((_ th-lemma arith assign-bounds 2 -1) (or $x933 $x414 $x800)) @x1515 @x1479 $x933) @x1812 @x1615 (or $x438 $x1081 $x1392 $x1200 $x1403 $x860 $x464))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2253
(let ((@x1865 (unit-resolution @x1864 (unit-resolution @x1438 (hypothesis $x637) $x1370) (unit-resolution @x1450 (hypothesis $x637) $x1361) @x763 @x1214 @x858 @x895 @x1314 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2254
(let ((@x1883 (unit-resolution (lemma @x1865 (or $x1436 $x438 $x1200 $x860 $x464 $x1081)) @x763 (unit-resolution @x1118 (unit-resolution @x631 @x1868 $x628) $x663) (unit-resolution @x1132 (unit-resolution @x631 @x1868 $x628) $x667) @x1881 @x1878 $x1436)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2255
(let ((@x1887 (unit-resolution ((_ th-lemma arith assign-bounds -2 2 -2 2 -2 -1) (or $x1501 $x733 $x814 $x860 $x1404 $x314 $x707)) @x1812 @x730 @x857 (or $x1501 $x733 $x860 $x314))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2256
(let ((@x1888 (unit-resolution @x1887 (unit-resolution @x1848 (unit-resolution @x641 @x1883 $x288) @x763 $x313) (unit-resolution @x1874 @x763 $x1529) (unit-resolution @x1132 (unit-resolution @x631 @x1868 $x628) $x667) $x733)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2257
(let ((@x1890 (unit-resolution @x1147 (unit-resolution @x639 (unit-resolution @x641 @x1883 $x288) $x636) @x1888 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2258
(let ((@x1894 (unit-resolution (lemma @x1890 (or $x438 $x657)) @x1256 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2259
(let ((@x1897 (unit-resolution (unit-resolution @x709 @x1615 @x1812 (or $x463 $x339 $x439)) @x688 @x1894 $x339)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2260
(let ((@x1900 (unit-resolution @x1152 (unit-resolution @x639 (unit-resolution @x1829 @x1897 @x1256 $x288) $x636) $x660)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2261
(let ((@x1901 (unit-resolution @x1833 @x1900 @x1843 @x1256 (unit-resolution @x1780 (unit-resolution @x593 @x688 $x589) $x1697) $x1530)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2262
(let ((@x1902 (unit-resolution @x1714 @x1900 @x1897 (unit-resolution @x1829 @x1897 @x1256 $x288) $x313)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2263
(let ((@x1906 (lemma (unit-resolution @x1415 (unit-resolution @x647 @x1902 $x644) @x1901 false) (or $x463 $x657))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2264
(let ((@x1909 (unit-resolution @x1271 (unit-resolution @x591 (unit-resolution @x1906 @x1256 $x463) $x588) $x672)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2265
(let ((@x1914 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 -2 2 2 -2) (or $x1501 $x707 $x706 $x817 $x818 $x743 $x439)) @x1894 @x698 @x1615 @x1812 @x1536 @x812 $x1501)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2266
(let ((@x1917 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 2 -2 2 -2) (or $x839 $x706 $x817 $x818 $x903 $x1470 $x464)) (unit-resolution @x1906 @x1256 $x463) @x812 @x1615 @x1536 @x832 (unit-resolution @x828 (unit-resolution @x599 @x1894 $x596) $x669) $x839)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2267
(let ((@x1921 (unit-resolution @x631 (unit-resolution (unit-resolution @x1483 @x1479 (or $x338 $x872)) @x1917 $x338) $x628)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2268
(let ((@x1924 (unit-resolution ((_ th-lemma arith assign-bounds 1 2 2 2 2 2) (or $x872 $x957 $x1200 $x1199 $x288 $x1092 $x1093)) @x1130 @x835 @x1611 @x1818 (or $x872 $x1200 $x288))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2269
(let ((@x1926 (unit-resolution @x639 (unit-resolution @x1924 (unit-resolution @x1118 @x1921 $x663) @x1917 $x288) $x636)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2270
(let ((@x1929 (unit-resolution @x1532 @x853 @x703 @x1126 @x1259 @x1791 @x832 @x1255 (or $x657 $x1529 $x1530 $x1142 $x903 $x1263))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2271
(let ((@x1930 (unit-resolution @x1929 (unit-resolution @x1152 @x1926 $x660) @x1256 @x1914 (unit-resolution @x828 (unit-resolution @x599 @x1894 $x596) $x669) @x1909 $x1530)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2272
(let ((@x1932 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1 -1 1 1 1 -1 1 -1) (or $x706 $x743 $x313 $x1142 $x1192 $x817 $x1199 $x1200 $x439 $x818)) @x698 @x1130 @x1126 @x812 (or $x706 $x313 $x1142 $x817 $x1200 $x439))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2273
(let ((@x1935 (unit-resolution (unit-resolution @x1932 @x1536 @x1615 (or $x313 $x1142 $x1200 $x439)) (unit-resolution @x1152 @x1926 $x660) (unit-resolution @x1118 @x1921 $x663) @x1894 $x313)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2274
(let ((@x1938 (lemma (unit-resolution @x1415 (unit-resolution @x647 @x1935 $x644) @x1930 false) $x657)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2275
(let ((@x1942 (unit-resolution @x569 (unit-resolution (unit-resolution @x1280 @x1695 (or $x92 $x766)) @x1938 $x92) $x582)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2276
(let ((@x1943 (unit-resolution (unit-resolution @x1653 @x1812 @x1615 (or $x463 $x339 $x745 $x438)) @x688 @x1843 @x763 $x339)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2277
(let ((@x1947 (unit-resolution @x1814 (unit-resolution @x1641 (unit-resolution @x633 @x1943 $x629) $x875) @x1843 @x688 $x288)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2278
(let ((@x1950 (unit-resolution @x1415 (unit-resolution @x647 (unit-resolution @x1848 @x1947 @x763 $x313) $x644) $x1382)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2279
(let ((@x1954 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1) (or $x488 $x463 $x813 $x815 $x438)) @x720 (or $x488 $x463 $x813 $x438))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2280
(let ((@x1957 (unit-resolution @x1294 (unit-resolution @x573 (unit-resolution @x1954 @x762 @x763 @x688 $x488) $x584) $x1239)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2281
(let (($x1958 (not $x932)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2282
(let (($x1959 (or $x654 $x1324 $x1391 $x957 $x800 $x801 $x958 $x1404 $x1733 $x1092 $x1093 $x1958 $x1470 $x1530 $x1469 $x710)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2283
(let ((@x1961 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 2 1 -1 -2 1 -1 1 -1 -1 1 1 -1 -1) $x1959) @x1957 @x799 @x853 @x835 @x857 @x1259 @x1287 @x1695 @x1515 @x1611 @x966 @x1818 @x832 @x1950 (unit-resolution @x1726 (unit-resolution @x633 @x1943 $x629) $x1696) $x654)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2284
(let ((@x1962 (unit-resolution @x1301 (unit-resolution @x573 (unit-resolution @x1954 @x762 @x763 @x688 $x488) $x584) $x1240)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2285
(let ((@x1963 (unit-resolution @x1169 (unit-resolution @x647 (unit-resolution @x1848 @x1947 @x763 $x313) $x644) $x664)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2286
(let (($x1964 (or $x653 $x1400 $x1401 $x706 $x817 $x818 $x743 $x1199 $x1626 $x707 $x742 $x745 $x744 $x734 $x816 $x766)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2287
(let ((@x1966 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 2 1 -1 -2 1 -1 1 -1 -1 1 1 -1 -1) $x1964) @x1963 @x812 @x698 @x703 @x1130 @x715 @x1299 @x1938 @x687 @x1615 @x1812 @x1843 @x1536 (unit-resolution @x1641 (unit-resolution @x633 @x1943 $x629) $x875) @x1962 $x653)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2288
(let ((@x1992 (unit-resolution (lemma (unit-resolution @x1307 @x1966 @x1961 @x1942 false) (or $x463 $x438)) @x763 $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2289
(let ((@x1995 (unit-resolution @x1387 (unit-resolution @x725 (unit-resolution @x591 @x1992 $x588) $x681) @x763 @x1992 $x488)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2290
(let ((@x1983 (unit-resolution @x1450 (unit-resolution @x641 (unit-resolution @x1848 @x1191 @x763 $x289) $x637) (unit-resolution @x1823 @x1191 (unit-resolution @x1848 @x1191 @x763 $x289) $x1403) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2291
(let ((@x1999 (unit-resolution @x647 (unit-resolution (lemma @x1983 (or $x313 $x438)) @x763 $x313) $x644)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2292
(let ((@x1971 (hypothesis $x932)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2293
(let ((@x1987 ((_ th-lemma arith assign-bounds 1 -1 1 1 -1 -1 -1 3 -3 1 -1 -1 1 2 -2 2) (unit-resolution @x1450 (hypothesis $x637) $x1361) @x1252 @x1255 (unit-resolution @x1415 @x1164 $x1382) @x1259 @x1695 @x1126 @x1611 @x853 @x1818 @x835 @x1971 @x832 @x1515 @x799 @x857 $x875)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2294
(let ((@x1988 ((_ th-lemma arith assign-bounds 1 -1 1 1 -1 -1 -1 3 -3 1 -1 -1 1 2 -2 2) (unit-resolution @x1438 (hypothesis $x637) $x1370) @x869 @x720 (unit-resolution @x1169 @x1164 $x664) @x715 @x1938 @x730 @x1615 @x698 @x1812 @x703 @x1843 @x687 @x1536 @x812 @x1130 $x1696)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2295
(let ((@x1974 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 2 1 -1 -2 1 -1 1 -1 -1 1 1 -1 -1) $x1964) (unit-resolution @x1169 @x1164 $x664) @x812 @x698 @x703 @x1130 @x715 @x1299 @x1938 @x687 @x1615 @x1812 @x1843 @x1536 @x1612 (hypothesis $x1240) $x653)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2296
(let ((@x1976 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 2 1 -1 -2 1 -1 1 -1 -1 1 1 -1 -1) $x1959) (unit-resolution @x1307 @x1974 @x1942 $x1305) @x799 @x853 @x835 @x857 @x1259 @x1287 @x1695 @x1515 @x1611 @x1971 @x1818 @x832 @x1322 (hypothesis $x1696) $x1530)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2297
(let ((@x1979 (lemma (unit-resolution @x1415 @x1164 @x1976 false) (or $x1165 $x1958 $x1324 $x1733 $x1626 $x1400))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2298
(let ((@x1989 (unit-resolution @x1979 @x1988 @x1987 @x1322 @x1971 @x1164 (hypothesis $x1240) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2299
(let ((@x2002 (unit-resolution (lemma @x1989 (or $x1436 $x1324 $x1958 $x1165 $x1400 $x871 $x1263)) (unit-resolution @x1294 (unit-resolution @x573 @x1995 $x584) $x1239) @x966 @x1999 (unit-resolution @x1301 (unit-resolution @x573 @x1995 $x584) $x1240) (unit-resolution @x725 (unit-resolution @x591 @x1992 $x588) $x681) (unit-resolution @x1271 (unit-resolution @x591 @x1992 $x588) $x672) $x1436)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2300
(let ((@x2005 ((_ th-lemma arith assign-bounds -2 -1 1 2 -1 1 -1 1 1 -1 1) (or $x875 $x957 $x800 $x801 $x958 $x1404 $x289 $x1092 $x1093 $x1958 $x1470 $x464))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2301
(let ((@x2006 (unit-resolution @x2005 (unit-resolution @x641 @x2002 $x288) @x799 @x853 @x835 @x857 @x832 @x1515 @x1992 @x1611 @x966 @x1818 $x875)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2302
(let ((@x2007 (unit-resolution @x1979 @x2006 (unit-resolution @x1294 (unit-resolution @x573 @x1995 $x584) $x1239) @x966 @x1999 (unit-resolution @x1301 (unit-resolution @x573 @x1995 $x584) $x1240) $x1733)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2303
(let ((@x2010 (unit-resolution @x1147 (unit-resolution @x639 (unit-resolution @x641 @x2002 $x288) $x636) $x661)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2304
(let ((@x2011 (unit-resolution @x774 @x2010 @x1938 @x763 (unit-resolution @x1169 @x1999 $x664) $x339)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2305
(let ((@x2014 (lemma (unit-resolution @x1726 (unit-resolution @x633 @x2011 $x629) @x2007 false) $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2306
(let ((@x2021 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 -2 2 2 -2) (or $x1501 $x707 $x706 $x817 $x818 $x743 $x439)) @x2014 @x698 @x1615 @x1812 @x1536 @x812 $x1501)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2307
(let ((@x2017 (unit-resolution ((_ th-lemma arith assign-bounds 1 -2) (or $x875 $x1200 $x339)) (unit-resolution @x633 (unit-resolution @x1641 @x1635 $x1637) $x338) @x1635 $x1200)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2308
(let ((@x2018 (unit-resolution @x631 (unit-resolution @x633 (unit-resolution @x1641 @x1635 $x1637) $x338) $x628)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2309
(let ((@x2020 (lemma (unit-resolution @x1118 @x2018 @x2017 false) $x875)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2310
(let ((@x2023 (unit-resolution ((_ th-lemma arith assign-bounds -1 1 -1 -1 1) (or $x1626 $x1199 $x288 $x1529 $x389 $x742)) @x1130 @x1610 @x703 (or $x1626 $x288 $x1529))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2311
(let ((@x2026 (unit-resolution @x1152 (unit-resolution @x639 (unit-resolution @x2023 @x2020 @x2021 $x288) $x636) $x660)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2312
(let ((@x2027 (unit-resolution @x1714 @x1701 (unit-resolution @x2023 @x2020 @x2021 $x288) @x2026 $x313)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2313
(let ((@x2030 (unit-resolution @x828 (unit-resolution @x599 @x2014 $x596) $x669)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2314
(let ((@x2034 (unit-resolution ((_ th-lemma arith assign-bounds -2 2 -2 -2 2 -1) (or $x932 $x817 $x818 $x706 $x364 $x743 $x903)) @x698 @x812 (or $x932 $x817 $x706 $x364 $x903))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2315
(let ((@x2037 (unit-resolution (unit-resolution @x2034 @x1536 @x1615 @x1805 (or $x932 $x903)) @x2030 $x932)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2316
(let ((@x2040 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1 1 1 1) (or $x488 $x1530 $x1469 $x710 $x338 $x1142 $x1192)) @x1126 @x1259 @x1695 (or $x488 $x1530 $x338 $x1142))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2317
(let ((@x2041 (unit-resolution @x2040 (unit-resolution @x1415 (unit-resolution @x647 @x2027 $x644) $x1382) @x1701 @x2026 $x488)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2318
(let ((@x2045 (unit-resolution @x1979 (unit-resolution @x1301 (unit-resolution @x573 @x2041 $x584) $x1240) (unit-resolution @x1294 (unit-resolution @x573 @x2041 $x584) $x1239) @x2020 @x2037 (unit-resolution @x647 @x2027 $x644) @x1727 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2319
(let ((@x2046 (lemma @x2045 $x338)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2320
(let ((@x2049 (unit-resolution @x1147 (unit-resolution @x639 (unit-resolution @x2023 @x2020 @x2021 $x288) $x636) $x661)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2321
(let ((@x2050 (unit-resolution (unit-resolution @x709 @x1615 @x1812 (or $x463 $x339 $x439)) @x2046 @x2014 $x463)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2322
(let ((@x2055 (unit-resolution (unit-resolution @x1575 @x1791 (or $x654 $x903 $x1263 $x733 $x860)) (unit-resolution @x1271 (unit-resolution @x591 @x2050 $x588) $x672) @x2030 @x2049 (unit-resolution @x1132 (unit-resolution @x631 @x2046 $x628) $x667) $x654)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2323
(let ((@x2058 (unit-resolution ((_ th-lemma arith assign-bounds -1 -2 2 -2 2 -2) (or $x839 $x706 $x817 $x818 $x903 $x1470 $x464)) @x2050 @x812 @x1615 @x1536 @x832 @x2030 $x839)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2324
(let ((@x2059 (unit-resolution @x1592 (unit-resolution @x1271 (unit-resolution @x591 @x2050 $x588) $x672) @x2026 @x2058 (unit-resolution @x693 (unit-resolution @x599 @x2014 $x596) $x678) (unit-resolution @x725 (unit-resolution @x591 @x2050 $x588) $x681) $x653)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2325
(unit-resolution @x1307 @x2059 @x2055 @x1942 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2326
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2327
5c29815a1036cbd6b831d4adbe102069cf0d830f 20 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2328
unsat
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2329
((set-logic AUFLIRA)
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2330
(proof
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2331
(let ((?x30 (* 2.0 x$)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2332
(let ((?x32 (+ ?x30 1.0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2333
(let ((?x28 (+ x$ x$)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2334
(let (($x33 (< ?x28 ?x32)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2335
(let (($x34 (or false $x33)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2336
(let (($x35 (or $x33 $x34)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2337
(let (($x36 (not $x35)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2338
(let ((@x67 (monotonicity (rewrite (= (< ?x30 (+ 1.0 ?x30)) true)) (= (not (< ?x30 (+ 1.0 ?x30))) (not true)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2339
(let ((@x71 (trans @x67 (rewrite (= (not true) false)) (= (not (< ?x30 (+ 1.0 ?x30))) false))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2340
(let ((?x40 (+ 1.0 ?x30)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2341
(let (($x43 (< ?x30 ?x40)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2342
(let ((@x45 (monotonicity (rewrite (= ?x28 ?x30)) (rewrite (= ?x32 ?x40)) (= $x33 $x43))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2343
(let ((@x52 (trans (monotonicity @x45 (= $x34 (or false $x43))) (rewrite (= (or false $x43) $x43)) (= $x34 $x43))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2344
(let ((@x59 (trans (monotonicity @x45 @x52 (= $x35 (or $x43 $x43))) (rewrite (= (or $x43 $x43) $x43)) (= $x35 $x43))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2345
(let ((@x62 (monotonicity @x59 (= $x36 (not $x43)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2346
(mp (asserted $x36) (trans @x62 @x71 (= $x36 false)) false))))))))))))))))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2347
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2348
d2037888c28cf52f7a45f66288246169de6f14ad 113 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2349
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2350
((set-logic <null>)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2351
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2352
(let ((?x228 (mod x$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2353
(let ((?x262 (* (- 1) ?x228)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2354
(let ((?x31 (mod$ x$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2355
(let ((?x263 (+ ?x31 ?x262)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2356
(let (($x280 (>= ?x263 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2357
(let (($x264 (= ?x263 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2358
(let (($x205 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x136 (mod ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2359
(let ((?x93 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2360
(let ((?x90 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2361
(let ((?x144 (mod ?x90 ?x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2362
(let ((?x150 (* (- 1) ?x144)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2363
(let (($x111 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2364
(let ((?x170 (ite $x111 ?x150 ?x136)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2365
(let (($x78 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2366
(let ((?x175 (ite $x78 ?v0 ?x170)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2367
(let ((?x135 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2368
(= ?x135 ?x175))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2369
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2370
(let (($x181 (forall ((?v0 Int) (?v1 Int) )(let ((?x136 (mod ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2371
(let ((?x93 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2372
(let ((?x90 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2373
(let ((?x144 (mod ?x90 ?x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2374
(let ((?x150 (* (- 1) ?x144)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2375
(let (($x111 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2376
(let ((?x170 (ite $x111 ?x150 ?x136)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2377
(let (($x78 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2378
(let ((?x175 (ite $x78 ?v0 ?x170)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2379
(let ((?x135 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2380
(= ?x135 ?x175))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2381
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2382
(let ((?x136 (mod ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2383
(let ((?x93 (* (- 1) ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2384
(let ((?x90 (* (- 1) ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2385
(let ((?x144 (mod ?x90 ?x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2386
(let ((?x150 (* (- 1) ?x144)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2387
(let (($x111 (<= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2388
(let ((?x170 (ite $x111 ?x150 ?x136)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2389
(let (($x78 (= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2390
(let ((?x175 (ite $x78 ?1 ?x170)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2391
(let ((?x135 (mod$ ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2392
(let (($x178 (= ?x135 ?x175)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2393
(let (($x142 (forall ((?v0 Int) (?v1 Int) )(let (($x78 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2394
(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
  2395
(let ((?x135 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2396
(= ?x135 ?x140)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2397
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2398
(let (($x164 (forall ((?v0 Int) (?v1 Int) )(let ((?x93 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2399
(let ((?x90 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2400
(let ((?x144 (mod ?x90 ?x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2401
(let ((?x150 (* (- 1) ?x144)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2402
(let ((?x136 (mod ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2403
(let (($x79 (< 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2404
(let ((?x155 (ite $x79 ?x136 ?x150)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2405
(let (($x78 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2406
(let ((?x158 (ite $x78 ?v0 ?x155)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2407
(let ((?x135 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2408
(= ?x135 ?x158))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2409
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2410
(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
  2411
(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
  2412
(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
  2413
(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
  2414
(let (($x79 (< 0 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2415
(let ((?x155 (ite $x79 ?x136 ?x150)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2416
(let ((?x158 (ite $x78 ?1 ?x155)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2417
(let (($x161 (= ?x135 ?x158)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2418
(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
  2419
(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
  2420
(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
  2421
(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
  2422
(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
  2423
(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
  2424
(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
  2425
(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
  2426
(let (($x270 (or (not $x205) $x264)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2427
(let ((?x225 (* (- 1) 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2428
(let ((?x224 (* (- 1) x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2429
(let ((?x226 (mod ?x224 ?x225)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2430
(let ((?x227 (* (- 1) ?x226)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2431
(let (($x223 (<= 2 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2432
(let ((?x229 (ite $x223 ?x227 ?x228)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2433
(let (($x222 (= 2 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2434
(let ((?x230 (ite $x222 x$ ?x229)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2435
(let (($x231 (= ?x31 ?x230)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2436
(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
  2437
(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
  2438
(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
  2439
(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
  2440
(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
  2441
(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
  2442
(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
  2443
(let ((@x278 (mp ((_ quant-inst x$ 2) (or (not $x205) $x231)) @x277 $x270)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2444
(let ((@x337 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x264) $x280)) (unit-resolution @x278 @x210 $x264) $x280)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2445
(let (($x305 (>= ?x228 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2446
(let (($x64 (>= ?x31 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2447
(let (($x67 (not $x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2448
(let (($x36 (not (<= (+ x$ 1) (+ x$ (+ (* 2 ?x31) 1))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2449
(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
  2450
(let ((?x32 (* 2 ?x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2451
(let ((?x47 (+ 1 x$ ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2452
(let (($x52 (<= (+ 1 x$) ?x47)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2453
(let (($x55 (not $x52)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2454
(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
  2455
(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
  2456
(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
  2457
(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
  2458
(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
  2459
(let ((@x74 (mp (asserted $x36) @x73 $x67)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2460
((_ th-lemma arith farkas -1 1 1) @x74 (unit-resolution ((_ th-lemma arith) (or false $x305)) (true-axiom true) $x305) @x337 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2461
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2462
29e336c1b1dbb5e85401e6a2954560661ff3cadc 112 0
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2463
unsat
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2464
((set-logic <null>)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2465
(proof
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2466
(let ((?x224 (mod x$ 2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2467
(let (($x318 (>= ?x224 2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2468
(let (($x319 (not $x318)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2469
(let ((?x258 (* (- 1) ?x224)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2470
(let ((?x29 (mod$ x$ 2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2471
(let ((?x259 (+ ?x29 ?x258)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2472
(let (($x275 (<= ?x259 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2473
(let (($x260 (= ?x259 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2474
(let (($x201 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x132 (mod ?v0 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2475
(let ((?x89 (* (- 1) ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2476
(let ((?x86 (* (- 1) ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2477
(let ((?x140 (mod ?x86 ?x89)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2478
(let ((?x146 (* (- 1) ?x140)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2479
(let (($x107 (<= ?v1 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2480
(let ((?x166 (ite $x107 ?x146 ?x132)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2481
(let (($x74 (= ?v1 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2482
(let ((?x171 (ite $x74 ?v0 ?x166)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2483
(let ((?x131 (mod$ ?v0 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2484
(= ?x131 ?x171))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2485
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2486
(let (($x177 (forall ((?v0 Int) (?v1 Int) )(let ((?x132 (mod ?v0 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2487
(let ((?x89 (* (- 1) ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2488
(let ((?x86 (* (- 1) ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2489
(let ((?x140 (mod ?x86 ?x89)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2490
(let ((?x146 (* (- 1) ?x140)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2491
(let (($x107 (<= ?v1 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2492
(let ((?x166 (ite $x107 ?x146 ?x132)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2493
(let (($x74 (= ?v1 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2494
(let ((?x171 (ite $x74 ?v0 ?x166)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2495
(let ((?x131 (mod$ ?v0 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2496
(= ?x131 ?x171))))))))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2497
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2498
(let ((?x132 (mod ?1 ?0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2499
(let ((?x89 (* (- 1) ?0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2500
(let ((?x86 (* (- 1) ?1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2501
(let ((?x140 (mod ?x86 ?x89)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2502
(let ((?x146 (* (- 1) ?x140)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2503
(let (($x107 (<= ?0 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2504
(let ((?x166 (ite $x107 ?x146 ?x132)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2505
(let (($x74 (= ?0 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2506
(let ((?x171 (ite $x74 ?1 ?x166)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2507
(let ((?x131 (mod$ ?1 ?0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2508
(let (($x174 (= ?x131 ?x171)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2509
(let (($x138 (forall ((?v0 Int) (?v1 Int) )(let (($x74 (= ?v1 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2510
(let ((?x136 (ite $x74 ?v0 (ite (< 0 ?v1) (mod ?v0 ?v1) (- (mod (- ?v0) (- ?v1)))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2511
(let ((?x131 (mod$ ?v0 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2512
(= ?x131 ?x136)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2513
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2514
(let (($x160 (forall ((?v0 Int) (?v1 Int) )(let ((?x89 (* (- 1) ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2515
(let ((?x86 (* (- 1) ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2516
(let ((?x140 (mod ?x86 ?x89)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2517
(let ((?x146 (* (- 1) ?x140)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2518
(let ((?x132 (mod ?v0 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2519
(let (($x75 (< 0 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2520
(let ((?x151 (ite $x75 ?x132 ?x146)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2521
(let (($x74 (= ?v1 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2522
(let ((?x154 (ite $x74 ?v0 ?x151)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2523
(let ((?x131 (mod$ ?v0 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2524
(= ?x131 ?x154))))))))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2525
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2526
(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
  2527
(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
  2528
(let ((@x173 (monotonicity @x170 (= (ite $x74 ?1 (ite (< 0 ?0) ?x132 ?x146)) ?x171))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2529
(let ((@x176 (monotonicity @x173 (= (= ?x131 (ite $x74 ?1 (ite (< 0 ?0) ?x132 ?x146))) $x174))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2530
(let (($x75 (< 0 ?0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2531
(let ((?x151 (ite $x75 ?x132 ?x146)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2532
(let ((?x154 (ite $x74 ?1 ?x151)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2533
(let (($x157 (= ?x131 ?x154)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2534
(let (($x158 (= (= ?x131 (ite $x74 ?1 (ite $x75 ?x132 (- (mod (- ?1) (- ?0)))))) $x157)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2535
(let ((@x142 (monotonicity (rewrite (= (- ?1) ?x86)) (rewrite (= (- ?0) ?x89)) (= (mod (- ?1) (- ?0)) ?x140))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2536
(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
  2537
(let ((@x153 (monotonicity @x150 (= (ite $x75 ?x132 (- (mod (- ?1) (- ?0)))) ?x151))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2538
(let ((@x156 (monotonicity @x153 (= (ite $x74 ?1 (ite $x75 ?x132 (- (mod (- ?1) (- ?0))))) ?x154))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2539
(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
  2540
(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
  2541
(let ((@x206 (mp @x192 (quant-intro (refl (= $x174 $x174)) (= $x177 $x201)) $x201)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2542
(let (($x266 (or (not $x201) $x260)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2543
(let ((?x221 (* (- 1) 2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2544
(let ((?x220 (* (- 1) x$)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2545
(let ((?x222 (mod ?x220 ?x221)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2546
(let ((?x223 (* (- 1) ?x222)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2547
(let (($x219 (<= 2 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2548
(let ((?x225 (ite $x219 ?x223 ?x224)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2549
(let (($x218 (= 2 0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2550
(let ((?x226 (ite $x218 x$ ?x225)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2551
(let (($x227 (= ?x29 ?x226)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2552
(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
  2553
(let ((@x243 (monotonicity (rewrite (= $x219 false)) @x240 (= ?x225 (ite false (* (- 1) (mod ?x220 (- 2))) ?x224)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2554
(let ((@x247 (trans @x243 (rewrite (= (ite false (* (- 1) (mod ?x220 (- 2))) ?x224) ?x224)) (= ?x225 ?x224))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2555
(let ((@x250 (monotonicity (rewrite (= $x218 false)) @x247 (= ?x226 (ite false x$ ?x224)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2556
(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
  2557
(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
  2558
(let ((@x273 (trans @x270 (rewrite (= $x266 $x266)) (= (or (not $x201) $x227) $x266))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2559
(let ((@x274 (mp ((_ quant-inst x$ 2) (or (not $x201) $x227)) @x273 $x266)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2560
(let ((@x336 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x260) $x275)) (unit-resolution @x274 @x206 $x260) $x275)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2561
(let (($x63 (>= ?x29 2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2562
(let ((?x37 (* 2 ?x29)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2563
(let (($x56 (>= ?x37 3)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2564
(let (($x46 (< (+ x$ ?x37) (+ 3 x$))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2565
(let (($x49 (not $x46)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2566
(let ((@x58 (monotonicity (rewrite (= $x46 (not $x56))) (= $x49 (not (not $x56))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2567
(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
  2568
(let ((@x42 (monotonicity (rewrite (= (+ ?x29 ?x29) ?x37)) (= (+ x$ (+ ?x29 ?x29)) (+ x$ ?x37)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2569
(let ((@x48 (monotonicity @x42 (rewrite (= (+ x$ 3) (+ 3 x$))) (= (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3)) $x46))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2570
(let ((@x51 (monotonicity @x48 (= (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3))) $x49))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2571
(let ((@x69 (trans @x51 @x67 (= (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3))) $x63))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2572
(let ((@x70 (mp (asserted (not (< (+ x$ (+ ?x29 ?x29)) (+ x$ 3)))) @x69 $x63)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2573
((_ th-lemma arith farkas -1 1 1) @x70 @x336 (unit-resolution ((_ th-lemma arith) (or false $x319)) (true-axiom true) $x319) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2574
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2575
5bcedd8db3cccf5f1df2ef7ad1ca5e39c817a6f4 32 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2576
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2577
((set-logic <null>)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2578
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2579
(let (($x28 (= x$ 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2580
(let (($x29 (not $x28)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2581
(let ((@x30 (asserted $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2582
(let (($x101 (<= x$ 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2583
(let ((?x47 (* 2.0 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2584
(let (($x99 (<= ?x47 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2585
(let (($x95 (= ?x47 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2586
(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
  2587
(let (($x38 (or $x36 (not $x36))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2588
(let ((?x41 (ite $x38 4.0 2.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2589
(let (($x45 (not (not (= (+ x$ x$) (* ?x41 x$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2590
(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
  2591
(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
  2592
(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
  2593
(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
  2594
(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
  2595
(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
  2596
(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
  2597
(let ((@x76 (trans (monotonicity @x69 (= ?x41 (ite true 4.0 2.0))) (rewrite (= (ite true 4.0 2.0) 4.0)) (= ?x41 4.0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2598
(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
  2599
(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
  2600
(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
  2601
(let ((@x98 (mp (asserted $x45) @x97 $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2602
(let ((@x110 (unit-resolution ((_ th-lemma arith assign-bounds 1) (or $x101 (not $x99))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x95) $x99)) @x98 $x99) $x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2603
(let (($x102 (>= x$ 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2604
(let (($x100 (>= ?x47 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2605
(let ((@x117 (unit-resolution ((_ th-lemma arith assign-bounds 1) (or $x102 (not $x100))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x95) $x100)) @x98 $x100) $x102)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2606
(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
  2607
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2608
97186805a3315ef9a1cc4847a2e19a6d09c77915 236 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2609
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2610
((set-logic <null>)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2611
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2612
(let ((?x410 (div n$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2613
(let ((?x704 (* (- 1) ?x410)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2614
(let ((?x381 (div n$ 4)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2615
(let ((?x601 (* (- 2) ?x381)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2616
(let ((?x329 (mod n$ 4)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2617
(let ((?x363 (* (- 1) ?x329)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2618
(let ((?x35 (mod$ n$ 4)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2619
(let ((?x705 (+ n$ ?x35 ?x363 ?x601 ?x704)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2620
(let (($x706 (>= ?x705 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2621
(let ((?x39 (mod$ n$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2622
(let (($x515 (>= ?x39 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2623
(let (($x725 (not $x515)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2624
(let (($x514 (<= ?x39 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2625
(let ((?x519 (mod n$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2626
(let ((?x534 (* (- 1) ?x519)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2627
(let ((?x535 (+ ?x39 ?x534)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2628
(let (($x408 (<= ?x535 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2629
(let (($x490 (= ?x535 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2630
(let (($x191 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x108 (mod ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2631
(let ((?x65 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2632
(let ((?x62 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2633
(let ((?x116 (mod ?x62 ?x65)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2634
(let ((?x122 (* (- 1) ?x116)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2635
(let (($x83 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2636
(let ((?x142 (ite $x83 ?x122 ?x108)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2637
(let (($x50 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2638
(let ((?x147 (ite $x50 ?v0 ?x142)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2639
(let ((?x107 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2640
(= ?x107 ?x147))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2641
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2642
(let (($x153 (forall ((?v0 Int) (?v1 Int) )(let ((?x108 (mod ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2643
(let ((?x65 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2644
(let ((?x62 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2645
(let ((?x116 (mod ?x62 ?x65)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2646
(let ((?x122 (* (- 1) ?x116)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2647
(let (($x83 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2648
(let ((?x142 (ite $x83 ?x122 ?x108)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2649
(let (($x50 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2650
(let ((?x147 (ite $x50 ?v0 ?x142)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2651
(let ((?x107 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2652
(= ?x107 ?x147))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2653
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2654
(let ((?x108 (mod ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2655
(let ((?x65 (* (- 1) ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2656
(let ((?x62 (* (- 1) ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2657
(let ((?x116 (mod ?x62 ?x65)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2658
(let ((?x122 (* (- 1) ?x116)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2659
(let (($x83 (<= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2660
(let ((?x142 (ite $x83 ?x122 ?x108)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2661
(let (($x50 (= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2662
(let ((?x147 (ite $x50 ?1 ?x142)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2663
(let ((?x107 (mod$ ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2664
(let (($x150 (= ?x107 ?x147)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2665
(let (($x114 (forall ((?v0 Int) (?v1 Int) )(let (($x50 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2666
(let ((?x112 (ite $x50 ?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
  2667
(let ((?x107 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2668
(= ?x107 ?x112)))))
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 (($x136 (forall ((?v0 Int) (?v1 Int) )(let ((?x65 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2671
(let ((?x62 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2672
(let ((?x116 (mod ?x62 ?x65)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2673
(let ((?x122 (* (- 1) ?x116)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2674
(let ((?x108 (mod ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2675
(let (($x51 (< 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2676
(let ((?x127 (ite $x51 ?x108 ?x122)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2677
(let (($x50 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2678
(let ((?x130 (ite $x50 ?v0 ?x127)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2679
(let ((?x107 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2680
(= ?x107 ?x130))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2681
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2682
(let ((@x141 (monotonicity (rewrite (= (< 0 ?0) (not $x83))) (= (ite (< 0 ?0) ?x108 ?x122) (ite (not $x83) ?x108 ?x122)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2683
(let ((@x146 (trans @x141 (rewrite (= (ite (not $x83) ?x108 ?x122) ?x142)) (= (ite (< 0 ?0) ?x108 ?x122) ?x142))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2684
(let ((@x149 (monotonicity @x146 (= (ite $x50 ?1 (ite (< 0 ?0) ?x108 ?x122)) ?x147))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2685
(let ((@x152 (monotonicity @x149 (= (= ?x107 (ite $x50 ?1 (ite (< 0 ?0) ?x108 ?x122))) $x150))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2686
(let (($x51 (< 0 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2687
(let ((?x127 (ite $x51 ?x108 ?x122)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2688
(let ((?x130 (ite $x50 ?1 ?x127)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2689
(let (($x133 (= ?x107 ?x130)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2690
(let (($x134 (= (= ?x107 (ite $x50 ?1 (ite $x51 ?x108 (- (mod (- ?1) (- ?0)))))) $x133)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2691
(let ((@x118 (monotonicity (rewrite (= (- ?1) ?x62)) (rewrite (= (- ?0) ?x65)) (= (mod (- ?1) (- ?0)) ?x116))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2692
(let ((@x126 (trans (monotonicity @x118 (= (- (mod (- ?1) (- ?0))) (- ?x116))) (rewrite (= (- ?x116) ?x122)) (= (- (mod (- ?1) (- ?0))) ?x122))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2693
(let ((@x129 (monotonicity @x126 (= (ite $x51 ?x108 (- (mod (- ?1) (- ?0)))) ?x127))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2694
(let ((@x132 (monotonicity @x129 (= (ite $x50 ?1 (ite $x51 ?x108 (- (mod (- ?1) (- ?0))))) ?x130))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2695
(let ((@x157 (trans (quant-intro (monotonicity @x132 $x134) (= $x114 $x136)) (quant-intro @x152 (= $x136 $x153)) (= $x114 $x153))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2696
(let ((@x168 (mp~ (mp (asserted $x114) @x157 $x153) (nnf-pos (refl (~ $x150 $x150)) (~ $x153 $x153)) $x153)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2697
(let ((@x196 (mp @x168 (quant-intro (refl (= $x150 $x150)) (= $x153 $x191)) $x191)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2698
(let (($x260 (not $x191)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2699
(let (($x541 (or $x260 $x490)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2700
(let ((?x211 (* (- 1) 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2701
(let ((?x222 (* (- 1) n$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2702
(let ((?x517 (mod ?x222 ?x211)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2703
(let ((?x518 (* (- 1) ?x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2704
(let (($x209 (<= 2 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2705
(let ((?x520 (ite $x209 ?x518 ?x519)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2706
(let (($x208 (= 2 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2707
(let ((?x521 (ite $x208 n$ ?x520)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2708
(let (($x485 (= ?x39 ?x521)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2709
(let ((@x593 (monotonicity (monotonicity (rewrite (= ?x211 (- 2))) (= ?x517 (mod ?x222 (- 2)))) (= ?x518 (* (- 1) (mod ?x222 (- 2)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2710
(let ((@x221 (rewrite (= $x209 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2711
(let ((@x596 (monotonicity @x221 @x593 (= ?x520 (ite false (* (- 1) (mod ?x222 (- 2))) ?x519)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2712
(let ((@x599 (trans @x596 (rewrite (= (ite false (* (- 1) (mod ?x222 (- 2))) ?x519) ?x519)) (= ?x520 ?x519))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2713
(let ((@x219 (rewrite (= $x208 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2714
(let ((@x487 (trans (monotonicity @x219 @x599 (= ?x521 (ite false n$ ?x519))) (rewrite (= (ite false n$ ?x519) ?x519)) (= ?x521 ?x519))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2715
(let ((@x538 (trans (monotonicity @x487 (= $x485 (= ?x39 ?x519))) (rewrite (= (= ?x39 ?x519) $x490)) (= $x485 $x490))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2716
(let ((@x406 (trans (monotonicity @x538 (= (or $x260 $x485) $x541)) (rewrite (= $x541 $x541)) (= (or $x260 $x485) $x541))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2717
(let ((@x407 (mp ((_ quant-inst n$ 2) (or $x260 $x485)) @x406 $x541)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2718
(let ((@x715 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x490) $x408)) (unit-resolution @x407 @x196 $x490) $x408)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2719
(let (($x303 (>= ?x519 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2720
(let (($x304 (not $x303)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2721
(let ((@x26 (true-axiom true)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2722
(let ((@x722 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x514 $x303 (not $x408))) (unit-resolution ((_ th-lemma arith) (or false $x304)) @x26 $x304) @x715 $x514)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2723
(let (($x41 (= ?x39 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2724
(let (($x169 (not $x41)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2725
(let ((?x42 (mod$ m$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2726
(let (($x43 (= ?x42 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2727
(let ((?x29 (+ n$ m$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2728
(let ((?x214 (mod ?x29 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2729
(let ((?x253 (* (- 1) ?x214)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2730
(let ((?x31 (mod$ ?x29 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2731
(let ((?x603 (+ n$ m$ ?x31 ?x35 ?x253 (* (- 1) (div ?x29 2)) ?x363 ?x601 (* (- 1) (div m$ 2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2732
(let (($x604 (>= ?x603 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2733
(let (($x523 (>= ?x42 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2734
(let (($x609 (not $x523)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2735
(let (($x522 (<= ?x42 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2736
(let ((?x439 (mod m$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2737
(let ((?x466 (* (- 1) ?x439)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2738
(let ((?x467 (+ ?x42 ?x466)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2739
(let (($x482 (<= ?x467 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2740
(let (($x468 (= ?x467 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2741
(let (($x473 (or $x260 $x468)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2742
(let ((?x440 (ite $x209 (* (- 1) (mod (* (- 1) m$) ?x211)) ?x439)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2743
(let ((?x441 (ite $x208 m$ ?x440)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2744
(let (($x442 (= ?x42 ?x441)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2745
(let ((@x453 (rewrite (= (ite false (* (- 1) (mod (* (- 1) m$) (- 2))) ?x439) ?x439))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2746
(let (($x447 (= (* (- 1) (mod (* (- 1) m$) ?x211)) (* (- 1) (mod (* (- 1) m$) (- 2))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2747
(let ((@x229 (rewrite (= ?x211 (- 2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2748
(let ((@x445 (monotonicity @x229 (= (mod (* (- 1) m$) ?x211) (mod (* (- 1) m$) (- 2))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2749
(let ((@x451 (monotonicity @x221 (monotonicity @x445 $x447) (= ?x440 (ite false (* (- 1) (mod (* (- 1) m$) (- 2))) ?x439)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2750
(let ((@x458 (monotonicity @x219 (trans @x451 @x453 (= ?x440 ?x439)) (= ?x441 (ite false m$ ?x439)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2751
(let ((@x465 (monotonicity (trans @x458 (rewrite (= (ite false m$ ?x439) ?x439)) (= ?x441 ?x439)) (= $x442 (= ?x42 ?x439)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2752
(let ((@x477 (monotonicity (trans @x465 (rewrite (= (= ?x42 ?x439) $x468)) (= $x442 $x468)) (= (or $x260 $x442) $x473))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2753
(let ((@x481 (mp ((_ quant-inst m$ 2) (or $x260 $x442)) (trans @x477 (rewrite (= $x473 $x473)) (= (or $x260 $x442) $x473)) $x473)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2754
(let ((@x277 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x468) $x482)) (unit-resolution @x481 @x196 $x468) $x482)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2755
(let ((@x386 (unit-resolution ((_ th-lemma arith) (or false (not (>= ?x439 2)))) @x26 (not (>= ?x439 2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2756
(let ((@x384 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x522 (>= ?x439 2) (not $x482))) @x386 @x277 $x522)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2757
(let ((@x564 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x43 (not $x522) $x609)) (hypothesis (not $x43)) (or (not $x522) $x609))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2758
(let ((?x272 (div ?x29 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2759
(let ((?x288 (* (- 2) ?x272)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2760
(let ((?x289 (+ n$ m$ ?x253 ?x288)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2761
(let (($x294 (<= ?x289 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2762
(let (($x287 (= ?x289 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2763
(let ((@x617 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x287) $x294)) (unit-resolution ((_ th-lemma arith) (or false $x287)) @x26 $x287) $x294)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2764
(let (($x433 (<= ?x31 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2765
(let (($x32 (= ?x31 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2766
(let ((@x33 (asserted $x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2767
(let ((?x254 (+ ?x31 ?x253)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2768
(let (($x270 (<= ?x254 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2769
(let (($x255 (= ?x254 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2770
(let (($x261 (or $x260 $x255)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2771
(let ((?x215 (ite $x209 (* (- 1) (mod (* (- 1) ?x29) ?x211)) ?x214)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2772
(let ((?x216 (ite $x208 ?x29 ?x215)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2773
(let (($x217 (= ?x31 ?x216)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2774
(let (($x239 (= (ite false (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2))) ?x214) ?x214)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2775
(let (($x237 (= ?x215 (ite false (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2))) ?x214))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2776
(let (($x234 (= (* (- 1) (mod (* (- 1) ?x29) ?x211)) (* (- 1) (mod (+ ?x222 (* (- 1) m$)) (- 2))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2777
(let ((@x232 (monotonicity (rewrite (= (* (- 1) ?x29) (+ ?x222 (* (- 1) m$)))) @x229 (= (mod (* (- 1) ?x29) ?x211) (mod (+ ?x222 (* (- 1) m$)) (- 2))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2778
(let ((@x242 (trans (monotonicity @x221 (monotonicity @x232 $x234) $x237) (rewrite $x239) (= ?x215 ?x214))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2779
(let ((@x249 (trans (monotonicity @x219 @x242 (= ?x216 (ite false ?x29 ?x214))) (rewrite (= (ite false ?x29 ?x214) ?x214)) (= ?x216 ?x214))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2780
(let ((@x259 (trans (monotonicity @x249 (= $x217 (= ?x31 ?x214))) (rewrite (= (= ?x31 ?x214) $x255)) (= $x217 $x255))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2781
(let ((@x268 (trans (monotonicity @x259 (= (or $x260 $x217) $x261)) (rewrite (= $x261 $x261)) (= (or $x260 $x217) $x261))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2782
(let ((@x269 (mp ((_ quant-inst (+ n$ m$) 2) (or $x260 $x217)) @x268 $x261)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2783
(let ((@x626 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x255) $x270)) (unit-resolution @x269 @x196 $x255) $x270)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2784
(let ((?x498 (+ m$ ?x466 (* (- 2) (div m$ 2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2785
(let (($x496 (= ?x498 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2786
(let ((@x633 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x496) (<= ?x498 0))) (unit-resolution ((_ th-lemma arith) (or false $x496)) @x26 $x496) (<= ?x498 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2787
(let ((?x397 (* (- 4) ?x381)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2788
(let ((?x398 (+ n$ ?x363 ?x397)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2789
(let (($x403 (<= ?x398 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2790
(let (($x396 (= ?x398 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2791
(let ((@x640 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x396) $x403)) (unit-resolution ((_ th-lemma arith) (or false $x396)) @x26 $x396) $x403)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2792
(let ((?x364 (+ ?x35 ?x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2793
(let (($x379 (<= ?x364 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2794
(let (($x365 (= ?x364 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2795
(let (($x370 (or $x260 $x365)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2796
(let ((?x330 (ite (<= 4 0) (* (- 1) (mod ?x222 (* (- 1) 4))) ?x329)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2797
(let ((?x331 (ite (= 4 0) n$ ?x330)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2798
(let (($x332 (= ?x35 ?x331)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2799
(let ((@x342 (monotonicity (rewrite (= (* (- 1) 4) (- 4))) (= (mod ?x222 (* (- 1) 4)) (mod ?x222 (- 4))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2800
(let ((@x345 (monotonicity @x342 (= (* (- 1) (mod ?x222 (* (- 1) 4))) (* (- 1) (mod ?x222 (- 4)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2801
(let ((@x348 (monotonicity (rewrite (= (<= 4 0) false)) @x345 (= ?x330 (ite false (* (- 1) (mod ?x222 (- 4))) ?x329)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2802
(let ((@x352 (trans @x348 (rewrite (= (ite false (* (- 1) (mod ?x222 (- 4))) ?x329) ?x329)) (= ?x330 ?x329))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2803
(let ((@x355 (monotonicity (rewrite (= (= 4 0) false)) @x352 (= ?x331 (ite false n$ ?x329)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2804
(let ((@x362 (monotonicity (trans @x355 (rewrite (= (ite false n$ ?x329) ?x329)) (= ?x331 ?x329)) (= $x332 (= ?x35 ?x329)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2805
(let ((@x374 (monotonicity (trans @x362 (rewrite (= (= ?x35 ?x329) $x365)) (= $x332 $x365)) (= (or $x260 $x332) $x370))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2806
(let ((@x378 (mp ((_ quant-inst n$ 4) (or $x260 $x332)) (trans @x374 (rewrite (= $x370 $x370)) (= (or $x260 $x332) $x370)) $x370)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2807
(let ((@x645 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x365) $x379)) (unit-resolution @x378 @x196 $x365) $x379)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2808
(let (($x435 (<= ?x35 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2809
(let (($x37 (= ?x35 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2810
(let ((@x38 (asserted $x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2811
(let ((@x655 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x468) (>= ?x467 0))) (unit-resolution @x481 @x196 $x468) (>= ?x467 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2812
(let ((@x656 ((_ th-lemma arith farkas -1 1 -2 1 1 1 1 1 1 1) @x655 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x37) $x435)) @x38 $x435) (hypothesis $x604) @x645 @x640 @x633 @x626 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x32) $x433)) @x33 $x433) @x617 (hypothesis $x609) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2813
(let ((@x565 (unit-resolution (lemma @x656 (or (not $x604) $x523)) (unit-resolution @x564 @x384 $x609) (not $x604))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2814
(let (($x295 (>= ?x289 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2815
(let ((@x566 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x287) $x295)) (unit-resolution ((_ th-lemma arith) (or false $x287)) @x26 $x287) $x295)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2816
(let (($x434 (>= ?x31 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2817
(let (($x271 (>= ?x254 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2818
(let ((@x531 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x255) $x271)) (unit-resolution @x269 @x196 $x255) $x271)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2819
(let ((@x537 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x496) (>= ?x498 0))) (unit-resolution ((_ th-lemma arith) (or false $x496)) @x26 $x496) (>= ?x498 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2820
(let ((@x549 (unit-resolution ((_ th-lemma arith) (or false (>= ?x439 0))) @x26 (>= ?x439 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2821
(let (($x404 (>= ?x398 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2822
(let ((@x552 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x396) $x404)) (unit-resolution ((_ th-lemma arith) (or false $x396)) @x26 $x396) $x404)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2823
(let (($x380 (>= ?x364 0)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2824
(let ((@x273 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x365) $x380)) (unit-resolution @x378 @x196 $x365) $x380)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2825
(let (($x436 (>= ?x35 3)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2826
(let ((@x545 ((_ th-lemma arith farkas -1/2 -1/2 -1/2 -1/2 -1/2 -1/2 -1/2 -1/2 1) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x37) $x436)) @x38 $x436) @x273 @x552 @x549 @x537 @x531 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x32) $x434)) @x33 $x434) @x566 @x565 false)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2827
(let (($x171 (or $x169 (not $x43))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2828
(let ((@x177 (monotonicity (rewrite (= (and $x41 $x43) (not $x171))) (= (not (and $x41 $x43)) (not (not $x171))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2829
(let ((@x181 (trans @x177 (rewrite (= (not (not $x171)) $x171)) (= (not (and $x41 $x43)) $x171))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2830
(let ((@x182 (mp (asserted (not (and $x41 $x43))) @x181 $x171)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2831
(let ((@x729 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x41 (not $x514) $x725)) (unit-resolution @x182 (lemma @x545 $x43) $x169) (or (not $x514) $x725))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2832
(let ((?x420 (* (- 2) ?x410)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2833
(let ((?x421 (+ n$ ?x420 ?x534)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2834
(let (($x426 (<= ?x421 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2835
(let (($x419 (= ?x421 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2836
(let ((@x737 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x419) $x426)) (unit-resolution ((_ th-lemma arith) (or false $x419)) @x26 $x419) $x426)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2837
(let (($x409 (>= ?x535 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2838
(let ((@x741 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x490) $x409)) (unit-resolution @x407 @x196 $x490) $x409)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2839
(let ((@x742 ((_ th-lemma arith farkas -1 1 -2 1 1 1 1) @x741 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x37) $x435)) @x38 $x435) (hypothesis $x706) @x640 @x737 @x645 (unit-resolution @x729 @x722 $x725) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2840
(let (($x427 (>= ?x421 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2841
(let ((@x584 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x419) $x427)) (unit-resolution ((_ th-lemma arith) (or false $x419)) @x26 $x419) $x427)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2842
(let (($x542 (>= ?x519 0)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2843
((_ th-lemma arith farkas -1/2 -1/2 -1/2 -1/2 -1/2 1) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x37) $x436)) @x38 $x436) @x552 (unit-resolution ((_ th-lemma arith) (or false $x542)) @x26 $x542) @x584 @x273 (lemma @x742 (not $x706)) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2844
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2845
dcc9b986d57d4904aeadc1233210450bb15df4d3 12 0
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2846
unsat
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2847
((set-logic AUFLIA)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2848
(proof
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2849
(let (($x28 (exists ((?v0 Int) )false)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2850
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2851
(let (($x27 (not $x28)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2852
(let (($x29 (not $x27)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2853
(let ((@x35 (monotonicity (elim-unused (= $x28 false)) (= $x27 (not false)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2854
(let ((@x42 (monotonicity (trans @x35 (rewrite (= (not false) true)) (= $x27 true)) (= $x29 (not true)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2855
(let ((@x46 (trans @x42 (rewrite (= (not true) false)) (= $x29 false))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2856
(mp (asserted $x29) @x46 false)))))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  2857
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2858
e33f4ac0207897c2b7abfeafedc87232f999a6d5 12 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2859
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2860
((set-logic AUFLIRA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2861
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2862
(let (($x27 (exists ((?v0 Real) )false)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2863
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2864
(let (($x28 (not $x27)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2865
(let (($x29 (not $x28)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2866
(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
  2867
(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
  2868
(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
  2869
(mp (asserted $x29) @x46 false)))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2870
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2871
ef29919c373b650f8005a5573289548ab716b089 22 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2872
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2873
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2874
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2875
(let (($x52 (forall ((?v0 Int) )(<= ?v0 0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2876
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2877
(let (($x46 (forall ((?v0 Int) )(let (($x34 (<= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2878
(let (($x35 (not $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2879
(not $x35))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2880
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2881
(let ((@x54 (quant-intro (rewrite (= (not (not (<= ?0 0))) (<= ?0 0))) (= $x46 $x52))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2882
(let (($x38 (exists ((?v0 Int) )(let (($x34 (<= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2883
(not $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2884
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2885
(let (($x41 (not $x38)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2886
(let ((@x48 (nnf-neg (refl (~ (not (not (<= ?0 0))) (not (not (<= ?0 0))))) (~ $x41 $x46))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2887
(let (($x29 (exists ((?v0 Int) )(< 0 ?v0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2888
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2889
(let (($x30 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2890
(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
  2891
(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
  2892
(mp (mp @x49 @x54 $x52) (rewrite (= $x52 false)) false)))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2893
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2894
4d3a976164de7ccb5d4650a113f067b8a1c55b22 22 0
56109
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2895
unsat
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2896
((set-logic AUFLIRA)
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2897
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2898
(let (($x51 (forall ((?v0 Real) )(<= ?v0 0.0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2899
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2900
(let (($x45 (forall ((?v0 Real) )(let (($x33 (<= ?v0 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2901
(let (($x34 (not $x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2902
(not $x34))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2903
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2904
(let ((@x53 (quant-intro (rewrite (= (not (not (<= ?0 0.0))) (<= ?0 0.0))) (= $x45 $x51))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2905
(let (($x37 (exists ((?v0 Real) )(let (($x33 (<= ?v0 0.0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2906
(not $x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2907
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2908
(let (($x40 (not $x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2909
(let ((@x47 (nnf-neg (refl (~ (not (not (<= ?0 0.0))) (not (not (<= ?0 0.0))))) (~ $x40 $x45))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2910
(let (($x28 (exists ((?v0 Real) )(< 0.0 ?v0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2911
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2912
(let (($x29 (not $x28)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2913
(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
  2914
(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
  2915
(mp (mp @x48 @x53 $x51) (rewrite (= $x51 false)) false)))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2916
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2917
f28123a872d014e01ec45f8bb7163bb037909301 31 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2918
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2919
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2920
(declare-fun ?v0!0 () Int)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2921
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2922
(let (($x71 (forall ((?v1 Int) )(<= (+ ?v1 (* (- 1) ?v0!0)) 0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2923
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2924
(let (($x63 (forall ((?v1 Int) )(not (not (<= (+ ?v1 (* (- 1) ?v0!0)) 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2925
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2926
(let (($x54 (<= (+ ?0 (* (- 1) ?v0!0)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2927
(let (($x60 (not (not $x54))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2928
(let (($x46 (forall ((?v0 Int) )(exists ((?v1 Int) )(not (<= (+ ?v1 (* (- 1) ?v0)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2929
)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2930
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2931
(let (($x49 (not $x46)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2932
(let (($x56 (exists ((?v1 Int) )(let (($x54 (<= (+ ?v1 (* (- 1) ?v0!0)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2933
(not $x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2934
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2935
(let ((@x67 (trans (sk (~ $x49 (not $x56))) (nnf-neg (refl (~ $x60 $x60)) (~ (not $x56) $x63)) (~ $x49 $x63))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2936
(let (($x31 (forall ((?v0 Int) )(exists ((?v1 Int) )(< ?v0 ?v1))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2937
)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2938
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2939
(let (($x32 (not $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2940
(let (($x43 (exists ((?v1 Int) )(not (<= (+ ?v1 (* (- 1) ?0)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2941
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2942
(let (($x30 (exists ((?v1 Int) )(< ?0 ?v1))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2943
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2944
(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
  2945
(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
  2946
(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
  2947
(mp @x74 (rewrite (= $x71 false)) false))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2948
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2949
574f579e644304e47945be9d8bd47347079730d4 22 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2950
unsat
56109
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2951
((set-logic AUFLIA)
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2952
(declare-fun ?v1!0 () Int)
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  2953
(declare-fun ?v0!1 () Int)
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2954
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2955
(let (($x53 (= ?v1!0 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2956
(let (($x59 (not (or (not (and (= ?v0!1 0) $x53)) (not (= ?v0!1 ?v1!0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2957
(let (($x43 (forall ((?v0 Int) (?v1 Int) )(or (not (and (= ?v0 0) (= ?v1 1))) (not (= ?v0 ?v1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2958
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2959
(let (($x46 (not $x43)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2960
(let (($x36 (forall ((?v0 Int) (?v1 Int) )(=> (and (= ?v0 0) (= ?v1 1)) (not (= ?v0 ?v1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2961
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2962
(let (($x37 (not $x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2963
(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
  2964
(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
  2965
(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
  2966
(let ((@x67 (and-elim @x65 $x53)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2967
(let (($x56 (= ?v0!1 ?v1!0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2968
(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
  2969
(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
  2970
(mp (trans @x70 @x67 (= 0 1)) (rewrite (= (= 0 1) false)) false))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2971
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  2972
a24ff2e4a93d06b88e1d7717852cb82258ed11ed 55 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2973
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2974
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2975
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2976
(let (($x35 (exists ((?v0 Int) )(forall ((?v1 Int) )(let (($x31 (<= 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2977
(let (($x30 (< ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2978
(let (($x32 (or $x30 $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2979
(let (($x29 (< ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2980
(=> $x29 $x32))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2981
)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2982
))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2983
(let (($x36 (not $x35)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2984
(let (($x45 (exists ((?v0 Int) )(forall ((?v1 Int) )(let (($x31 (<= 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2985
(let (($x30 (< ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2986
(let (($x32 (or $x30 $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2987
(let (($x29 (< ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2988
(let (($x38 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2989
(or $x38 $x32)))))))
56111
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  2990
)
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  2991
))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2992
(let (($x48 (not $x45)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2993
(let (($x88 (exists ((?v0 Int) )true)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2994
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2995
(let (($x42 (forall ((?v1 Int) )(let (($x31 (<= 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2996
(let (($x30 (< ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2997
(let (($x32 (or $x30 $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2998
(let (($x29 (< ?0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  2999
(let (($x38 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3000
(or $x38 $x32)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3001
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3002
(let (($x81 (forall ((?v1 Int) )true)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3003
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3004
(let (($x31 (<= 0 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3005
(let (($x30 (< ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3006
(let (($x32 (or $x30 $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3007
(let (($x29 (< ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3008
(let (($x38 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3009
(let (($x39 (or $x38 $x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3010
(let (($x60 (<= (+ ?0 (* (- 1) ?1)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3011
(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
  3012
(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
  3013
(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
  3014
(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
  3015
(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
  3016
(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
  3017
(let ((@x101 (trans (monotonicity @x94 (= $x48 (not true))) (rewrite (= (not true) false)) (= $x48 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3018
(let (($x34 (forall ((?v1 Int) )(let (($x31 (<= 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3019
(let (($x30 (< ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3020
(let (($x32 (or $x30 $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3021
(let (($x29 (< ?0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3022
(=> $x29 $x32))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3023
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3024
(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
  3025
(let ((@x50 (monotonicity @x47 (= $x36 $x48))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3026
(mp (asserted $x36) (trans @x50 @x101 (= $x36 false)) false)))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3027
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3028
c446c8659459cda8dda1ecfd9aba54ce2a50f002 42 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3029
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3030
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3031
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3032
(let (($x37 (forall ((?v0 Int) (?v1 Int) )(let ((?x34 (* 2 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3033
(let ((?x31 (* 2 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3034
(let ((?x33 (+ ?x31 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3035
(let (($x35 (< ?x33 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3036
(let (($x29 (< ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3037
(=> $x29 $x35)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3038
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3039
(let (($x38 (not $x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3040
(let (($x55 (forall ((?v0 Int) (?v1 Int) )(let ((?x34 (* 2 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3041
(let ((?x31 (* 2 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3042
(let ((?x40 (+ 1 ?x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3043
(let (($x43 (< ?x40 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3044
(let (($x29 (< ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3045
(let (($x49 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3046
(or $x49 $x43))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3047
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3048
(let (($x58 (not $x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3049
(let (($x84 (forall ((?v0 Int) (?v1 Int) )true)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3050
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3051
(let ((?x34 (* 2 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3052
(let ((?x31 (* 2 ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3053
(let ((?x40 (+ 1 ?x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3054
(let (($x43 (< ?x40 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3055
(let (($x29 (< ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3056
(let (($x49 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3057
(let (($x50 (or $x49 $x43)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3058
(let (($x63 (>= (+ ?1 (* (- 1) ?0)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3059
(let (($x62 (not $x63)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3060
(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
  3061
(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
  3062
(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
  3063
(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
  3064
(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
  3065
(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
  3066
(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
  3067
(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
  3068
(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
  3069
(mp (asserted $x38) (trans @x60 @x97 (= $x38 false)) false))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3070
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3071
a6ee8724a53192e0bb5b41bbeed60d66d29cdc32 32 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3072
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3073
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3074
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3075
(let (($x36 (forall ((?v0 Int) (?v1 Int) )(let ((?x33 (* 2 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3076
(let ((?x30 (* 2 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3077
(let ((?x32 (+ ?x30 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3078
(let (($x34 (= ?x32 ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3079
(not $x34))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3080
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3081
(let (($x37 (not $x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3082
(let (($x48 (forall ((?v0 Int) (?v1 Int) )(let ((?x33 (* 2 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3083
(let ((?x30 (* 2 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3084
(let ((?x39 (+ 1 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3085
(let (($x42 (= ?x39 ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3086
(not $x42))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3087
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3088
(let (($x51 (not $x48)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3089
(let (($x63 (forall ((?v0 Int) (?v1 Int) )true)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3090
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3091
(let ((?x33 (* 2 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3092
(let ((?x30 (* 2 ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3093
(let ((?x39 (+ 1 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3094
(let (($x42 (= ?x39 ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3095
(let (($x45 (not $x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3096
(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
  3097
(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
  3098
(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
  3099
(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
  3100
(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
  3101
(let ((@x53 (monotonicity @x50 (= $x37 $x51))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3102
(mp (asserted $x37) (trans @x53 @x76 (= $x37 false)) false)))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3103
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3104
07f4cd3fa64b76806d385c4af8945a76e01f07d9 43 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3105
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3106
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3107
(declare-fun ?v0!1 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3108
(declare-fun ?v1!0 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3109
(proof
56111
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  3110
(let ((?x78 (+ ?v1!0 ?v0!1)))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  3111
(let (($x90 (>= ?x78 2)))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  3112
(let (($x93 (not $x90)))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  3113
(let (($x87 (= ?x78 2)))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  3114
(let (($x81 (<= ?x78 2)))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  3115
(let (($x84 (not $x81)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3116
(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
  3117
(let (($x74 (not $x73)))
56111
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  3118
(let ((@x80 (rewrite (= (+ ?v0!1 ?v1!0) ?x78))))
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  3119
(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
  3120
(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
  3121
(let ((@x98 (monotonicity @x86 (monotonicity @x80 (= (= (+ ?v0!1 ?v1!0) 2) $x87)) @x95 (= $x73 (or $x84 $x87 $x93)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3122
(let (($x60 (forall ((?v0 Int) (?v1 Int) )(let (($x41 (not (>= (+ ?v0 ?v1) 2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3123
(let ((?x30 (+ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3124
(let (($x32 (= ?x30 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3125
(let (($x46 (not (<= ?x30 2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3126
(or $x46 $x32 $x41))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3127
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3128
(let (($x63 (not $x60)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3129
(let (($x36 (forall ((?v0 Int) (?v1 Int) )(or (< 2 (+ ?v0 ?v1)) (or (= (+ ?v0 ?v1) 2) (< (+ ?v0 ?v1) 2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3130
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3131
(let (($x37 (not $x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3132
(let (($x41 (not (>= (+ ?1 ?0) 2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3133
(let ((?x30 (+ ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3134
(let (($x32 (= ?x30 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3135
(let (($x46 (not (<= ?x30 2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3136
(let (($x55 (or $x46 $x32 $x41)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3137
(let (($x35 (or (< 2 ?x30) (or $x32 (< ?x30 2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3138
(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
  3139
(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
  3140
(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
  3141
(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
  3142
(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
  3143
(let ((@x105 (not-or-elim @x102 (not $x87))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3144
(let ((@x106 (not-or-elim @x102 $x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3145
(let ((@x103 (not-or-elim @x102 $x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3146
(unit-resolution (unit-resolution ((_ th-lemma arith triangle-eq) (or $x87 $x84 $x93)) @x103 (or $x87 $x93)) @x106 @x105 false)))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3147
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3148
7f22e563ec1d8ce90ee01f0d4b366d5b595fcdef 46 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3149
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3150
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3151
(declare-fun ?v0!0 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3152
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3153
(let (($x83 (<= ?v0!0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3154
(let (($x86 (<= ?v0!0 (- 1))))
56111
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  3155
(let (($x87 (not $x86)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3156
(let ((@x105 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x87 $x83)) (hypothesis (not $x83)) $x87)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3157
(let (($x84 (>= ?v0!0 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3158
(let (($x85 (not $x84)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3159
(let (($x88 (ite $x83 $x85 $x87)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3160
(let (($x89 (not $x88)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3161
(let (($x73 (forall ((?v0 Int) )(let (($x58 (not (<= ?v0 (- 1)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3162
(let (($x61 (not (>= ?v0 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3163
(ite (<= ?v0 0) $x61 $x58))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3164
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3165
(let (($x76 (not $x73)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3166
(let (($x34 (forall ((?v0 Int) )(let (($x32 (< ?v0 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3167
(let (($x28 (< 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3168
(ite $x28 (< 0 (+ ?v0 1)) $x32))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3169
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3170
(let (($x35 (not $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3171
(let (($x46 (forall ((?v0 Int) )(let (($x32 (< ?v0 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3172
(let (($x40 (< 0 (+ 1 ?v0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3173
(let (($x28 (< 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3174
(ite $x28 $x40 $x32)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3175
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3176
(let (($x58 (not (<= ?0 (- 1)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3177
(let (($x61 (not (>= ?0 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3178
(let (($x68 (ite (<= ?0 0) $x61 $x58)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3179
(let (($x32 (< ?0 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3180
(let (($x40 (< 0 (+ 1 ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3181
(let (($x28 (< 0 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3182
(let (($x43 (ite $x28 $x40 $x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3183
(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
  3184
(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
  3185
(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
  3186
(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
  3187
(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
  3188
(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
  3189
(let ((@x92 (mp~ (mp (asserted $x35) (trans @x51 @x78 (= $x35 $x76)) $x76) (sk (~ $x76 $x89)) $x89)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3190
(let ((@x108 (unit-resolution (unit-resolution (def-axiom (or $x88 $x83 $x86)) @x92 (or $x83 $x86)) @x105 (hypothesis (not $x83)) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3191
(let ((@x109 (lemma @x108 $x83)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3192
(let ((@x114 (unit-resolution (def-axiom (or $x88 (not $x83) $x84)) @x92 (or (not $x83) $x84))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3193
(unit-resolution @x114 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x85 (not $x83))) @x109 $x85) @x109 false)))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3194
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3195
e566ad249d308c74a627c15c9f02c271a6843a42 31 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3196
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3197
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3198
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3199
(let (($x56 (forall ((?v0 Int) )(let (($x50 (not (<= ?v0 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3200
(let (($x45 (not (>= ?v0 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3201
(or $x45 $x50))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3202
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3203
(let (($x458 (not $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3204
(let (($x153 (<= 0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3205
(let (($x68 (not $x153)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3206
(let (($x158 (>= 0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3207
(let (($x143 (not $x158)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3208
(let (($x154 (or $x143 $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3209
(let (($x119 (or $x458 $x154)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3210
(let ((@x482 (trans (monotonicity (rewrite (= $x153 true)) (= $x68 (not true))) (rewrite (= (not true) false)) (= $x68 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3211
(let ((@x261 (trans (monotonicity (rewrite (= $x158 true)) (= $x143 (not true))) (rewrite (= (not true) false)) (= $x143 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3212
(let ((@x116 (trans (monotonicity @x261 @x482 (= $x154 (or false false))) (rewrite (= (or false false) false)) (= $x154 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3213
(let ((@x463 (trans (monotonicity @x116 (= $x119 (or $x458 false))) (rewrite (= (or $x458 false) $x458)) (= $x119 $x458))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3214
(let ((@x464 (mp ((_ quant-inst 0) $x119) @x463 $x458)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3215
(let (($x50 (not (<= ?0 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3216
(let (($x45 (not (>= ?0 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3217
(let (($x53 (or $x45 $x50)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3218
(let (($x31 (forall ((?v0 Int) )(or (< ?v0 0) (< 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3219
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3220
(let (($x33 (not (ite $x31 false true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3221
(let ((@x55 (monotonicity (rewrite (= (< ?0 0) $x45)) (rewrite (= (< 0 ?0) $x50)) (= (or (< ?0 0) (< 0 ?0)) $x53))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3222
(let ((@x40 (monotonicity (rewrite (= (ite $x31 false true) (not $x31))) (= $x33 (not (not $x31))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3223
(let ((@x60 (trans (trans @x40 (rewrite (= (not (not $x31)) $x31)) (= $x33 $x31)) (quant-intro @x55 (= $x31 $x56)) (= $x33 $x56))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3224
(let ((@x66 (mp~ (mp (asserted $x33) @x60 $x56) (nnf-pos (refl (~ $x53 $x53)) (~ $x56 $x56)) $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3225
(unit-resolution @x66 @x464 false)))))))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3226
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3227
a8cb4a130675f119ab8ba11cbe3a15041f18d2c6 62 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3228
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3229
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3230
(declare-fun ?v0!1 () Int)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3231
(declare-fun z3name!0 () Bool)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3232
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3233
(let ((?x96 (ite z3name!0 (- 1) 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3234
(let (($x99 (<= ?x96 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3235
(let (($x62 (forall ((?v0 Int) )(let (($x56 (not (<= ?v0 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3236
(let (($x51 (not (>= ?v0 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3237
(or $x51 $x56))))
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 ((?x65 (ite $x62 (- 1) 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3240
(let (($x71 (<= ?x65 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3241
(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
  3242
(let ((@x101 (monotonicity (monotonicity (apply-def @x93 (~ $x62 z3name!0)) (= ?x65 ?x96)) (= $x71 $x99))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3243
(let (($x31 (forall ((?v0 Int) )(or (< ?v0 0) (< 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3244
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3245
(let (($x37 (not (< 0 (ite $x31 (- 1) 3)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3246
(let (($x56 (not (<= ?0 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3247
(let (($x51 (not (>= ?0 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3248
(let (($x59 (or $x51 $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3249
(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
  3250
(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
  3251
(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
  3252
(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
  3253
(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
  3254
(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
  3255
(let ((?x42 (ite $x31 (- 1) 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3256
(let (($x45 (< 0 ?x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3257
(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
  3258
(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
  3259
(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
  3260
(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
  3261
(let (($x220 (= ?x96 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3262
(let (($x88 (not z3name!0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3263
(let (($x90 (not $x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3264
(let (($x323 (<= 0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3265
(let (($x533 (not $x323)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3266
(let (($x542 (>= 0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3267
(let (($x179 (not $x542)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3268
(let (($x206 (or $x179 $x533)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3269
(let (($x529 (or $x90 $x206)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3270
(let ((@x522 (trans (monotonicity (rewrite (= $x323 true)) (= $x533 (not true))) (rewrite (= (not true) false)) (= $x533 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3271
(let ((@x200 (trans (monotonicity (rewrite (= $x542 true)) (= $x179 (not true))) (rewrite (= (not true) false)) (= $x179 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3272
(let ((@x528 (trans (monotonicity @x200 @x522 (= $x206 (or false false))) (rewrite (= (or false false) false)) (= $x206 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3273
(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
  3274
(let ((@x238 (mp ((_ quant-inst 0) $x529) @x237 $x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3275
(let (($x89 (or $x88 $x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3276
(let (($x115 (<= ?v0!1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3277
(let (($x116 (not $x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3278
(let (($x113 (>= ?v0!1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3279
(let (($x114 (not $x113)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3280
(let (($x117 (or $x114 $x116)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3281
(let (($x118 (not $x117)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3282
(let (($x121 (or z3name!0 $x118)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3283
(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
  3284
(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
  3285
(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
  3286
(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
  3287
(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
  3288
(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
  3289
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3290
9e0e67e5bd5078ab683d440f1a73c518a403be1b 39 0
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3291
unsat
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3292
((set-logic AUFLIA)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3293
(proof
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3294
(let (($x38 (exists ((?v0 Int) (?v1 Int) (?v2 Int) )(let ((?x33 (- 6)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3295
(let ((?x34 (* ?x33 ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3296
(let ((?x31 (* 4 ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3297
(let ((?x35 (+ ?x31 ?x34)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3298
(= ?x35 1))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3299
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3300
(let (($x29 (not $x38)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3301
(let (($x39 (not $x29)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3302
(let (($x61 (exists ((?v0 Int) (?v1 Int) )(let ((?x58 (* (- 6) ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3303
(let ((?x57 (* 4 ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3304
(let ((?x59 (+ ?x57 ?x58)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3305
(= ?x59 1)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3306
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3307
(let (($x77 (exists ((?v0 Int) (?v1 Int) )false)
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3308
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3309
(let ((@x81 (quant-intro (rewrite (= (= (+ (* 4 ?1) (* (- 6) ?0)) 1) false)) (= $x61 $x77))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3310
(let ((@x85 (trans @x81 (elim-unused (= $x77 false)) (= $x61 false))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3311
(let (($x53 (exists ((?v0 Int) (?v1 Int) (?v2 Int) )(let ((?x44 (* (- 6) ?v1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3312
(let ((?x31 (* 4 ?v0)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3313
(let ((?x47 (+ ?x31 ?x44)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3314
(= ?x47 1)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3315
))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3316
(let ((?x44 (* (- 6) ?1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3317
(let ((?x31 (* 4 ?2)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3318
(let ((?x47 (+ ?x31 ?x44)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3319
(let (($x50 (= ?x47 1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3320
(let ((?x33 (- 6)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3321
(let ((?x34 (* ?x33 ?1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3322
(let ((?x35 (+ ?x31 ?x34)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3323
(let (($x37 (= ?x35 1)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3324
(let ((@x49 (monotonicity (monotonicity (rewrite (= ?x33 (- 6))) (= ?x34 ?x44)) (= ?x35 ?x47))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3325
(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
  3326
(let ((@x71 (monotonicity (monotonicity @x65 (= $x29 (not $x61))) (= $x39 (not (not $x61))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3327
(let ((@x75 (trans @x71 (rewrite (= (not (not $x61)) $x61)) (= $x39 $x61))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3328
(mp (asserted $x39) (trans @x75 @x85 (= $x39 false)) false)))))))))))))))))))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  3329
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3330
7f619f54c20728881b08a920d22e08bbe3d76a4d 52 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3331
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3332
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3333
(declare-fun ?v1!1 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3334
(declare-fun ?v2!0 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3335
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3336
(let ((?x105 (+ ?v2!0 ?v1!1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3337
(let (($x106 (<= ?x105 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3338
(let (($x108 (or (not (and (not (<= ?v1!1 0)) (not (<= ?v2!0 0)))) (not $x106))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3339
(let (($x88 (forall ((?v1 Int) (?v2 Int) )(or (not (and (not (<= ?v1 0)) (not (<= ?v2 0)))) (not (<= (+ ?v2 ?v1) 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3340
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3341
(let (($x91 (not $x88)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3342
(let (($x36 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Int) )(let (($x31 (and (< 0 ?v1) (< 0 ?v2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3343
(=> $x31 (< 0 (+ ?v1 ?v2)))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3344
)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3345
))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3346
(let (($x37 (not $x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3347
(let (($x54 (forall ((?v1 Int) (?v2 Int) )(let ((?x39 (+ ?v2 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3348
(let (($x42 (< 0 ?x39)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3349
(or (not (and (< 0 ?v1) (< 0 ?v2))) $x42))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3350
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3351
(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
  3352
(let ((?x39 (+ ?0 ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3353
(let (($x42 (< 0 ?x39)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3354
(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
  3355
(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
  3356
(let (($x31 (and (< 0 ?1) (< 0 ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3357
(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
  3358
(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
  3359
(let ((@x93 (monotonicity (quant-intro @x87 (= $x54 $x88)) (= (not $x54) $x91))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3360
(let (($x57 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Int) )(let ((?x39 (+ ?v2 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3361
(let (($x42 (< 0 ?x39)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3362
(or (not (and (< 0 ?v1) (< 0 ?v2))) $x42))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3363
)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3364
))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3365
(let (($x35 (forall ((?v1 Int) (?v2 Int) )(let (($x31 (and (< 0 ?v1) (< 0 ?v2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3366
(=> $x31 (< 0 (+ ?v1 ?v2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3367
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3368
(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
  3369
(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
  3370
(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
  3371
(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
  3372
(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
  3373
(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
  3374
(let ((@x118 (not-or-elim @x112 $x106)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3375
(let (($x99 (<= ?v1!1 0)))
56111
5b76e1790c38 updated SMT2 certificates
blanchet
parents: 56109
diff changeset
  3376
(let (($x100 (not $x99)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3377
(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
  3378
(let (($x101 (<= ?v2!0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3379
(let (($x102 (not $x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3380
(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
  3381
((_ th-lemma arith farkas 1 1 1) @x117 @x116 @x118 false)))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3382
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3383
0d380fa4e68ab250e8351813b95695943794f02d 46 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3384
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3385
((set-logic AUFLIRA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3386
(declare-fun ?v1!1 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3387
(declare-fun ?v2!0 () Real)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3388
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3389
(let (($x105 (<= ?v1!1 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3390
(let (($x106 (not $x105)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3391
(let (($x107 (or (not (and (not (<= ?v1!1 0)) (not (<= ?v2!0 0.0)))) $x106)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3392
(let (($x88 (forall ((?v1 Int) (?v2 Real) )(or (not (and (not (<= ?v1 0)) (not (<= ?v2 0.0)))) (not (<= ?v1 (- 1)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3393
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3394
(let (($x91 (not $x88)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3395
(let (($x37 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Real) )(let (($x31 (and (< 0 ?v1) (< 0.0 ?v2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3396
(=> $x31 (< (- 1) ?v1))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3397
)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3398
))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3399
(let (($x27 (not $x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3400
(let (($x54 (forall ((?v1 Int) (?v2 Real) )(let (($x42 (< (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3401
(or (not (and (< 0 ?v1) (< 0.0 ?v2))) $x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3402
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3403
(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
  3404
(let (($x42 (< (- 1) ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3405
(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
  3406
(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
  3407
(let (($x31 (and (< 0 ?1) (< 0.0 ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3408
(let ((@x77 (monotonicity (rewrite (= (< 0 ?1) (not (<= ?1 0)))) (rewrite (= (< 0.0 ?0) (not (<= ?0 0.0)))) (= $x31 (and (not (<= ?1 0)) (not (<= ?0 0.0)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3409
(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
  3410
(let ((@x93 (monotonicity (quant-intro @x87 (= $x54 $x88)) (= (not $x54) $x91))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3411
(let (($x57 (exists ((?v0 Int) )(forall ((?v1 Int) (?v2 Real) )(let (($x42 (< (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3412
(or (not (and (< 0 ?v1) (< 0.0 ?v2))) $x42)))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3413
)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3414
))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3415
(let (($x36 (forall ((?v1 Int) (?v2 Real) )(let (($x31 (and (< 0 ?v1) (< 0.0 ?v2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3416
(=> $x31 (< (- 1) ?v1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3417
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3418
(let ((@x44 (monotonicity (rewrite (= (- 1) (- 1))) (= (< (- 1) ?1) $x42))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3419
(let ((@x47 (monotonicity @x44 (= (=> $x31 (< (- 1) ?1)) (=> $x31 $x42)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3420
(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
  3421
(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
  3422
(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
  3423
(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
  3424
(let ((@x117 (not-or-elim @x111 $x105)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3425
(let (($x99 (<= ?v1!1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3426
(let (($x100 (not $x99)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3427
(let ((@x115 (and-elim (not-or-elim @x111 (and $x100 (not (<= ?v2!0 0.0)))) $x100)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3428
(unit-resolution (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x106 $x99)) @x115 $x106) @x117 false)))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3429
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3430
d9fbfe5a894f4a224aaf7d1fa1f67325ad2e1497 110 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3431
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3432
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3433
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3434
(let (($x152 (forall ((?v0 Int) )(let (($x68 (<= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3435
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3436
(let (($x143 (not false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3437
(let (($x146 (or $x143 $x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3438
(not $x146))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3439
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3440
(let (($x174 (forall ((?v0 Int) )false)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3441
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3442
(let (($x68 (<= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3443
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3444
(let (($x143 (not false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3445
(let (($x146 (or $x143 $x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3446
(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
  3447
(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
  3448
(let ((@x180 (trans (quant-intro @x173 (= $x152 $x174)) (elim-unused (= $x174 false)) (= $x152 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3449
(let (($x122 (forall ((?v0 Int) )(let (($x68 (<= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3450
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3451
(let (($x75 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3452
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3453
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3454
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3455
(let (($x78 (not $x75)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3456
(let (($x81 (or $x78 $x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3457
(not $x81)))))))
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 (($x138 (forall ((?v0 Int) )(let (($x68 (<= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3460
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3461
(let (($x126 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3462
(not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3463
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3464
(not (or (not $x126) $x69))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3465
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3466
(let ((@x156 (trans (rewrite (= $x122 $x138)) (rewrite (= $x138 $x152)) (= $x122 $x152))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3467
(let (($x116 (forall ((?v0 Int) )(let (($x68 (<= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3468
(let (($x75 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3469
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3470
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3471
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3472
(and $x75 $x68))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3473
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3474
(let (($x75 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3475
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3476
(or (not (>= (+ ?v1 (* (- 1) ?0)) 0)) $x69))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3477
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3478
(let (($x78 (not $x75)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3479
(let (($x81 (or $x78 $x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3480
(let (($x104 (not $x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3481
(let (($x113 (and $x75 $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3482
(let (($x107 (forall ((?v0 Int) )(let (($x68 (<= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3483
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3484
(let (($x100 (not $x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3485
(let (($x75 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3486
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3487
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3488
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3489
(and $x75 $x100))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3490
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3491
(let ((@x115 (monotonicity (rewrite (= (not $x69) $x68)) (= (and $x75 (not $x69)) $x113))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3492
(let (($x84 (exists ((?v0 Int) )(let (($x68 (<= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3493
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3494
(let (($x75 (forall ((?v1 Int) )(let (($x68 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3495
(let (($x69 (not $x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3496
(or (not (>= (+ ?v1 (* (- 1) ?v0)) 0)) $x69))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3497
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3498
(let (($x78 (not $x75)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3499
(or $x78 $x69))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3500
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3501
(let (($x87 (not $x84)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3502
(let (($x72 (or (not (>= (+ ?0 (* (- 1) ?1)) 0)) $x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3503
(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
  3504
(let ((@x106 (nnf-neg @x99 (refl (~ (not $x69) (not $x69))) (~ $x104 (and $x75 (not $x69))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3505
(let (($x34 (exists ((?v0 Int) )(let (($x30 (< 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3506
(let (($x32 (forall ((?v1 Int) )(let (($x30 (< 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3507
(let (($x29 (<= ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3508
(=> $x29 $x30))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3509
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3510
(=> $x32 $x30))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3511
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3512
(let (($x35 (not $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3513
(let (($x53 (exists ((?v0 Int) )(let (($x30 (< 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3514
(let (($x41 (forall ((?v1 Int) )(let (($x30 (< 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3515
(or (not (<= ?v0 ?v1)) $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3516
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3517
(or (not $x41) $x30))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3518
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3519
(let (($x30 (< 0 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3520
(let (($x41 (forall ((?v1 Int) )(let (($x30 (< 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3521
(or (not (<= ?0 ?v1)) $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3522
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3523
(let (($x48 (or (not $x41) $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3524
(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
  3525
(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
  3526
(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
  3527
(let ((@x86 (quant-intro (monotonicity @x80 (rewrite (= $x30 $x69)) (= $x48 $x81)) (= $x53 $x84))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3528
(let (($x32 (forall ((?v1 Int) )(let (($x30 (< 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3529
(let (($x29 (<= ?0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3530
(=> $x29 $x30))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3531
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3532
(let (($x33 (=> $x32 $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3533
(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
  3534
(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
  3535
(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
  3536
(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
  3537
(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
  3538
(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
  3539
(mp (mp @x125 @x156 $x152) @x180 false))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3540
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3541
79a22a7943e8703e97ab2cddee03d311bc7ae2a6 36 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3542
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3543
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3544
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3545
(let (($x35 (forall ((?v0 Int) )(let ((?x32 (* 2 a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3546
(let ((?x31 (* 2 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3547
(let (($x33 (< ?x31 ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3548
(let (($x29 (< ?v0 a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3549
(=> $x29 $x33))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3550
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3551
(let (($x36 (not $x35)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3552
(let (($x42 (forall ((?v0 Int) )(let ((?x32 (* 2 a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3553
(let ((?x31 (* 2 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3554
(let (($x33 (< ?x31 ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3555
(let (($x29 (< ?v0 a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3556
(let (($x38 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3557
(or $x38 $x33)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3558
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3559
(let (($x45 (not $x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3560
(let (($x71 (forall ((?v0 Int) )true)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3561
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3562
(let ((?x32 (* 2 a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3563
(let ((?x31 (* 2 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3564
(let (($x33 (< ?x31 ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3565
(let (($x29 (< ?0 a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3566
(let (($x38 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3567
(let (($x39 (or $x38 $x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3568
(let (($x50 (>= (+ ?0 (* (- 1) a$)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3569
(let (($x49 (not $x50)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3570
(let ((@x61 (trans (monotonicity (rewrite (= $x29 $x49)) (= $x38 (not $x49))) (rewrite (= (not $x49) $x50)) (= $x38 $x50))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3571
(let ((@x66 (monotonicity @x61 (rewrite (= $x33 $x49)) (= $x39 (or $x50 $x49)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3572
(let ((@x73 (quant-intro (trans @x66 (rewrite (= (or $x50 $x49) true)) (= $x39 true)) (= $x42 $x71))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3573
(let ((@x80 (monotonicity (trans @x73 (elim-unused (= $x71 true)) (= $x42 true)) (= $x45 (not true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3574
(let ((@x84 (trans @x80 (rewrite (= (not true) false)) (= $x45 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3575
(let ((@x47 (monotonicity (quant-intro (rewrite (= (=> $x29 $x33) $x39)) (= $x35 $x42)) (= $x36 $x45))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3576
(mp (asserted $x36) (trans @x47 @x84 (= $x36 false)) false))))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3577
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3578
ae4f4fb9c10608b8e3b893cc6c99e3ec5d13a86c 24 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3579
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3580
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3581
(declare-fun ?v1!0 () Int)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3582
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3583
(let (($x64 (>= ?v1!0 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3584
(let (($x52 (forall ((?v1 Int) )(or (not (<= ?v1 0)) (not (>= ?v1 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3585
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3586
(let (($x55 (not $x52)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3587
(let (($x33 (forall ((?v0 Int) (?v1 Int) )(or (< 0 ?v1) (< ?v1 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3588
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3589
(let (($x27 (not $x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3590
(let (($x35 (forall ((?v1 Int) )(or (< 0 ?v1) (< ?v1 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3591
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3592
(let (($x32 (or (< 0 ?0) (< ?0 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3593
(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
  3594
(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
  3595
(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
  3596
(let ((@x70 (mp~ (mp (asserted $x27) @x59 $x55) (sk (~ $x55 (not (or (not (<= ?v1!0 0)) (not $x64))))) (not (or (not (<= ?v1!0 0)) (not $x64))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3597
(let ((@x74 (not-or-elim @x70 $x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3598
(let (($x65 (not $x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3599
(let (($x62 (<= ?v1!0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3600
(let ((@x73 (not-or-elim @x70 $x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3601
(unit-resolution (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x65 (not $x62))) @x73 $x65) @x74 false))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3602
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3603
d98ad8f668dead6f610669a52351ea0176a811b0 26 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3604
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3605
((set-logic <null>)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3606
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3607
(let (($x58 (<= b$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3608
(let (($x62 (or (not (and (not (<= a$ 0)) (not (<= (* a$ b$) 0)))) (not $x58))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3609
(let (($x65 (not $x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3610
(let (($x35 (not (=> (and (< 0 a$) (< 0 (* a$ b$))) (< 0 b$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3611
(let (($x33 (< 0 b$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3612
(let (($x38 (or (not (and (< 0 a$) (< 0 (* a$ b$)))) $x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3613
(let (($x56 (= (not (and (< 0 a$) (< 0 (* a$ b$)))) (not (and (not (<= a$ 0)) (not (<= (* a$ b$) 0)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3614
(let ((?x30 (* a$ b$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3615
(let (($x48 (<= ?x30 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3616
(let (($x49 (not $x48)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3617
(let (($x44 (<= a$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3618
(let (($x45 (not $x44)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3619
(let (($x52 (and $x45 $x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3620
(let (($x32 (and (< 0 a$) (< 0 ?x30))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3621
(let ((@x54 (monotonicity (rewrite (= (< 0 a$) $x45)) (rewrite (= (< 0 ?x30) $x49)) (= $x32 $x52))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3622
(let ((@x64 (monotonicity (monotonicity @x54 $x56) (rewrite (= $x33 (not $x58))) (= $x38 $x62))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3623
(let ((@x43 (monotonicity (rewrite (= (=> $x32 $x33) $x38)) (= $x35 (not $x38)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3624
(let ((@x69 (trans @x43 (monotonicity @x64 (= (not $x38) $x65)) (= $x35 $x65))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3625
(let ((@x74 (not-or-elim (mp (asserted $x35) @x69 $x65) $x58)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3626
(let ((@x72 (and-elim (not-or-elim (mp (asserted $x35) @x69 $x65) $x52) $x45)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3627
(let ((@x73 (and-elim (not-or-elim (mp (asserted $x35) @x69 $x65) $x52) $x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3628
((_ th-lemma arith farkas 1 1 1) @x73 @x72 @x74 false))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3629
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3630
271390ea915947de195c2202e30f90bb84689d60 26 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3631
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3632
((set-logic <null>)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3633
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3634
(let ((?x35 (+ y$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3635
(let ((?x36 (* a$ ?x35)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3636
(let ((?x34 (* a$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3637
(let ((?x37 (+ ?x34 ?x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3638
(let ((?x30 (+ x$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3639
(let ((?x32 (+ ?x30 y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3640
(let ((?x33 (* a$ ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3641
(let (($x38 (= ?x33 ?x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3642
(let (($x39 (not $x38)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3643
(let (($x82 (= (= (+ a$ ?x34 (* a$ y$)) (+ a$ ?x34 (* a$ y$))) true)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3644
(let (($x80 (= $x38 (= (+ a$ ?x34 (* a$ y$)) (+ a$ ?x34 (* a$ y$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3645
(let ((@x76 (rewrite (= (+ ?x34 (+ a$ (* a$ y$))) (+ a$ ?x34 (* a$ y$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3646
(let ((@x66 (monotonicity (rewrite (= ?x35 (+ 1 y$))) (= ?x36 (* a$ (+ 1 y$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3647
(let ((@x71 (trans @x66 (rewrite (= (* a$ (+ 1 y$)) (+ a$ (* a$ y$)))) (= ?x36 (+ a$ (* a$ y$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3648
(let ((@x78 (trans (monotonicity @x71 (= ?x37 (+ ?x34 (+ a$ (* a$ y$))))) @x76 (= ?x37 (+ a$ ?x34 (* a$ y$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3649
(let ((@x58 (rewrite (= (* a$ (+ 1 x$ y$)) (+ a$ ?x34 (* a$ y$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3650
(let ((@x46 (monotonicity (rewrite (= ?x30 (+ 1 x$))) (= ?x32 (+ (+ 1 x$) y$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3651
(let ((@x51 (trans @x46 (rewrite (= (+ (+ 1 x$) y$) (+ 1 x$ y$))) (= ?x32 (+ 1 x$ y$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3652
(let ((@x60 (trans (monotonicity @x51 (= ?x33 (* a$ (+ 1 x$ y$)))) @x58 (= ?x33 (+ a$ ?x34 (* a$ y$))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3653
(let ((@x88 (monotonicity (trans (monotonicity @x60 @x78 $x80) (rewrite $x82) (= $x38 true)) (= $x39 (not true)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3654
(let ((@x92 (trans @x88 (rewrite (= (not true) false)) (= $x39 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3655
(mp (asserted $x39) @x92 false))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3656
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3657
b216c79478e44396acca3654b76845499fc18a04 23 0
56109
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  3658
unsat
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  3659
((set-logic <null>)
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  3660
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3661
(let ((?x36 (* 2.0 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3662
(let ((?x37 (* ?x36 y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3663
(let ((?x32 (- 1.0 y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3664
(let ((?x33 (* x$ ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3665
(let ((?x30 (+ 1.0 y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3666
(let ((?x31 (* x$ ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3667
(let ((?x34 (- ?x31 ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3668
(let (($x38 (= ?x34 ?x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3669
(let (($x39 (not $x38)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3670
(let ((@x73 (rewrite (= (= (* 2.0 (* x$ y$)) (* 2.0 (* x$ y$))) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3671
(let ((?x41 (* x$ y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3672
(let ((?x63 (* 2.0 ?x41)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3673
(let ((@x56 (rewrite (= (* x$ (+ 1.0 (* (- 1.0) y$))) (+ x$ (* (- 1.0) ?x41))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3674
(let ((@x52 (monotonicity (rewrite (= ?x32 (+ 1.0 (* (- 1.0) y$)))) (= ?x33 (* x$ (+ 1.0 (* (- 1.0) y$)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3675
(let ((@x61 (monotonicity (rewrite (= ?x31 (+ x$ ?x41))) (trans @x52 @x56 (= ?x33 (+ x$ (* (- 1.0) ?x41)))) (= ?x34 (- (+ x$ ?x41) (+ x$ (* (- 1.0) ?x41)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3676
(let ((@x66 (trans @x61 (rewrite (= (- (+ x$ ?x41) (+ x$ (* (- 1.0) ?x41))) ?x63)) (= ?x34 ?x63))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3677
(let ((@x75 (trans (monotonicity @x66 (rewrite (= ?x37 ?x63)) (= $x38 (= ?x63 ?x63))) @x73 (= $x38 true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3678
(let ((@x82 (trans (monotonicity @x75 (= $x39 (not true))) (rewrite (= (not true) false)) (= $x39 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3679
(mp (asserted $x39) @x82 false)))))))))))))))))))))
56109
1ba56358eba4 updated SMT example certificates
blanchet
parents: 56079
diff changeset
  3680
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3681
9df6daf3cc37f0807bf370ee01536b85d300ecce 51 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3682
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3683
((set-logic <null>)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3684
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3685
(let ((?x47 (+ b$ d$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3686
(let ((?x48 (+ ?x47 e$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3687
(let ((?x30 (+ 1 p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3688
(let ((?x49 (* ?x30 ?x48)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3689
(let ((?x44 (* d$ p$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3690
(let ((?x42 (* ?x30 d$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3691
(let ((?x33 (+ b$ e$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3692
(let ((?x40 (* 2 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3693
(let ((?x41 (* ?x40 ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3694
(let ((?x43 (+ ?x41 ?x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3695
(let ((?x45 (+ ?x43 ?x44)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3696
(let ((?x46 (+ u$ ?x45)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3697
(let ((?x50 (- ?x46 ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3698
(let ((?x37 (* p$ d$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3699
(let ((?x34 (* ?x30 ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3700
(let ((?x35 (+ u$ ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3701
(let ((?x38 (+ ?x35 ?x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3702
(let (($x51 (= ?x38 ?x50)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3703
(let (($x52 (not $x51)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3704
(let ((?x55 (* p$ e$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3705
(let ((?x54 (* p$ b$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3706
(let ((?x70 (+ u$ b$ e$ ?x37 ?x54 ?x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3707
(let ((?x127 (+ b$ e$ d$ ?x37 ?x54 ?x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3708
(let ((?x85 (* 2 ?x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3709
(let ((?x83 (* 2 ?x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3710
(let ((?x84 (* 2 e$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3711
(let ((?x82 (* 2 b$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3712
(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
  3713
(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
  3714
(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
  3715
(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
  3716
(let ((?x108 (+ ?x82 ?x84 d$ (* 2 ?x37) ?x83 ?x85)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3717
(let ((?x97 (+ ?x82 ?x84 d$ ?x37 ?x83 ?x85)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3718
(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
  3719
(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
  3720
(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
  3721
(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
  3722
(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
  3723
(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
  3724
(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
  3725
(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
  3726
(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
  3727
(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
  3728
(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
  3729
(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
  3730
(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
  3731
(mp (asserted $x52) @x152 false)))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3732
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3733
49c385b161a0c500f84c45f85272a8ec9574fef4 126 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3734
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3735
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3736
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3737
(let ((?x29 (of_nat$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3738
(let ((?x30 (* 2 ?x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3739
(let ((?x31 (nat$ ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3740
(let ((?x212 (of_nat$ ?x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3741
(let ((?x532 (* (- 1) ?x212)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3742
(let ((?x533 (+ ?x30 ?x532)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3743
(let (($x513 (<= ?x533 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3744
(let (($x531 (= ?x533 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3745
(let (($x193 (>= ?x29 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3746
(let (($x487 (>= ?x212 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3747
(let (($x485 (= ?x212 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3748
(let ((?x33 (nat$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3749
(let ((?x504 (of_nat$ ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3750
(let (($x505 (= ?x504 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3751
(let (($x546 (forall ((?v0 Int) )(!(let ((?x49 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3752
(let ((?x50 (of_nat$ ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3753
(let (($x51 (= ?x50 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3754
(let (($x64 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3755
(let (($x65 (not $x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3756
(or $x65 $x51)))))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3757
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3758
(let (($x71 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3759
(let ((?x50 (of_nat$ ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3760
(let (($x51 (= ?x50 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3761
(let (($x64 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3762
(let (($x65 (not $x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3763
(or $x65 $x51)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3764
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3765
(let ((?x49 (nat$ ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3766
(let ((?x50 (of_nat$ ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3767
(let (($x51 (= ?x50 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3768
(let (($x64 (>= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3769
(let (($x65 (not $x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3770
(let (($x68 (or $x65 $x51)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3771
(let (($x53 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3772
(let ((?x50 (of_nat$ ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3773
(let (($x51 (= ?x50 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3774
(let (($x48 (<= 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3775
(=> $x48 $x51))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3776
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3777
(let (($x59 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3778
(let ((?x50 (of_nat$ ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3779
(let (($x51 (= ?x50 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3780
(or (not (<= 0 ?v0)) $x51)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3781
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3782
(let ((@x67 (monotonicity (rewrite (= (<= 0 ?0) $x64)) (= (not (<= 0 ?0)) $x65))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3783
(let ((@x73 (quant-intro (monotonicity @x67 (= (or (not (<= 0 ?0)) $x51) $x68)) (= $x59 $x71))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3784
(let ((@x58 (rewrite (= (=> (<= 0 ?0) $x51) (or (not (<= 0 ?0)) $x51)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3785
(let ((@x76 (mp (asserted $x53) (trans (quant-intro @x58 (= $x53 $x59)) @x73 (= $x53 $x71)) $x71)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3786
(let ((@x551 (mp (mp~ @x76 (nnf-pos (refl (~ $x68 $x68)) (~ $x71 $x71)) $x71) (quant-intro (refl (= $x68 $x68)) (= $x71 $x546)) $x546)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3787
(let (($x526 (not $x546)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3788
(let (($x489 (or $x526 $x505)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3789
(let ((@x506 (rewrite (= (>= 1 0) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3790
(let ((@x219 (trans (monotonicity @x506 (= (not (>= 1 0)) (not true))) (rewrite (= (not true) false)) (= (not (>= 1 0)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3791
(let ((@x223 (monotonicity @x219 (= (or (not (>= 1 0)) $x505) (or false $x505)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3792
(let ((@x503 (trans @x223 (rewrite (= (or false $x505) $x505)) (= (or (not (>= 1 0)) $x505) $x505))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3793
(let ((@x493 (monotonicity @x503 (= (or $x526 (or (not (>= 1 0)) $x505)) $x489))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3794
(let ((@x496 (trans @x493 (rewrite (= $x489 $x489)) (= (or $x526 (or (not (>= 1 0)) $x505)) $x489))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3795
(let ((@x497 (mp ((_ quant-inst 1) (or $x526 (or (not (>= 1 0)) $x505))) @x496 $x489)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3796
(let (($x34 (= ?x31 ?x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3797
(let ((@x42 (mp (asserted (not (not $x34))) (rewrite (= (not (not $x34)) $x34)) $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3798
(let ((@x356 (trans (monotonicity @x42 (= ?x212 ?x504)) (unit-resolution @x497 @x551 $x505) $x485)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3799
(let ((@x371 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x487) (not (<= ?x212 0)))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x485) $x487)) @x356 $x487) (not (<= ?x212 0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3800
(let ((@x374 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x212 0)) (<= ?x212 0))) @x371 (not (= ?x212 0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3801
(let (($x515 (= ?x212 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3802
(let (($x517 (or $x193 $x515)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3803
(let (($x552 (forall ((?v0 Int) )(!(let ((?x49 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3804
(let ((?x50 (of_nat$ ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3805
(let (($x78 (= ?x50 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3806
(let (($x64 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3807
(or $x64 $x78))))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3808
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3809
(let (($x101 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3810
(let ((?x50 (of_nat$ ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3811
(let (($x78 (= ?x50 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3812
(let (($x64 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3813
(or $x64 $x78))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3814
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3815
(let ((@x556 (quant-intro (refl (= (or $x64 (= ?x50 0)) (or $x64 (= ?x50 0)))) (= $x101 $x552))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3816
(let ((@x120 (nnf-pos (refl (~ (or $x64 (= ?x50 0)) (or $x64 (= ?x50 0)))) (~ $x101 $x101))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3817
(let (($x80 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3818
(let ((?x50 (of_nat$ ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3819
(let (($x78 (= ?x50 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3820
(let (($x77 (< ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3821
(=> $x77 $x78))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3822
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3823
(let (($x86 (forall ((?v0 Int) )(let ((?x49 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3824
(let ((?x50 (of_nat$ ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3825
(let (($x78 (= ?x50 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3826
(let (($x77 (< ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3827
(let (($x82 (not $x77)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3828
(or $x82 $x78)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3829
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3830
(let (($x78 (= ?x50 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3831
(let (($x98 (or $x64 $x78)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3832
(let (($x77 (< ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3833
(let (($x82 (not $x77)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3834
(let (($x83 (or $x82 $x78)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3835
(let ((@x97 (trans (monotonicity (rewrite (= $x77 $x65)) (= $x82 (not $x65))) (rewrite (= (not $x65) $x64)) (= $x82 $x64))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3836
(let ((@x105 (trans (quant-intro (rewrite (= (=> $x77 $x78) $x83)) (= $x80 $x86)) (quant-intro (monotonicity @x97 (= $x83 $x98)) (= $x86 $x101)) (= $x80 $x101))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3837
(let ((@x557 (mp (mp~ (mp (asserted $x80) @x105 $x101) @x120 $x101) @x556 $x552)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3838
(let (($x156 (not $x552)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3839
(let (($x520 (or $x156 $x193 $x515)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3840
(let ((@x530 (rewrite (= (>= ?x30 0) $x193))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3841
(let ((@x523 (monotonicity (monotonicity @x530 (= (or (>= ?x30 0) $x515) $x517)) (= (or $x156 (or (>= ?x30 0) $x515)) (or $x156 $x517)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3842
(let ((@x215 (trans @x523 (rewrite (= (or $x156 $x517) $x520)) (= (or $x156 (or (>= ?x30 0) $x515)) $x520))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3843
(let ((@x229 (mp ((_ quant-inst (* 2 ?x29)) (or $x156 (or (>= ?x30 0) $x515))) @x215 $x520)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3844
(let (($x185 (not $x193)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3845
(let (($x534 (or $x185 $x531)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3846
(let (($x188 (or $x526 $x185 $x531)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3847
(let (($x213 (= ?x212 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3848
(let (($x208 (>= ?x30 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3849
(let (($x209 (not $x208)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3850
(let (($x214 (or $x209 $x213)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3851
(let (($x189 (or $x526 $x214)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3852
(let ((@x536 (monotonicity (monotonicity @x530 (= $x209 $x185)) (rewrite (= $x213 $x531)) (= $x214 $x534))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3853
(let ((@x175 (trans (monotonicity @x536 (= $x189 (or $x526 $x534))) (rewrite (= (or $x526 $x534) $x188)) (= $x189 $x188))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3854
(let ((@x176 (mp ((_ quant-inst (* 2 ?x29)) $x189) @x175 $x188)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3855
(let ((@x470 (unit-resolution (unit-resolution @x176 @x551 $x534) (unit-resolution (unit-resolution @x229 @x557 $x517) @x374 $x193) $x531)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3856
(let (($x514 (>= ?x533 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3857
(let (($x486 (<= ?x212 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3858
((_ th-lemma arith gcd-test -1/2 -1/2 -1/2 -1/2) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x485) $x487)) @x356 $x487) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x485) $x486)) @x356 $x486) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x531) $x514)) @x470 $x514) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x531) $x513)) @x470 $x513) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3859
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3860
1c2b6530334930f2f4f6e0d6b73f1d249b6c5fd8 22 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3861
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3862
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3863
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3864
(let ((?x28 (of_nat$ a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3865
(let (($x57 (>= ?x28 4)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3866
(let (($x64 (not (or (>= ?x28 3) (not $x57)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3867
(let (($x34 (< (* 2 ?x28) 7)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3868
(let (($x30 (< ?x28 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3869
(let (($x38 (not $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3870
(let (($x39 (or $x38 $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3871
(let ((@x51 (monotonicity (rewrite (= $x30 (not (>= ?x28 3)))) (= $x38 (not (not (>= ?x28 3)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3872
(let ((@x55 (trans @x51 (rewrite (= (not (not (>= ?x28 3))) (>= ?x28 3))) (= $x38 (>= ?x28 3)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3873
(let ((@x63 (monotonicity @x55 (rewrite (= $x34 (not $x57))) (= $x39 (or (>= ?x28 3) (not $x57))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3874
(let ((@x44 (monotonicity (rewrite (= (=> $x30 $x34) $x39)) (= (not (=> $x30 $x34)) (not $x39)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3875
(let ((@x68 (trans @x44 (monotonicity @x63 (= (not $x39) $x64)) (= (not (=> $x30 $x34)) $x64))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3876
(let ((@x71 (not-or-elim (mp (asserted (not (=> $x30 $x34))) @x68 $x64) $x57)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3877
(let (($x58 (not $x57)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3878
(let (($x47 (>= ?x28 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3879
(let (($x45 (not $x47)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3880
(let ((@x70 (not-or-elim (mp (asserted (not (=> $x30 $x34))) @x68 $x64) $x45)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3881
(unit-resolution (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x58 $x47)) @x70 $x58) @x71 false))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3882
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  3883
995f80f06d5874ea2208846fb3b3217c3a3b9bfd 147 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3884
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3885
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  3886
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3887
(let ((?x29 (of_nat$ y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3888
(let ((?x30 (+ 1 ?x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3889
(let ((?x31 (nat$ ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3890
(let ((?x32 (of_nat$ ?x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3891
(let ((?x43 (* (- 1) ?x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3892
(let ((?x44 (+ ?x43 ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3893
(let ((?x47 (nat$ ?x44)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3894
(let ((?x50 (of_nat$ ?x47)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3895
(let ((?x567 (* (- 1) ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3896
(let ((?x255 (+ ?x29 ?x567 ?x50)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3897
(let (($x513 (>= ?x255 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3898
(let (($x532 (= ?x255 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3899
(let ((?x568 (+ ?x29 ?x567)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3900
(let (($x248 (<= ?x568 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3901
(let (($x551 (<= ?x568 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3902
(let (($x558 (= ?x568 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3903
(let (($x229 (>= ?x29 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3904
(let (($x387 (>= ?x29 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3905
(let ((?x154 (nat$ ?x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3906
(let ((?x388 (of_nat$ ?x154)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3907
(let (($x352 (= ?x388 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3908
(let (($x498 (or $x387 $x352)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3909
(let (($x584 (forall ((?v0 Int) )(!(let ((?x81 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3910
(let ((?x82 (of_nat$ ?x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3911
(let (($x110 (= ?x82 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3912
(let (($x95 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3913
(or $x95 $x110))))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3914
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3915
(let (($x133 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3916
(let ((?x82 (of_nat$ ?x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3917
(let (($x110 (= ?x82 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3918
(let (($x95 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3919
(or $x95 $x110))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3920
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3921
(let ((?x81 (nat$ ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3922
(let ((?x82 (of_nat$ ?x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3923
(let (($x110 (= ?x82 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3924
(let (($x95 (>= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3925
(let (($x130 (or $x95 $x110)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3926
(let (($x112 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3927
(let ((?x82 (of_nat$ ?x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3928
(let (($x110 (= ?x82 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3929
(let (($x109 (< ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3930
(=> $x109 $x110))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3931
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3932
(let (($x118 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3933
(let ((?x82 (of_nat$ ?x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3934
(let (($x110 (= ?x82 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3935
(let (($x109 (< ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3936
(let (($x114 (not $x109)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3937
(or $x114 $x110)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3938
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3939
(let ((@x125 (monotonicity (rewrite (= (< ?0 0) (not $x95))) (= (not (< ?0 0)) (not (not $x95))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3940
(let ((@x129 (trans @x125 (rewrite (= (not (not $x95)) $x95)) (= (not (< ?0 0)) $x95))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3941
(let ((@x135 (quant-intro (monotonicity @x129 (= (or (not (< ?0 0)) $x110) $x130)) (= $x118 $x133))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3942
(let ((@x117 (rewrite (= (=> (< ?0 0) $x110) (or (not (< ?0 0)) $x110)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3943
(let ((@x138 (mp (asserted $x112) (trans (quant-intro @x117 (= $x112 $x118)) @x135 (= $x112 $x133)) $x133)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3944
(let ((@x589 (mp (mp~ @x138 (nnf-pos (refl (~ $x130 $x130)) (~ $x133 $x133)) $x133) (quant-intro (refl (= $x130 $x130)) (= $x133 $x584)) $x584)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3945
(let (($x555 (not $x584)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3946
(let (($x500 (or $x555 $x387 $x352)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3947
(let ((@x404 (mp ((_ quant-inst (of_nat$ y$)) (or $x555 $x498)) (rewrite (= (or $x555 $x498) $x500)) $x500)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3948
(let ((@x487 (unit-resolution (unit-resolution @x404 @x589 $x498) (hypothesis (not $x387)) $x352)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3949
(let (($x239 (= ?x154 y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3950
(let (($x570 (forall ((?v0 Nat$) )(!(= (nat$ (of_nat$ ?v0)) ?v0) :pattern ( (of_nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3951
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3952
(let (($x77 (forall ((?v0 Nat$) )(= (nat$ (of_nat$ ?v0)) ?v0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3953
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3954
(let ((@x575 (trans (rewrite (= $x77 $x570)) (rewrite (= $x570 $x570)) (= $x77 $x570))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3955
(let ((@x144 (refl (~ (= (nat$ (of_nat$ ?0)) ?0) (= (nat$ (of_nat$ ?0)) ?0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3956
(let ((@x576 (mp (mp~ (asserted $x77) (nnf-pos @x144 (~ $x77 $x77)) $x77) @x575 $x570)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3957
(let (($x241 (not $x570)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3958
(let (($x231 (or $x241 $x239)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3959
(let ((@x242 ((_ quant-inst y$) $x231)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3960
(let ((@x475 (monotonicity (symm (unit-resolution @x242 @x576 $x239) (= y$ ?x154)) (= ?x29 ?x388))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3961
(let ((@x480 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x29 0)) $x387)) (hypothesis (not $x387)) (trans @x475 @x487 (= ?x29 0)) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3962
(let ((@x468 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x387) $x229)) (lemma @x480 $x387) $x229)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3963
(let (($x564 (not $x229)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3964
(let (($x559 (or $x564 $x558)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3965
(let (($x578 (forall ((?v0 Int) )(!(let ((?x81 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3966
(let ((?x82 (of_nat$ ?x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3967
(let (($x83 (= ?x82 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3968
(let (($x95 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3969
(let (($x97 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3970
(or $x97 $x83)))))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3971
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3972
(let (($x103 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3973
(let ((?x82 (of_nat$ ?x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3974
(let (($x83 (= ?x82 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3975
(let (($x95 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3976
(let (($x97 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3977
(or $x97 $x83)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3978
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3979
(let ((@x580 (refl (= (or (not $x95) (= ?x82 ?0)) (or (not $x95) (= ?x82 ?0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3980
(let ((@x139 (refl (~ (or (not $x95) (= ?x82 ?0)) (or (not $x95) (= ?x82 ?0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3981
(let (($x85 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3982
(let ((?x82 (of_nat$ ?x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3983
(let (($x83 (= ?x82 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3984
(let (($x80 (<= 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3985
(=> $x80 $x83))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3986
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3987
(let (($x91 (forall ((?v0 Int) )(let ((?x81 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3988
(let ((?x82 (of_nat$ ?x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3989
(let (($x83 (= ?x82 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3990
(or (not (<= 0 ?v0)) $x83)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3991
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3992
(let (($x83 (= ?x82 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3993
(let (($x97 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3994
(let (($x100 (or $x97 $x83)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3995
(let (($x88 (or (not (<= 0 ?0)) $x83)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3996
(let ((@x99 (monotonicity (rewrite (= (<= 0 ?0) $x95)) (= (not (<= 0 ?0)) $x97))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3997
(let ((@x93 (quant-intro (rewrite (= (=> (<= 0 ?0) $x83) $x88)) (= $x85 $x91))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3998
(let ((@x107 (trans @x93 (quant-intro (monotonicity @x99 (= $x88 $x100)) (= $x91 $x103)) (= $x85 $x103))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  3999
(let ((@x148 (mp~ (mp (asserted $x85) @x107 $x103) (nnf-pos @x139 (~ $x103 $x103)) $x103)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4000
(let ((@x583 (mp @x148 (quant-intro @x580 (= $x103 $x578)) $x578)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4001
(let (($x202 (not $x578)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4002
(let (($x544 (or $x202 $x564 $x558)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4003
(let (($x557 (or (not (>= ?x30 0)) (= ?x32 ?x30))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4004
(let (($x205 (or $x202 $x557)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4005
(let ((@x566 (monotonicity (rewrite (= (>= ?x30 0) $x229)) (= (not (>= ?x30 0)) $x564))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4006
(let ((@x560 (monotonicity @x566 (rewrite (= (= ?x32 ?x30) $x558)) (= $x557 $x559))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4007
(let ((@x549 (trans (monotonicity @x560 (= $x205 (or $x202 $x559))) (rewrite (= (or $x202 $x559) $x544)) (= $x205 $x544))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4008
(let ((@x550 (mp ((_ quant-inst (+ 1 ?x29)) $x205) @x549 $x544)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4009
(let ((@x453 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x558) $x551)) (unit-resolution (unit-resolution @x550 @x583 $x559) @x468 $x558) $x551)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4010
(let (($x251 (not $x248)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4011
(let (($x535 (or $x251 $x532)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4012
(let (($x523 (or $x202 $x251 $x532)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4013
(let (($x541 (or (not (>= ?x44 0)) (= ?x50 ?x44))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4014
(let (($x524 (or $x202 $x541)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4015
(let ((@x531 (monotonicity (rewrite (= (>= ?x44 0) $x248)) (= (not (>= ?x44 0)) $x251))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4016
(let ((@x522 (monotonicity @x531 (rewrite (= (= ?x50 ?x44) $x532)) (= $x541 $x535))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4017
(let ((@x369 (trans (monotonicity @x522 (= $x524 (or $x202 $x535))) (rewrite (= (or $x202 $x535) $x523)) (= $x524 $x523))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4018
(let ((@x511 (mp ((_ quant-inst (+ ?x43 ?x32)) $x524) @x369 $x523)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4019
(let ((@x459 (unit-resolution (unit-resolution @x511 @x583 $x535) (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x551) $x248)) @x453 $x248) $x532)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4020
(let (($x59 (<= ?x50 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4021
(let ((@x65 (monotonicity (rewrite (= (< 0 ?x50) (not $x59))) (= (not (< 0 ?x50)) (not (not $x59))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4022
(let ((@x69 (trans @x65 (rewrite (= (not (not $x59)) $x59)) (= (not (< 0 ?x50)) $x59))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4023
(let (($x53 (< 0 ?x50)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4024
(let (($x56 (not $x53)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4025
(let (($x38 (not (< (* 0 ?x32) (of_nat$ (nat$ (- ?x32 ?x29)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4026
(let ((@x49 (monotonicity (rewrite (= (- ?x32 ?x29) ?x44)) (= (nat$ (- ?x32 ?x29)) ?x47))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4027
(let ((@x55 (monotonicity (rewrite (= (* 0 ?x32) 0)) (monotonicity @x49 (= (of_nat$ (nat$ (- ?x32 ?x29))) ?x50)) (= (< (* 0 ?x32) (of_nat$ (nat$ (- ?x32 ?x29)))) $x53))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4028
(let ((@x72 (mp (asserted $x38) (trans (monotonicity @x55 (= $x38 $x56)) @x69 (= $x38 $x59)) $x59)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4029
((_ th-lemma arith farkas -1 -1 1) @x72 @x453 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x532) $x513)) @x459 $x513) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4030
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4031
5d99a07ea08069a53b86d7f3330815887331e82a 145 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4032
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4033
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4034
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4035
(let ((?x29 (of_nat$ y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4036
(let ((?x30 (+ 1 ?x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4037
(let ((?x31 (nat$ ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4038
(let ((?x32 (of_nat$ ?x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4039
(let ((?x48 (+ (- 1) ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4040
(let ((?x51 (nat$ ?x48)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4041
(let ((?x585 (of_nat$ ?x51)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4042
(let ((?x299 (* (- 1) ?x585)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4043
(let ((?x434 (+ ?x29 ?x299)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4044
(let (($x436 (>= ?x434 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4045
(let (($x558 (= ?x29 ?x585)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4046
(let (($x54 (= ?x51 y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4047
(let (($x88 (<= ?x32 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4048
(let (($x98 (not (or (= (not $x88) $x54) (not $x88)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4049
(let (($x40 (=> (not (ite (< 0 ?x32) true false)) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4050
(let (($x33 (< 0 ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4051
(let (($x34 (ite $x33 true false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4052
(let (($x38 (= $x34 (= (nat$ (- ?x32 1)) y$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4053
(let (($x42 (or false (or $x38 $x40))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4054
(let (($x43 (not $x42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4055
(let (($x60 (= $x33 $x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4056
(let (($x75 (or $x60 $x33)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4057
(let ((@x94 (monotonicity (rewrite (= $x33 (not $x88))) (= $x60 (= (not $x88) $x54)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4058
(let ((@x97 (monotonicity @x94 (rewrite (= $x33 (not $x88))) (= $x75 (or (= (not $x88) $x54) (not $x88))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4059
(let ((@x70 (monotonicity (monotonicity (rewrite (= $x34 $x33)) (= (not $x34) (not $x33))) (= $x40 (=> (not $x33) false)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4060
(let ((@x74 (trans @x70 (rewrite (= (=> (not $x33) false) $x33)) (= $x40 $x33))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4061
(let ((@x53 (monotonicity (rewrite (= (- ?x32 1) ?x48)) (= (nat$ (- ?x32 1)) ?x51))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4062
(let ((@x59 (monotonicity (rewrite (= $x34 $x33)) (monotonicity @x53 (= (= (nat$ (- ?x32 1)) y$) $x54)) (= $x38 (= $x33 $x54)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4063
(let ((@x77 (monotonicity (trans @x59 (rewrite (= (= $x33 $x54) $x60)) (= $x38 $x60)) @x74 (= (or $x38 $x40) $x75))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4064
(let ((@x84 (trans (monotonicity @x77 (= $x42 (or false $x75))) (rewrite (= (or false $x75) $x75)) (= $x42 $x75))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4065
(let ((@x102 (trans (monotonicity @x84 (= $x43 (not $x75))) (monotonicity @x97 (= (not $x75) $x98)) (= $x43 $x98))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4066
(let ((@x106 (not-or-elim (mp (asserted $x43) @x102 $x98) $x88)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4067
(let ((@x187 (monotonicity (iff-true @x106 (= $x88 true)) (= (= $x88 $x54) (= true $x54)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4068
(let ((@x191 (trans @x187 (rewrite (= (= true $x54) $x54)) (= (= $x88 $x54) $x54))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4069
(let (($x173 (= $x88 $x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4070
(let ((@x105 (not-or-elim (mp (asserted $x43) @x102 $x98) (not (= (not $x88) $x54)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4071
(let ((@x192 (mp (mp @x105 (rewrite (= (not (= (not $x88) $x54)) $x173)) $x173) @x191 $x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4072
(let ((@x457 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x558) $x436)) (monotonicity (symm @x192 (= y$ ?x51)) $x558) $x436)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4073
(let ((?x613 (* (- 1) ?x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4074
(let ((?x614 (+ ?x29 ?x613)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4075
(let (($x595 (<= ?x614 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4076
(let (($x612 (= ?x614 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4077
(let (($x610 (>= ?x29 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4078
(let (($x557 (>= ?x585 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4079
(let (($x559 (= ?x585 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4080
(let (($x586 (>= ?x32 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4081
(let (($x589 (not $x586)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4082
(let (($x632 (forall ((?v0 Int) )(!(let ((?x115 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4083
(let ((?x116 (of_nat$ ?x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4084
(let (($x144 (= ?x116 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4085
(let (($x129 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4086
(or $x129 $x144))))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4087
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4088
(let (($x167 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4089
(let ((?x116 (of_nat$ ?x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4090
(let (($x144 (= ?x116 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4091
(let (($x129 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4092
(or $x129 $x144))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4093
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4094
(let ((?x115 (nat$ ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4095
(let ((?x116 (of_nat$ ?x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4096
(let (($x144 (= ?x116 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4097
(let (($x129 (>= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4098
(let (($x164 (or $x129 $x144)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4099
(let (($x146 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4100
(let ((?x116 (of_nat$ ?x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4101
(let (($x144 (= ?x116 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4102
(let (($x143 (< ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4103
(=> $x143 $x144))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4104
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4105
(let (($x152 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4106
(let ((?x116 (of_nat$ ?x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4107
(let (($x144 (= ?x116 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4108
(let (($x143 (< ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4109
(let (($x148 (not $x143)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4110
(or $x148 $x144)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4111
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4112
(let ((@x159 (monotonicity (rewrite (= (< ?0 0) (not $x129))) (= (not (< ?0 0)) (not (not $x129))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4113
(let ((@x163 (trans @x159 (rewrite (= (not (not $x129)) $x129)) (= (not (< ?0 0)) $x129))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4114
(let ((@x169 (quant-intro (monotonicity @x163 (= (or (not (< ?0 0)) $x144) $x164)) (= $x152 $x167))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4115
(let ((@x151 (rewrite (= (=> (< ?0 0) $x144) (or (not (< ?0 0)) $x144)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4116
(let ((@x172 (mp (asserted $x146) (trans (quant-intro @x151 (= $x146 $x152)) @x169 (= $x146 $x167)) $x167)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4117
(let ((@x637 (mp (mp~ @x172 (nnf-pos (refl (~ $x164 $x164)) (~ $x167 $x167)) $x167) (quant-intro (refl (= $x164 $x164)) (= $x167 $x632)) $x632)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4118
(let (($x601 (not $x632)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4119
(let (($x564 (or $x601 $x586 $x559)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4120
(let ((@x588 (rewrite (= (>= ?x48 0) $x586))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4121
(let ((@x394 (monotonicity (monotonicity @x588 (= (or (>= ?x48 0) $x559) (or $x586 $x559))) (= (or $x601 (or (>= ?x48 0) $x559)) (or $x601 (or $x586 $x559))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4122
(let ((@x554 (trans @x394 (rewrite (= (or $x601 (or $x586 $x559)) $x564)) (= (or $x601 (or (>= ?x48 0) $x559)) $x564))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4123
(let ((@x555 (mp ((_ quant-inst (+ (- 1) ?x32)) (or $x601 (or (>= ?x48 0) $x559))) @x554 $x564)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4124
(let ((@x539 (unit-resolution @x555 @x637 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x589 (not $x88))) @x106 $x589) $x559)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4125
(let ((@x545 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x610 (not $x557) (not $x436))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x559) $x557)) @x539 $x557) @x457 $x610)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4126
(let (($x605 (not $x610)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4127
(let (($x616 (or $x605 $x612)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4128
(let (($x626 (forall ((?v0 Int) )(!(let ((?x115 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4129
(let ((?x116 (of_nat$ ?x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4130
(let (($x117 (= ?x116 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4131
(let (($x129 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4132
(let (($x131 (not $x129)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4133
(or $x131 $x117)))))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4134
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4135
(let (($x137 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4136
(let ((?x116 (of_nat$ ?x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4137
(let (($x117 (= ?x116 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4138
(let (($x129 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4139
(let (($x131 (not $x129)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4140
(or $x131 $x117)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4141
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4142
(let ((@x628 (refl (= (or (not $x129) (= ?x116 ?0)) (or (not $x129) (= ?x116 ?0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4143
(let ((@x185 (refl (~ (or (not $x129) (= ?x116 ?0)) (or (not $x129) (= ?x116 ?0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4144
(let (($x119 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4145
(let ((?x116 (of_nat$ ?x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4146
(let (($x117 (= ?x116 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4147
(let (($x114 (<= 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4148
(=> $x114 $x117))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4149
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4150
(let (($x125 (forall ((?v0 Int) )(let ((?x115 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4151
(let ((?x116 (of_nat$ ?x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4152
(let (($x117 (= ?x116 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4153
(or (not (<= 0 ?v0)) $x117)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4154
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4155
(let (($x117 (= ?x116 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4156
(let (($x131 (not $x129)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4157
(let (($x134 (or $x131 $x117)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4158
(let (($x122 (or (not (<= 0 ?0)) $x117)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4159
(let ((@x133 (monotonicity (rewrite (= (<= 0 ?0) $x129)) (= (not (<= 0 ?0)) $x131))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4160
(let ((@x127 (quant-intro (rewrite (= (=> (<= 0 ?0) $x117) $x122)) (= $x119 $x125))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4161
(let ((@x141 (trans @x127 (quant-intro (monotonicity @x133 (= $x122 $x134)) (= $x125 $x137)) (= $x119 $x137))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4162
(let ((@x196 (mp~ (mp (asserted $x119) @x141 $x137) (nnf-pos @x185 (~ $x137 $x137)) $x137)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4163
(let ((@x631 (mp @x196 (quant-intro @x628 (= $x137 $x626)) $x626)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4164
(let (($x269 (not $x626)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4165
(let (($x607 (or $x269 $x605 $x612)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4166
(let (($x273 (= ?x32 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4167
(let (($x291 (>= ?x30 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4168
(let (($x292 (not $x291)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4169
(let (($x609 (or $x292 $x273)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4170
(let (($x271 (or $x269 $x609)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4171
(let ((@x268 (monotonicity (monotonicity (rewrite (= $x291 $x610)) (= $x292 $x605)) (rewrite (= $x273 $x612)) (= $x609 $x616))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4172
(let ((@x593 (trans (monotonicity @x268 (= $x271 (or $x269 $x616))) (rewrite (= (or $x269 $x616) $x607)) (= $x271 $x607))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4173
(let ((@x594 (mp ((_ quant-inst (+ 1 ?x29)) $x271) @x593 $x607)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4174
(let ((@x538 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x612) $x595)) (unit-resolution (unit-resolution @x594 @x631 $x616) @x545 $x612) $x595)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4175
((_ th-lemma arith farkas 1 -1 -1 1) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x559) $x557)) @x539 $x557) @x106 @x538 @x457 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4176
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4177
8704d70b06a6aa746ec0e023752eaa0b7eb0df18 78 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4178
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4179
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4180
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4181
(let ((?x37 (* (- 1) x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4182
(let (($x55 (>= x$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4183
(let ((?x62 (ite $x55 x$ ?x37)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4184
(let ((?x554 (* (- 1) ?x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4185
(let ((?x217 (+ ?x37 ?x554)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4186
(let (($x562 (<= ?x217 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4187
(let (($x249 (= ?x37 ?x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4188
(let (($x56 (not $x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4189
(let (($x163 (= x$ ?x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4190
(let ((@x559 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x163) (<= (+ x$ ?x554) 0))) (unit-resolution (def-axiom (or $x56 $x163)) (hypothesis $x55) $x163) (<= (+ x$ ?x554) 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4191
(let (($x254 (>= ?x62 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4192
(let (($x255 (not $x254)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4193
(let (($x588 (forall ((?v0 Int) )(!(let ((?x90 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4194
(let ((?x91 (of_nat$ ?x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4195
(let (($x92 (= ?x91 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4196
(let (($x104 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4197
(let (($x106 (not $x104)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4198
(or $x106 $x92)))))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4199
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4200
(let (($x112 (forall ((?v0 Int) )(let ((?x90 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4201
(let ((?x91 (of_nat$ ?x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4202
(let (($x92 (= ?x91 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4203
(let (($x104 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4204
(let (($x106 (not $x104)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4205
(or $x106 $x92)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4206
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4207
(let ((?x90 (nat$ ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4208
(let ((?x91 (of_nat$ ?x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4209
(let (($x92 (= ?x91 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4210
(let (($x104 (>= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4211
(let (($x106 (not $x104)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4212
(let (($x109 (or $x106 $x92)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4213
(let (($x94 (forall ((?v0 Int) )(let ((?x90 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4214
(let ((?x91 (of_nat$ ?x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4215
(let (($x92 (= ?x91 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4216
(let (($x89 (<= 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4217
(=> $x89 $x92))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4218
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4219
(let (($x100 (forall ((?v0 Int) )(let ((?x90 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4220
(let ((?x91 (of_nat$ ?x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4221
(let (($x92 (= ?x91 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4222
(or (not (<= 0 ?v0)) $x92)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4223
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4224
(let ((@x108 (monotonicity (rewrite (= (<= 0 ?0) $x104)) (= (not (<= 0 ?0)) $x106))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4225
(let ((@x114 (quant-intro (monotonicity @x108 (= (or (not (<= 0 ?0)) $x92) $x109)) (= $x100 $x112))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4226
(let ((@x99 (rewrite (= (=> (<= 0 ?0) $x92) (or (not (<= 0 ?0)) $x92)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4227
(let ((@x117 (mp (asserted $x94) (trans (quant-intro @x99 (= $x94 $x100)) @x114 (= $x94 $x112)) $x112)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4228
(let ((@x593 (mp (mp~ @x117 (nnf-pos (refl (~ $x109 $x109)) (~ $x112 $x112)) $x112) (quant-intro (refl (= $x109 $x109)) (= $x112 $x588)) $x588)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4229
(let ((?x67 (nat$ ?x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4230
(let ((?x70 (of_nat$ ?x67)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4231
(let (($x73 (= ?x70 ?x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4232
(let (($x76 (not $x73)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4233
(let (($x28 (< x$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4234
(let ((?x30 (ite $x28 (- x$) x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4235
(let (($x34 (not (= (of_nat$ (nat$ ?x30)) ?x30))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4236
(let (($x77 (= (not (= (of_nat$ (nat$ (ite $x28 ?x37 x$))) (ite $x28 ?x37 x$))) $x76)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4237
(let ((?x40 (ite $x28 ?x37 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4238
(let ((?x43 (nat$ ?x40)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4239
(let ((?x46 (of_nat$ ?x43)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4240
(let (($x49 (= ?x46 ?x40)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4241
(let ((@x66 (trans (monotonicity (rewrite (= $x28 $x56)) (= ?x40 (ite $x56 ?x37 x$))) (rewrite (= (ite $x56 ?x37 x$) ?x62)) (= ?x40 ?x62))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4242
(let ((@x75 (monotonicity (monotonicity (monotonicity @x66 (= ?x43 ?x67)) (= ?x46 ?x70)) @x66 (= $x49 $x73))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4243
(let ((@x45 (monotonicity (monotonicity (rewrite (= (- x$) ?x37)) (= ?x30 ?x40)) (= (nat$ ?x30) ?x43))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4244
(let ((@x51 (monotonicity (monotonicity @x45 (= (of_nat$ (nat$ ?x30)) ?x46)) (monotonicity (rewrite (= (- x$) ?x37)) (= ?x30 ?x40)) (= (= (of_nat$ (nat$ ?x30)) ?x30) $x49))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4245
(let ((@x80 (trans (monotonicity @x51 (= $x34 (not $x49))) (monotonicity @x75 $x77) (= $x34 $x76))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4246
(let ((@x81 (mp (asserted $x34) @x80 $x76)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4247
(let (($x239 (or (not $x588) $x255 $x73)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4248
(let ((@x576 (mp ((_ quant-inst (ite $x55 x$ ?x37)) (or (not $x588) (or $x255 $x73))) (rewrite (= (or (not $x588) (or $x255 $x73)) $x239)) $x239)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4249
(let ((@x561 ((_ th-lemma arith farkas -1 1 1) (hypothesis $x55) (unit-resolution @x576 @x81 @x593 $x255) @x559 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4250
(let ((@x198 (lemma @x561 $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4251
(let ((@x566 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x249) $x562)) (unit-resolution (def-axiom (or $x55 $x249)) @x198 $x249) $x562)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4252
(let (($x578 (<= ?x62 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4253
(let ((@x257 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x578 $x254)) (unit-resolution @x576 @x81 @x593 $x255) $x578)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4254
((_ th-lemma arith farkas 1 1 1) @x257 @x198 @x566 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4255
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4256
ce85402875b83dc2f06a381810d29a2061933b9f 312 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4257
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4258
((set-logic AUFLIA)
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4259
(declare-fun ?v1!0 (Nat$) Nat$)
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4260
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4261
(let ((?x89 (of_nat$ m$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4262
(let ((?x90 (* 4 ?x89)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4263
(let ((?x98 (+ 1 ?x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4264
(let ((?x101 (nat$ ?x98)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4265
(let ((?x295 (of_nat$ ?x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4266
(let ((?x598 (* (- 1) ?x295)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4267
(let ((?x599 (+ ?x90 ?x598)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4268
(let (($x574 (>= ?x599 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4269
(let (($x597 (= ?x599 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4270
(let (($x610 (>= ?x89 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4271
(let (($x380 (<= ?x295 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4272
(let (($x687 (not $x380)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4273
(let (($x701 (forall ((?v1 Nat$) )(!(let ((?x89 (of_nat$ m$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4274
(let ((?x90 (* 4 ?x89)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4275
(let ((?x98 (+ 1 ?x90)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4276
(let ((?x101 (nat$ ?x98)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4277
(let (($x382 (= ?v1 ?x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4278
(let ((?x34 (nat$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4279
(let (($x35 (= ?v1 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4280
(let (($x381 (dvd$ ?v1 ?x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4281
(let (($x371 (not $x381)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4282
(or $x371 $x35 $x382)))))))))) :pattern ( (dvd$ ?v1 (nat$ (+ 1 (* 4 (of_nat$ m$))))) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4283
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4284
(let (($x702 (not $x701)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4285
(let (($x357 (or $x380 $x702)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4286
(let (($x487 (not $x357)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4287
(let (($x104 (prime_nat$ ?x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4288
(let (($x110 (not $x104)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4289
(let (($x697 (or $x110 $x487)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4290
(let ((?x703 (?v1!0 ?x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4291
(let (($x707 (= ?x703 ?x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4292
(let ((?x34 (nat$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4293
(let (($x706 (= ?x703 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4294
(let (($x704 (dvd$ ?x703 ?x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4295
(let (($x705 (not $x704)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4296
(let (($x708 (or $x705 $x706 $x707)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4297
(let (($x698 (not $x708)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4298
(let (($x360 (or $x104 $x380 $x698)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4299
(let (($x700 (not $x360)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4300
(let (($x369 (not $x697)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4301
(let (($x342 (or $x369 $x700)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4302
(let (($x684 (not $x342)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4303
(let (($x738 (forall ((?v0 Nat$) )(!(let (($x219 (or (not (dvd$ (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (nat$ 1)) (= (?v1!0 ?v0) ?v0))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4304
(let (($x220 (not $x219)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4305
(let ((?x30 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4306
(let (($x65 (<= ?x30 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4307
(let (($x28 (prime_nat$ ?v0)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4308
(let (($x245 (or $x28 $x65 $x220)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4309
(let (($x710 (forall ((?v1 Nat$) )(!(let ((?x34 (nat$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4310
(let (($x35 (= ?v1 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4311
(or (not (dvd$ ?v1 ?v0)) $x35 (= ?v1 ?v0)))) :pattern ( (dvd$ ?v1 ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4312
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4313
(let (($x200 (not $x28)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4314
(not (or (not (or $x200 (not (or $x65 (not $x710))))) (not $x245))))))))))) :pattern ( (prime_nat$ ?v0) ) :pattern ( (of_nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4315
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4316
(let (($x290 (forall ((?v0 Nat$) )(let (($x219 (or (not (dvd$ (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (nat$ 1)) (= (?v1!0 ?v0) ?v0))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4317
(let (($x220 (not $x219)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4318
(let ((?x30 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4319
(let (($x65 (<= ?x30 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4320
(let (($x28 (prime_nat$ ?v0)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4321
(let (($x245 (or $x28 $x65 $x220)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4322
(let (($x72 (forall ((?v1 Nat$) )(let ((?x34 (nat$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4323
(let (($x35 (= ?v1 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4324
(or (not (dvd$ ?v1 ?v0)) $x35 (= ?v1 ?v0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4325
))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4326
(let (($x221 (not $x72)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4327
(let (($x273 (not (or $x65 $x221))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4328
(let (($x200 (not $x28)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4329
(let (($x276 (or $x200 $x273)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4330
(not (or (not $x276) (not $x245)))))))))))))))
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 (($x219 (or (not (dvd$ (?v1!0 ?0) ?0)) (= (?v1!0 ?0) ?x34) (= (?v1!0 ?0) ?0))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4333
(let (($x220 (not $x219)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4334
(let ((?x30 (of_nat$ ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4335
(let (($x65 (<= ?x30 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4336
(let (($x28 (prime_nat$ ?0)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4337
(let (($x245 (or $x28 $x65 $x220)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4338
(let (($x710 (forall ((?v1 Nat$) )(!(let ((?x34 (nat$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4339
(let (($x35 (= ?v1 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4340
(or (not (dvd$ ?v1 ?0)) $x35 (= ?v1 ?0)))) :pattern ( (dvd$ ?v1 ?0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4341
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4342
(let (($x200 (not $x28)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4343
(let (($x72 (forall ((?v1 Nat$) )(let ((?x34 (nat$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4344
(let (($x35 (= ?v1 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4345
(or (not (dvd$ ?v1 ?0)) $x35 (= ?v1 ?0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4346
))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4347
(let (($x221 (not $x72)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4348
(let (($x273 (not (or $x65 $x221))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4349
(let (($x276 (or $x200 $x273)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4350
(let (($x285 (not (or (not $x276) (not $x245)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4351
(let (($x734 (= $x285 (not (or (not (or $x200 (not (or $x65 (not $x710))))) (not $x245))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4352
(let (($x731 (= (or (not $x276) (not $x245)) (or (not (or $x200 (not (or $x65 (not $x710))))) (not $x245)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4353
(let (($x35 (= ?0 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4354
(let (($x69 (or (not (dvd$ ?0 ?1)) $x35 (= ?0 ?1))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4355
(let ((@x717 (monotonicity (quant-intro (refl (= $x69 $x69)) (= $x72 $x710)) (= $x221 (not $x710)))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4356
(let ((@x723 (monotonicity (monotonicity @x717 (= (or $x65 $x221) (or $x65 (not $x710)))) (= $x273 (not (or $x65 (not $x710)))))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4357
(let ((@x729 (monotonicity (monotonicity @x723 (= $x276 (or $x200 (not (or $x65 (not $x710)))))) (= (not $x276) (not (or $x200 (not (or $x65 (not $x710)))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4358
(let ((@x740 (quant-intro (monotonicity (monotonicity @x729 $x731) $x734) (= $x290 $x738))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4359
(let (($x253 (forall ((?v0 Nat$) )(let (($x219 (or (not (dvd$ (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (nat$ 1)) (= (?v1!0 ?v0) ?v0))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4360
(let (($x220 (not $x219)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4361
(let ((?x30 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4362
(let (($x65 (<= ?x30 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4363
(let (($x28 (prime_nat$ ?v0)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4364
(let (($x245 (or $x28 $x65 $x220)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4365
(let (($x72 (forall ((?v1 Nat$) )(let ((?x34 (nat$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4366
(let (($x35 (= ?v1 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4367
(or (not (dvd$ ?v1 ?v0)) $x35 (= ?v1 ?v0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4368
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4369
(let (($x66 (not $x65)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4370
(let (($x75 (and $x66 $x72)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4371
(let (($x200 (not $x28)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4372
(let (($x229 (or $x200 $x75)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4373
(and $x229 $x245)))))))))))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4374
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4375
(let ((@x278 (monotonicity (rewrite (= (and (not $x65) $x72) $x273)) (= (or $x200 (and (not $x65) $x72)) $x276))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4376
(let ((@x281 (monotonicity @x278 (= (and (or $x200 (and (not $x65) $x72)) $x245) (and $x276 $x245)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4377
(let ((@x289 (trans @x281 (rewrite (= (and $x276 $x245) $x285)) (= (and (or $x200 (and (not $x65) $x72)) $x245) $x285))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4378
(let (($x233 (forall ((?v0 Nat$) )(let (($x219 (or (not (dvd$ (?v1!0 ?v0) ?v0)) (= (?v1!0 ?v0) (nat$ 1)) (= (?v1!0 ?v0) ?v0))))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4379
(let (($x220 (not $x219)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4380
(let ((?x30 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4381
(let (($x65 (<= ?x30 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4382
(let (($x66 (not $x65)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4383
(let (($x211 (not $x66)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4384
(let (($x224 (or $x211 $x220)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4385
(let (($x28 (prime_nat$ ?v0)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4386
(let (($x228 (or $x28 $x224)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4387
(let (($x72 (forall ((?v1 Nat$) )(let ((?x34 (nat$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4388
(let (($x35 (= ?v1 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4389
(or (not (dvd$ ?v1 ?v0)) $x35 (= ?v1 ?v0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4390
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4391
(let (($x75 (and $x66 $x72)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4392
(let (($x200 (not $x28)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4393
(let (($x229 (or $x200 $x75)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4394
(and $x229 $x228)))))))))))))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4395
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4396
(let (($x66 (not $x65)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4397
(let (($x75 (and $x66 $x72)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4398
(let (($x229 (or $x200 $x75)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4399
(let (($x250 (and $x229 $x245)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4400
(let (($x211 (not $x66)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4401
(let (($x224 (or $x211 $x220)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4402
(let (($x228 (or $x28 $x224)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4403
(let (($x230 (and $x229 $x228)))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4404
(let ((@x244 (monotonicity (monotonicity (rewrite (= $x211 $x65)) (= $x224 (or $x65 $x220))) (= $x228 (or $x28 (or $x65 $x220))))))
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4405
(let ((@x249 (trans @x244 (rewrite (= (or $x28 (or $x65 $x220)) $x245)) (= $x228 $x245))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4406
(let (($x81 (forall ((?v0 Nat$) )(let (($x72 (forall ((?v1 Nat$) )(let ((?x34 (nat$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4407
(let (($x35 (= ?v1 ?x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4408
(or (not (dvd$ ?v1 ?v0)) $x35 (= ?v1 ?v0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4409
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4410
(let ((?x30 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4411
(let (($x65 (<= ?x30 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4412
(let (($x66 (not $x65)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4413
(let (($x75 (and $x66 $x72)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4414
(let (($x28 (prime_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4415
(= $x28 $x75))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4416
))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  4417
(let ((@x227 (nnf-neg (refl (~ $x211 $x211)) (sk (~ $x221 $x220)) (~ (not $x75) $x224))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4418
(let ((@x210 (monotonicity (refl (~ $x66 $x66)) (nnf-pos (refl (~ $x69 $x69)) (~ $x72 $x72)) (~ $x75 $x75))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4419
(let ((@x232 (nnf-pos (refl (~ $x28 $x28)) (refl (~ $x200 $x200)) @x210 @x227 (~ (= $x28 $x75) $x230))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4420
(let (($x42 (forall ((?v0 Nat$) )(let (($x39 (forall ((?v1 Nat$) )(let (($x33 (dvd$ ?v1 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4421
(=> $x33 (or (= ?v1 (nat$ 1)) (= ?v1 ?v0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4422
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4423
(let ((?x30 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4424
(let (($x31 (< 1 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4425
(let (($x28 (prime_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4426
(= $x28 (and $x31 $x39)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4427
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4428
(let (($x62 (forall ((?v0 Nat$) )(let (($x48 (forall ((?v1 Nat$) )(or (not (dvd$ ?v1 ?v0)) (or (= ?v1 (nat$ 1)) (= ?v1 ?v0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4429
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4430
(let ((?x30 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4431
(let (($x31 (< 1 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4432
(let (($x51 (and $x31 $x48)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4433
(let (($x28 (prime_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4434
(= $x28 $x51)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4435
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4436
(let (($x78 (= $x28 $x75)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4437
(let (($x48 (forall ((?v1 Nat$) )(or (not (dvd$ ?v1 ?0)) (or (= ?v1 (nat$ 1)) (= ?v1 ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4438
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4439
(let (($x31 (< 1 ?x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4440
(let (($x51 (and $x31 $x48)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4441
(let (($x57 (= $x28 $x51)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4442
(let ((@x71 (rewrite (= (or (not (dvd$ ?0 ?1)) (or $x35 (= ?0 ?1))) $x69))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4443
(let ((@x77 (monotonicity (rewrite (= $x31 $x66)) (quant-intro @x71 (= $x48 $x72)) (= $x51 $x75))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4444
(let (($x39 (forall ((?v1 Nat$) )(let (($x33 (dvd$ ?v1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4445
(=> $x33 (or (= ?v1 (nat$ 1)) (= ?v1 ?0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4446
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4447
(let (($x41 (= $x28 (and $x31 $x39))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4448
(let (($x45 (or (not (dvd$ ?0 ?1)) (or $x35 (= ?0 ?1)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4449
(let ((@x50 (quant-intro (rewrite (= (=> (dvd$ ?0 ?1) (or $x35 (= ?0 ?1))) $x45)) (= $x39 $x48))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4450
(let ((@x56 (monotonicity (monotonicity @x50 (= (and $x31 $x39) $x51)) (= $x41 (= $x28 $x51)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4451
(let ((@x64 (quant-intro (trans @x56 (rewrite (= (= $x28 $x51) $x57)) (= $x41 $x57)) (= $x42 $x62))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4452
(let ((@x85 (trans @x64 (quant-intro (monotonicity @x77 (= $x57 $x78)) (= $x62 $x81)) (= $x42 $x81))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4453
(let ((@x236 (mp~ (mp (asserted $x42) @x85 $x81) (nnf-pos @x232 (~ $x81 $x233)) $x233)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4454
(let ((@x256 (mp @x236 (quant-intro (monotonicity @x249 (= $x230 $x250)) (= $x233 $x253)) $x253)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4455
(let ((@x741 (mp (mp @x256 (quant-intro @x289 (= $x253 $x290)) $x290) @x740 $x738)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4456
(let (($x348 (or (not $x738) $x684)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4457
(let ((@x685 ((_ quant-inst (nat$ ?x98)) $x348)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4458
(let ((@x569 (unit-resolution (def-axiom (or $x342 $x697)) (unit-resolution @x685 @x741 $x684) $x697)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4459
(let (($x125 (not (or $x110 (>= ?x89 1)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4460
(let (($x94 (<= 1 ?x89)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4461
(let (($x95 (=> (prime_nat$ (nat$ (+ ?x90 1))) $x94)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4462
(let (($x96 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4463
(let ((@x124 (monotonicity (rewrite (= $x94 (>= ?x89 1))) (= (or $x110 $x94) (or $x110 (>= ?x89 1))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4464
(let ((@x103 (monotonicity (rewrite (= (+ ?x90 1) ?x98)) (= (nat$ (+ ?x90 1)) ?x101))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4465
(let ((@x109 (monotonicity (monotonicity @x103 (= (prime_nat$ (nat$ (+ ?x90 1))) $x104)) (= $x95 (=> $x104 $x94)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4466
(let ((@x115 (trans @x109 (rewrite (= (=> $x104 $x94) (or $x110 $x94))) (= $x95 (or $x110 $x94)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4467
(let ((@x129 (trans (monotonicity @x115 (= $x96 (not (or $x110 $x94)))) (monotonicity @x124 (= (not (or $x110 $x94)) $x125)) (= $x96 $x125))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4468
(let ((@x131 (not-or-elim (mp (asserted $x96) @x129 $x125) $x104)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4469
(let ((@x572 (unit-resolution (unit-resolution (def-axiom (or $x369 $x110 $x487)) @x131 (or $x369 $x487)) @x569 $x487)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4470
(let ((@x530 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not (<= ?x295 0)) $x380)) (unit-resolution (def-axiom (or $x357 $x687)) @x572 $x687) (not (<= ?x295 0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4471
(let ((@x561 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x295 0)) (<= ?x295 0))) @x530 (not (= ?x295 0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4472
(let (($x575 (= ?x295 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4473
(let (($x577 (or $x610 $x575)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4474
(let (($x756 (forall ((?v0 Int) )(!(let ((?x140 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4475
(let ((?x141 (of_nat$ ?x140)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4476
(let (($x169 (= ?x141 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4477
(let (($x155 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4478
(or $x155 $x169))))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4479
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4480
(let (($x192 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4481
(let ((?x141 (of_nat$ ?x140)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4482
(let (($x169 (= ?x141 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4483
(let (($x155 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4484
(or $x155 $x169))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4485
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4486
(let ((?x140 (nat$ ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4487
(let ((?x141 (of_nat$ ?x140)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4488
(let (($x169 (= ?x141 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4489
(let (($x155 (>= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4490
(let (($x189 (or $x155 $x169)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4491
(let (($x171 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4492
(let ((?x141 (of_nat$ ?x140)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4493
(let (($x169 (= ?x141 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4494
(let (($x168 (< ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4495
(=> $x168 $x169))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4496
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4497
(let (($x177 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4498
(let ((?x141 (of_nat$ ?x140)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4499
(let (($x169 (= ?x141 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4500
(let (($x168 (< ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4501
(let (($x173 (not $x168)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4502
(or $x173 $x169)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4503
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4504
(let ((@x184 (monotonicity (rewrite (= (< ?0 0) (not $x155))) (= (not (< ?0 0)) (not (not $x155))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4505
(let ((@x188 (trans @x184 (rewrite (= (not (not $x155)) $x155)) (= (not (< ?0 0)) $x155))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4506
(let ((@x194 (quant-intro (monotonicity @x188 (= (or (not (< ?0 0)) $x169) $x189)) (= $x177 $x192))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4507
(let ((@x176 (rewrite (= (=> (< ?0 0) $x169) (or (not (< ?0 0)) $x169)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4508
(let ((@x197 (mp (asserted $x171) (trans (quant-intro @x176 (= $x171 $x177)) @x194 (= $x171 $x192)) $x192)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4509
(let ((@x761 (mp (mp~ @x197 (nnf-pos (refl (~ $x189 $x189)) (~ $x192 $x192)) $x192) (quant-intro (refl (= $x189 $x189)) (= $x192 $x756)) $x756)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4510
(let (($x580 (not $x756)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4511
(let (($x581 (or $x580 $x610 $x575)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4512
(let ((@x612 (rewrite (= (>= ?x98 0) $x610))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4513
(let ((@x579 (monotonicity @x612 (= (or (>= ?x98 0) $x575) $x577))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4514
(let ((@x555 (monotonicity @x579 (= (or $x580 (or (>= ?x98 0) $x575)) (or $x580 $x577)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4515
(let ((@x564 (trans @x555 (rewrite (= (or $x580 $x577) $x581)) (= (or $x580 (or (>= ?x98 0) $x575)) $x581))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4516
(let ((@x565 (mp ((_ quant-inst (+ 1 ?x90)) (or $x580 (or (>= ?x98 0) $x575))) @x564 $x581)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4517
(let (($x613 (not $x610)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4518
(let (($x600 (or $x613 $x597)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4519
(let (($x750 (forall ((?v0 Int) )(!(let ((?x140 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4520
(let ((?x141 (of_nat$ ?x140)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4521
(let (($x142 (= ?x141 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4522
(let (($x155 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4523
(let (($x156 (not $x155)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4524
(or $x156 $x142)))))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4525
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4526
(let (($x162 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4527
(let ((?x141 (of_nat$ ?x140)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4528
(let (($x142 (= ?x141 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4529
(let (($x155 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4530
(let (($x156 (not $x155)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4531
(or $x156 $x142)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4532
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4533
(let ((@x752 (refl (= (or (not $x155) (= ?x141 ?0)) (or (not $x155) (= ?x141 ?0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4534
(let ((@x263 (refl (~ (or (not $x155) (= ?x141 ?0)) (or (not $x155) (= ?x141 ?0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4535
(let (($x144 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4536
(let ((?x141 (of_nat$ ?x140)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4537
(let (($x142 (= ?x141 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4538
(let (($x139 (<= 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4539
(=> $x139 $x142))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4540
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4541
(let (($x150 (forall ((?v0 Int) )(let ((?x140 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4542
(let ((?x141 (of_nat$ ?x140)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4543
(let (($x142 (= ?x141 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4544
(or (not (<= 0 ?v0)) $x142)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4545
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4546
(let (($x142 (= ?x141 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4547
(let (($x156 (not $x155)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4548
(let (($x159 (or $x156 $x142)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4549
(let (($x147 (or (not (<= 0 ?0)) $x142)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4550
(let ((@x158 (monotonicity (rewrite (= (<= 0 ?0) $x155)) (= (not (<= 0 ?0)) $x156))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4551
(let ((@x152 (quant-intro (rewrite (= (=> (<= 0 ?0) $x142) $x147)) (= $x144 $x150))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4552
(let ((@x166 (trans @x152 (quant-intro (monotonicity @x158 (= $x147 $x159)) (= $x150 $x162)) (= $x144 $x162))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4553
(let ((@x266 (mp~ (mp (asserted $x144) @x166 $x162) (nnf-pos @x263 (~ $x162 $x162)) $x162)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4554
(let ((@x755 (mp @x266 (quant-intro @x752 (= $x162 $x750)) $x750)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4555
(let (($x603 (not $x750)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4556
(let (($x604 (or $x603 $x613 $x597)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4557
(let (($x608 (= ?x295 ?x98)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4558
(let (($x618 (>= ?x98 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4559
(let (($x619 (not $x618)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4560
(let (($x609 (or $x619 $x608)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4561
(let (($x605 (or $x603 $x609)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4562
(let ((@x602 (monotonicity (monotonicity @x612 (= $x619 $x613)) (rewrite (= $x608 $x597)) (= $x609 $x600))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4563
(let ((@x590 (trans (monotonicity @x602 (= $x605 (or $x603 $x600))) (rewrite (= (or $x603 $x600) $x604)) (= $x605 $x604))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4564
(let ((@x591 (mp ((_ quant-inst (+ 1 ?x90)) $x605) @x590 $x604)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4565
(let ((@x532 (unit-resolution (unit-resolution @x591 @x755 $x600) (unit-resolution (unit-resolution @x565 @x761 $x577) @x561 $x610) $x597)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4566
(let ((@x133 (not-or-elim (mp (asserted $x96) @x129 $x125) (not (>= ?x89 1)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4567
((_ th-lemma arith farkas -4 1 1) @x133 (unit-resolution (def-axiom (or $x357 $x687)) @x572 $x687) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x597) $x574)) @x532 $x574) false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4568
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4569
5e90e9139eb4e9a7c2678bca8dda6cda05861f4c 23 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4570
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4571
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4572
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4573
(let (($x40 (= x$ a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4574
(let ((?x36 (pair$ x$ y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4575
(let ((?x37 (fst$ ?x36)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4576
(let (($x39 (= ?x37 a$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4577
(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
  4578
(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
  4579
(let (($x56 (= ?x37 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4580
(let (($x478 (forall ((?v0 A$) (?v1 B$) )(!(= (fst$ (pair$ ?v0 ?v1)) ?v0) :pattern ( (pair$ ?v0 ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4581
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4582
(let (($x32 (forall ((?v0 A$) (?v1 B$) )(= (fst$ (pair$ ?v0 ?v1)) ?v0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4583
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4584
(let (($x31 (= (fst$ (pair$ ?1 ?0)) ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4585
(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
  4586
(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
  4587
(let (($x62 (or (not $x478) $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4588
(let ((@x149 ((_ quant-inst x$ y$) $x62)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4589
(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
  4590
(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
  4591
(unit-resolution @x54 @x150 false)))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4592
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4593
53d3d89ffb6e574b15fcea58a111b4eecba9beb5 42 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4594
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4595
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4596
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4597
(let ((?x59 (snd$a p2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4598
(let ((?x58 (fst$a p1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4599
(let (($x60 (= ?x58 ?x59)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4600
(let ((?x55 (pair$ y$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4601
(let (($x56 (= p2$ ?x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4602
(let ((?x52 (pair$a x$ y$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4603
(let (($x53 (= p1$ ?x52)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4604
(let (($x57 (and $x53 $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4605
(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
  4606
(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
  4607
(let ((@x74 (and-elim @x71 $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4608
(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
  4609
(let ((?x100 (snd$a ?x55)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4610
(let (($x185 (= ?x100 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4611
(let (($x534 (forall ((?v0 B$) (?v1 A$) )(!(= (snd$a (pair$ ?v0 ?v1)) ?v1) :pattern ( (pair$ ?v0 ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4612
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4613
(let (($x47 (forall ((?v0 B$) (?v1 A$) )(= (snd$a (pair$ ?v0 ?v1)) ?v1))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4614
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4615
(let (($x46 (= (snd$a (pair$ ?1 ?0)) ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4616
(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
  4617
(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
  4618
(let (($x190 (or (not $x534) $x185)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4619
(let ((@x191 ((_ quant-inst y$ x$) $x190)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4620
(let ((?x187 (fst$a ?x52)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4621
(let (($x188 (= ?x187 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4622
(let (($x522 (forall ((?v0 A$) (?v1 B$) )(!(= (fst$a (pair$a ?v0 ?v1)) ?v0) :pattern ( (pair$a ?v0 ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4623
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4624
(let (($x39 (forall ((?v0 A$) (?v1 B$) )(= (fst$a (pair$a ?v0 ?v1)) ?v0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4625
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4626
(let (($x38 (= (fst$a (pair$a ?1 ?0)) ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4627
(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
  4628
(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
  4629
(let (($x162 (or (not $x522) $x188)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4630
(let ((@x292 ((_ quant-inst x$ y$) $x162)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4631
(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
  4632
(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
  4633
(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
  4634
(unit-resolution @x76 (trans @x489 @x504 $x60) false))))))))))))))))))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4635
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4636
f501ac3814a9ff559897f8057e18657ad1030d2a 60 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4637
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4638
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4639
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4640
(let ((?x69 (fun_app$ f$ i$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4641
(let ((?x60 (fun_upd$ f$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4642
(let ((?x61 (fun_app$b ?x60 i1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4643
(let ((?x63 (fun_app$a ?x61 v1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4644
(let ((?x64 (fun_upd$ ?x63)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4645
(let ((?x65 (fun_app$b ?x64 i2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4646
(let ((?x67 (fun_app$a ?x65 v2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4647
(let ((?x68 (fun_app$ ?x67 i$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4648
(let (($x70 (= ?x68 ?x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4649
(let ((?x197 (fun_app$ ?x63 i$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4650
(let (($x205 (= ?x197 ?x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4651
(let (($x204 (= ?x197 v1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4652
(let (($x53 (= i$ i1$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4653
(let (($x484 (ite $x53 $x204 $x205)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4654
(let (($x531 (forall ((?v0 A_b_fun$) (?v1 A$) (?v2 B$) (?v3 A$) )(!(let ((?x46 (fun_app$ ?v0 ?v3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4655
(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
  4656
(let (($x45 (= ?v3 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4657
(ite $x45 (= ?x44 ?v2) (= ?x44 ?x46))))) :pattern ( (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
  4658
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4659
(let (($x102 (forall ((?v0 A_b_fun$) (?v1 A$) (?v2 B$) (?v3 A$) )(let ((?x46 (fun_app$ ?v0 ?v3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4660
(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
  4661
(let (($x45 (= ?v3 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4662
(ite $x45 (= ?x44 ?v2) (= ?x44 ?x46))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4663
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4664
(let ((?x46 (fun_app$ ?3 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4665
(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
  4666
(let (($x45 (= ?0 ?2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4667
(let (($x97 (ite $x45 (= ?x44 ?1) (= ?x44 ?x46))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4668
(let (($x49 (forall ((?v0 A_b_fun$) (?v1 A$) (?v2 B$) (?v3 A$) )(let ((?x44 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4669
(= ?x44 (ite (= ?v3 ?v1) ?v2 (fun_app$ ?v0 ?v3)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4670
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4671
(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
  4672
(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
  4673
(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
  4674
(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
  4675
(let (($x171 (not $x531)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4676
(let (($x486 (or $x171 $x484)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4677
(let ((@x487 ((_ quant-inst f$ i1$ v1$ i$) $x486)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4678
(let (($x54 (not $x53)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4679
(let (($x56 (= i$ i2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4680
(let (($x57 (not $x56)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4681
(let (($x58 (and $x54 $x57)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4682
(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
  4683
(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
  4684
(let ((@x82 (and-elim @x81 $x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4685
(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
  4686
(let (($x200 (= ?x68 ?x197)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4687
(let (($x196 (= ?x68 v2$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4688
(let (($x179 (ite $x56 $x196 $x200)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4689
(let (($x301 (or $x171 $x179)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4690
(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
  4691
(let ((@x84 (and-elim @x81 $x57)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4692
(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
  4693
(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
  4694
(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
  4695
(unit-resolution @x86 @x470 false))))))))))))))))))))))))))))))))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4696
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4697
541ab286f481dab3994e7cef5aa3ab01f0d6487a 24 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4698
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4699
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4700
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4701
(let (($x29 (f$ g$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4702
(let (($x73 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4703
(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
  4704
(let (($x32 (= $x29 (and (fun_app$ g$ x$) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4705
(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
  4706
(let (($x30 (fun_app$ g$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4707
(let (($x44 (= $x29 $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4708
(let (($x56 (or $x44 (or $x29 $x30))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4709
(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
  4710
(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
  4711
(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
  4712
(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
  4713
(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
  4714
(let ((@x70 (mp (asserted $x37) @x69 $x65)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4715
(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
  4716
(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
  4717
(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
  4718
(let (($x77 (= $x73 $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4719
(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
  4720
(mp @x80 @x93 false))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4721
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4722
c6761b6a026c6bf2d28c35e9faf633fc441c84c5 45 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4723
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4724
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4725
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4726
(let ((?x44 (id$ x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4727
(let (($x46 (= ?x44 x$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4728
(let (($x73 (not $x46)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4729
(let (($x47 (id$a true)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4730
(let (($x510 (forall ((?v0 Bool) )(!(let (($x33 (id$a ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4731
(= $x33 ?v0)) :pattern ( (id$a ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4732
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4733
(let (($x40 (forall ((?v0 Bool) )(let (($x33 (id$a ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4734
(= $x33 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4735
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4736
(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
  4737
(let ((@x69 (nnf-pos (refl (~ (= (id$a ?0) ?0) (= (id$a ?0) ?0))) (~ $x40 $x40))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4738
(let (($x35 (forall ((?v0 Bool) )(let (($x33 (id$a ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4739
(= $x33 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4740
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4741
(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
  4742
(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
  4743
(let (($x87 (or (not $x510) $x47)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4744
(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
  4745
(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
  4746
(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
  4747
(let (($x71 (or $x73 (not $x47))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4748
(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
  4749
(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
  4750
(let (($x54 (and $x46 $x47)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4751
(let (($x57 (not $x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4752
(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
  4753
(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
  4754
(let ((@x84 (mp @x62 @x83 $x71)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4755
(let (($x503 (forall ((?v0 A$) )(!(let ((?x28 (id$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4756
(= ?x28 ?v0)) :pattern ( (id$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4757
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4758
(let (($x30 (forall ((?v0 A$) )(let ((?x28 (id$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4759
(= ?x28 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4760
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4761
(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
  4762
(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
  4763
(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
  4764
(let (($x163 (or (not $x503) $x46)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4765
(let ((@x496 ((_ quant-inst x$) $x163)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4766
(unit-resolution @x496 @x508 (unit-resolution @x84 (lemma @x495 $x47) $x73) false)))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4767
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4768
50e0d27d5994794dc9d5826e8afa4b3217acf731 14 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4769
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4770
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4771
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4772
(let (($x29 (exists ((?v0 A$) )(g$ ?v0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4773
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4774
(let (($x30 (ite $x29 true false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4775
(let (($x31 (f$ $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4776
(let (($x32 (=> $x31 true)))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4777
(let (($x33 (not $x32)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4778
(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
  4779
(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
  4780
(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
  4781
(mp (asserted $x33) @x53 false)))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4782
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4783
8b09776b03122aeacc9dd9526e1f0e5d41a07f14 14 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4784
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4785
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4786
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4787
(let (($x29 (forall ((?v0 A$) )(g$ ?v0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4788
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4789
(let (($x30 (ite $x29 true false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4790
(let (($x31 (f$ $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4791
(let (($x32 (=> $x31 true)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4792
(let (($x33 (not $x32)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4793
(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
  4794
(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
  4795
(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
  4796
(mp (asserted $x33) @x53 false)))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4797
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4798
b221de9d8dbe279344ac85e2ada07f5722636ce5 46 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4799
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4800
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4801
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4802
(let ((?x61 (fun_app$a le$ 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4803
(let (($x63 (fun_app$ ?x61 42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4804
(let (($x75 (not $x63)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4805
(let (($x59 (= le$ uu$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4806
(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
  4807
(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
  4808
(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
  4809
(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
  4810
(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
  4811
(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
  4812
(let ((?x79 (fun_app$a uu$ 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4813
(let (($x168 (fun_app$ ?x79 42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4814
(let (($x52 (forall ((?v0 Int) (?v1 Int) )(!(let (($x46 (<= (+ ?v0 (* (- 1) ?v1)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4815
(let (($x31 (fun_app$ (fun_app$a uu$ ?v0) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4816
(= $x31 $x46))) :pattern ( (fun_app$ (fun_app$a uu$ ?v0) ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4817
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4818
(let (($x46 (<= (+ ?1 (* (- 1) ?0)) 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4819
(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
  4820
(let (($x49 (= $x31 $x46)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4821
(let (($x35 (forall ((?v0 Int) (?v1 Int) )(!(let (($x32 (<= ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4822
(let (($x31 (fun_app$ (fun_app$a uu$ ?v0) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4823
(= $x31 $x32))) :pattern ( (fun_app$ (fun_app$a uu$ ?v0) ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4824
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4825
(let (($x40 (forall ((?v0 Int) (?v1 Int) )(!(let (($x32 (<= ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4826
(let (($x31 (fun_app$ (fun_app$a uu$ ?v0) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4827
(= $x31 $x32))) :pattern ( (fun_app$ (fun_app$a uu$ ?v0) ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4828
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4829
(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
  4830
(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
  4831
(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
  4832
(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
  4833
(let (($x134 (or (not $x52) $x168)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4834
(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
  4835
(let ((?x169 (* (- 1) 42)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4836
(let ((?x170 (+ 3 ?x169)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4837
(let (($x160 (<= ?x170 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4838
(let (($x171 (= $x168 $x160)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4839
(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
  4840
(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
  4841
(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
  4842
(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
  4843
(unit-resolution (unit-resolution @x478 @x78 $x168) (mp @x77 @x472 (not $x168)) false)))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4844
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  4845
c94d83d8571ae767bf6025c563cdac64250f7638 189 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4846
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4847
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  4848
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4849
(let ((?x74 (nat$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4850
(let ((?x75 (cons$ ?x74 nil$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4851
(let ((?x69 (nat$ 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4852
(let ((?x76 (cons$ ?x69 ?x75)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4853
(let ((?x70 (cons$ ?x69 nil$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4854
(let ((?x68 (nat$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4855
(let ((?x71 (cons$ ?x68 ?x70)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4856
(let ((?x72 (map$ uu$ ?x71)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4857
(let (($x77 (= ?x72 ?x76)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4858
(let ((?x264 (map$ uu$ ?x70)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4859
(let ((?x427 (map$ uu$ nil$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4860
(let ((?x426 (fun_app$ uu$ ?x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4861
(let ((?x428 (cons$ ?x426 ?x427)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4862
(let (($x429 (= ?x264 ?x428)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4863
(let (($x598 (forall ((?v0 Nat_nat_fun$) (?v1 Nat$) (?v2 Nat_list$) )(!(let ((?x64 (cons$ (fun_app$ ?v0 ?v1) (map$ ?v0 ?v2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4864
(let ((?x61 (map$ ?v0 (cons$ ?v1 ?v2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4865
(= ?x61 ?x64))) :pattern ( (map$ ?v0 (cons$ ?v1 ?v2)) ) :pattern ( (cons$ (fun_app$ ?v0 ?v1) (map$ ?v0 ?v2)) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4866
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4867
(let (($x66 (forall ((?v0 Nat_nat_fun$) (?v1 Nat$) (?v2 Nat_list$) )(let ((?x64 (cons$ (fun_app$ ?v0 ?v1) (map$ ?v0 ?v2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4868
(let ((?x61 (map$ ?v0 (cons$ ?v1 ?v2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4869
(= ?x61 ?x64))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4870
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4871
(let ((?x64 (cons$ (fun_app$ ?2 ?1) (map$ ?2 ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4872
(let ((?x61 (map$ ?2 (cons$ ?1 ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4873
(let (($x65 (= ?x61 ?x64)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4874
(let ((@x158 (mp~ (asserted $x66) (nnf-pos (refl (~ $x65 $x65)) (~ $x66 $x66)) $x66)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4875
(let ((@x603 (mp @x158 (quant-intro (refl (= $x65 $x65)) (= $x66 $x598)) $x598)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4876
(let (($x582 (not $x598)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4877
(let (($x524 (or $x582 $x429)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4878
(let ((@x511 ((_ quant-inst uu$ (nat$ 1) nil$) $x524)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4879
(let (($x515 (= ?x427 nil$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4880
(let (($x590 (forall ((?v0 Nat_nat_fun$) )(!(= (map$ ?v0 nil$) nil$) :pattern ( (map$ ?v0 nil$) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4881
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4882
(let (($x55 (forall ((?v0 Nat_nat_fun$) )(= (map$ ?v0 nil$) nil$))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4883
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4884
(let ((@x592 (refl (= (= (map$ ?0 nil$) nil$) (= (map$ ?0 nil$) nil$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4885
(let ((@x152 (refl (~ (= (map$ ?0 nil$) nil$) (= (map$ ?0 nil$) nil$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4886
(let ((@x595 (mp (mp~ (asserted $x55) (nnf-pos @x152 (~ $x55 $x55)) $x55) (quant-intro @x592 (= $x55 $x590)) $x590)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4887
(let (($x506 (or (not $x590) $x515)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4888
(let ((@x507 ((_ quant-inst uu$) $x506)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4889
(let ((?x281 (of_nat$ ?x69)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4890
(let ((?x516 (+ 1 ?x281)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4891
(let ((?x517 (nat$ ?x516)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4892
(let (($x508 (= ?x426 ?x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4893
(let (($x47 (forall ((?v0 Nat$) )(!(let ((?x29 (fun_app$ uu$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4894
(= ?x29 (nat$ (+ 1 (of_nat$ ?v0))))) :pattern ( (fun_app$ uu$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4895
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4896
(let ((?x29 (fun_app$ uu$ ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4897
(let (($x44 (= ?x29 (nat$ (+ 1 (of_nat$ ?0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4898
(let (($x36 (forall ((?v0 Nat$) )(!(let ((?x29 (fun_app$ uu$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4899
(= ?x29 (nat$ (+ (of_nat$ ?v0) 1)))) :pattern ( (fun_app$ uu$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4900
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4901
(let ((@x43 (monotonicity (rewrite (= (+ (of_nat$ ?0) 1) (+ 1 (of_nat$ ?0)))) (= (nat$ (+ (of_nat$ ?0) 1)) (nat$ (+ 1 (of_nat$ ?0)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4902
(let ((@x46 (monotonicity @x43 (= (= ?x29 (nat$ (+ (of_nat$ ?0) 1))) $x44))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4903
(let ((@x156 (mp~ (mp (asserted $x36) (quant-intro @x46 (= $x36 $x47)) $x47) (nnf-pos (refl (~ $x44 $x44)) (~ $x47 $x47)) $x47)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4904
(let (($x494 (or (not $x47) $x508)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4905
(let ((@x495 ((_ quant-inst (nat$ 1)) $x494)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4906
(let ((?x445 (of_nat$ ?x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4907
(let ((?x376 (nat$ ?x445)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4908
(let (($x377 (= ?x376 ?x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4909
(let (($x605 (forall ((?v0 Nat$) )(!(= (nat$ (of_nat$ ?v0)) ?v0) :pattern ( (of_nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4910
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4911
(let (($x82 (forall ((?v0 Nat$) )(= (nat$ (of_nat$ ?v0)) ?v0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4912
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4913
(let ((@x610 (trans (rewrite (= $x82 $x605)) (rewrite (= $x605 $x605)) (= $x82 $x605))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4914
(let ((@x162 (refl (~ (= (nat$ (of_nat$ ?0)) ?0) (= (nat$ (of_nat$ ?0)) ?0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4915
(let ((@x611 (mp (mp~ (asserted $x82) (nnf-pos @x162 (~ $x82 $x82)) $x82) @x610 $x605)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4916
(let (($x384 (or (not $x605) $x377)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4917
(let ((@x385 ((_ quant-inst (nat$ ?x516)) $x384)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4918
(let ((?x437 (* (- 1) ?x445)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4919
(let ((?x410 (+ ?x281 ?x437)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4920
(let (($x431 (<= ?x410 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4921
(let (($x378 (= ?x410 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4922
(let (($x448 (>= ?x281 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4923
(let (($x442 (>= ?x281 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4924
(let (($x282 (= ?x281 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4925
(let (($x613 (forall ((?v0 Int) )(!(let (($x88 (= (of_nat$ (nat$ ?v0)) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4926
(let (($x101 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4927
(let (($x102 (not $x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4928
(or $x102 $x88)))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4929
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4930
(let (($x108 (forall ((?v0 Int) )(let (($x88 (= (of_nat$ (nat$ ?v0)) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4931
(let (($x101 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4932
(let (($x102 (not $x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4933
(or $x102 $x88)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4934
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4935
(let (($x88 (= (of_nat$ (nat$ ?0)) ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4936
(let (($x101 (>= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4937
(let (($x102 (not $x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4938
(let (($x105 (or $x102 $x88)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4939
(let (($x90 (forall ((?v0 Int) )(let (($x88 (= (of_nat$ (nat$ ?v0)) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4940
(let (($x85 (<= 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4941
(=> $x85 $x88))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4942
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4943
(let (($x96 (forall ((?v0 Int) )(let (($x88 (= (of_nat$ (nat$ ?v0)) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4944
(or (not (<= 0 ?v0)) $x88)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4945
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4946
(let ((@x104 (monotonicity (rewrite (= (<= 0 ?0) $x101)) (= (not (<= 0 ?0)) $x102))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4947
(let ((@x110 (quant-intro (monotonicity @x104 (= (or (not (<= 0 ?0)) $x88) $x105)) (= $x96 $x108))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4948
(let ((@x95 (rewrite (= (=> (<= 0 ?0) $x88) (or (not (<= 0 ?0)) $x88)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4949
(let ((@x113 (mp (asserted $x90) (trans (quant-intro @x95 (= $x90 $x96)) @x110 (= $x90 $x108)) $x108)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4950
(let ((@x618 (mp (mp~ @x113 (nnf-pos (refl (~ $x105 $x105)) (~ $x108 $x108)) $x108) (quant-intro (refl (= $x105 $x105)) (= $x108 $x613)) $x613)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4951
(let (($x227 (not $x613)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4952
(let (($x271 (or $x227 $x282)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4953
(let ((@x578 (rewrite (= (not true) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4954
(let ((@x181 (rewrite (= (>= 1 0) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4955
(let ((@x289 (trans (monotonicity @x181 (= (not (>= 1 0)) (not true))) @x578 (= (not (>= 1 0)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4956
(let ((@x560 (monotonicity @x289 (= (or (not (>= 1 0)) $x282) (or false $x282)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4957
(let ((@x270 (trans @x560 (rewrite (= (or false $x282) $x282)) (= (or (not (>= 1 0)) $x282) $x282))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4958
(let ((@x552 (monotonicity @x270 (= (or $x227 (or (not (>= 1 0)) $x282)) $x271))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4959
(let ((@x555 (trans @x552 (rewrite (= $x271 $x271)) (= (or $x227 (or (not (>= 1 0)) $x282)) $x271))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4960
(let ((@x541 (mp ((_ quant-inst 1) (or $x227 (or (not (>= 1 0)) $x282))) @x555 $x271)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4961
(let ((@x351 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x282) $x442)) (unit-resolution @x541 @x618 $x282) $x442)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4962
(let (($x451 (not $x448)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4963
(let (($x409 (or $x227 $x451 $x378)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4964
(let (($x446 (= ?x445 ?x516)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4965
(let (($x443 (>= ?x516 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4966
(let (($x444 (not $x443)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4967
(let (($x447 (or $x444 $x446)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4968
(let (($x411 (or $x227 $x447)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4969
(let ((@x441 (monotonicity (monotonicity (rewrite (= $x443 $x448)) (= $x444 $x451)) (rewrite (= $x446 $x378)) (= $x447 (or $x451 $x378)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4970
(let ((@x420 (trans (monotonicity @x441 (= $x411 (or $x227 (or $x451 $x378)))) (rewrite (= (or $x227 (or $x451 $x378)) $x409)) (= $x411 $x409))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4971
(let ((@x430 (mp ((_ quant-inst (+ 1 ?x281)) $x411) @x420 $x409)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4972
(let ((@x343 (unit-resolution @x430 @x618 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x442) $x448)) @x351 $x448) $x378)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4973
(let (($x432 (>= ?x410 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4974
(let (($x331 (<= ?x281 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4975
(let ((@x335 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x282) $x331)) (unit-resolution @x541 @x618 $x282) $x331)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4976
(let ((@x341 ((_ th-lemma arith eq-propagate -1 -1 1 1) @x351 @x335 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x378) $x432)) @x343 $x432) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x378) $x431)) @x343 $x431) (= ?x445 2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4977
(let ((@x327 (trans (monotonicity (symm @x341 (= 2 ?x445)) (= ?x74 ?x376)) (unit-resolution @x385 @x611 $x377) (= ?x74 ?x517))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4978
(let ((@x329 (trans @x327 (symm (unit-resolution @x495 @x156 $x508) (= ?x517 ?x426)) (= ?x74 ?x426))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4979
(let ((@x312 (monotonicity @x329 (symm (unit-resolution @x507 @x595 $x515) (= nil$ ?x427)) (= ?x75 ?x428))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4980
(let ((@x316 (trans @x312 (symm (unit-resolution @x511 @x603 $x429) (= ?x428 ?x264)) (= ?x75 ?x264))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4981
(let ((?x577 (of_nat$ ?x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4982
(let ((?x522 (+ 1 ?x577)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4983
(let ((?x523 (nat$ ?x522)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4984
(let ((?x263 (fun_app$ uu$ ?x68)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4985
(let (($x512 (= ?x263 ?x523)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4986
(let (($x513 (or (not $x47) $x512)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4987
(let ((@x514 ((_ quant-inst (nat$ 0)) $x513)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4988
(let ((?x496 (of_nat$ ?x523)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4989
(let ((?x373 (nat$ ?x496)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4990
(let (($x375 (= ?x373 ?x523)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4991
(let (($x380 (or (not $x605) $x375)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4992
(let ((@x381 ((_ quant-inst (nat$ ?x522)) $x380)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4993
(let ((?x490 (* (- 1) ?x577)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4994
(let ((?x491 (+ ?x496 ?x490)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4995
(let (($x465 (<= ?x491 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4996
(let (($x492 (= ?x491 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4997
(let (($x499 (>= ?x577 (- 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4998
(let (($x502 (>= ?x577 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  4999
(let (($x249 (= ?x577 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5000
(let (($x228 (or $x227 $x249)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5001
(let ((@x584 (rewrite (= (>= 0 0) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5002
(let ((@x241 (trans (monotonicity @x584 (= (not (>= 0 0)) (not true))) @x578 (= (not (>= 0 0)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5003
(let ((@x580 (monotonicity @x241 (= (or (not (>= 0 0)) $x249) (or false $x249)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5004
(let ((@x226 (trans @x580 (rewrite (= (or false $x249) $x249)) (= (or (not (>= 0 0)) $x249) $x249))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5005
(let ((@x568 (monotonicity @x226 (= (or $x227 (or (not (>= 0 0)) $x249)) $x228))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5006
(let ((@x571 (trans @x568 (rewrite (= $x228 $x228)) (= (or $x227 (or (not (>= 0 0)) $x249)) $x228))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5007
(let ((@x208 (mp ((_ quant-inst 0) (or $x227 (or (not (>= 0 0)) $x249))) @x571 $x228)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5008
(let ((@x323 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x249) $x502)) (unit-resolution @x208 @x618 $x249) $x502)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5009
(let (($x487 (not $x499)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5010
(let (($x477 (or $x227 $x487 $x492)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5011
(let (($x497 (= ?x496 ?x522)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5012
(let (($x509 (>= ?x522 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5013
(let (($x510 (not $x509)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5014
(let (($x498 (or $x510 $x497)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5015
(let (($x478 (or $x227 $x498)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5016
(let ((@x476 (monotonicity (monotonicity (rewrite (= $x509 $x499)) (= $x510 $x487)) (rewrite (= $x497 $x492)) (= $x498 (or $x487 $x492)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5017
(let ((@x486 (trans (monotonicity @x476 (= $x478 (or $x227 (or $x487 $x492)))) (rewrite (= (or $x227 (or $x487 $x492)) $x477)) (= $x478 $x477))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5018
(let ((@x464 (mp ((_ quant-inst (+ 1 ?x577)) $x478) @x486 $x477)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5019
(let ((@x304 (unit-resolution @x464 @x618 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x502) $x499)) @x323 $x499) $x492)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5020
(let (($x466 (>= ?x491 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5021
(let (($x504 (<= ?x577 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5022
(let ((@x298 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x249) $x504)) (unit-resolution @x208 @x618 $x249) $x504)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5023
(let ((@x300 ((_ th-lemma arith eq-propagate -1 -1 -1 -1) @x323 @x298 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x492) $x466)) @x304 $x466) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x492) $x465)) @x304 $x465) (= ?x496 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5024
(let ((@x294 (trans (monotonicity (symm @x300 (= 1 ?x496)) (= ?x69 ?x373)) (unit-resolution @x381 @x611 $x375) (= ?x69 ?x523))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5025
(let ((@x273 (trans @x294 (symm (unit-resolution @x514 @x156 $x512) (= ?x523 ?x263)) (= ?x69 ?x263))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5026
(let ((@x279 (symm (monotonicity @x273 @x316 (= ?x76 (cons$ ?x263 ?x264))) (= (cons$ ?x263 ?x264) ?x76))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5027
(let ((?x265 (cons$ ?x263 ?x264)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5028
(let (($x266 (= ?x72 ?x265)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5029
(let (($x237 (or $x582 $x266)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5030
(let ((@x367 ((_ quant-inst uu$ (nat$ 0) (cons$ ?x69 nil$)) $x237)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5031
(let (($x78 (not $x77)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5032
(let ((@x79 (asserted $x78)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5033
(unit-resolution @x79 (trans (unit-resolution @x367 @x603 $x266) @x279 $x77) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5034
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  5035
40c61a0200976d6203302a7343af5b7ad1e6ce36 11 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5036
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5037
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5038
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5039
(let (($x29 (forall ((?v0 A$) )(p$ ?v0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5040
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5041
(let (($x30 (not $x29)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5042
(let (($x31 (or $x29 $x30)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5043
(let (($x32 (not $x31)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5044
(let ((@x42 (trans (monotonicity (rewrite (= $x31 true)) (= $x32 (not true))) (rewrite (= (not true) false)) (= $x32 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5045
(mp (asserted $x32) @x42 false))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5046
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  5047
825fdd8f086b9606c3db6feacf7565b92faf5ae2 190 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5048
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5049
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5050
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5051
(let ((?x87 (nat$ 6)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5052
(let ((?x80 (nat$ 4)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5053
(let ((?x81 (dec_10$ ?x80)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5054
(let ((?x82 (of_nat$ ?x81)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5055
(let ((?x83 (* 4 ?x82)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5056
(let ((?x84 (nat$ ?x83)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5057
(let ((?x85 (dec_10$ ?x84)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5058
(let (($x88 (= ?x85 ?x87)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5059
(let ((?x461 (dec_10$ ?x87)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5060
(let (($x421 (= ?x461 ?x87)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5061
(let ((?x487 (of_nat$ ?x87)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5062
(let ((?x464 (+ (- 10) ?x487)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5063
(let ((?x447 (nat$ ?x464)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5064
(let ((?x389 (dec_10$ ?x447)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5065
(let (($x448 (= ?x461 ?x389)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5066
(let (($x460 (>= ?x487 10)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5067
(let (($x449 (ite $x460 $x448 $x421)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5068
(let (($x602 (forall ((?v0 Nat$) )(!(let ((?x29 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5069
(let (($x60 (>= ?x29 10)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5070
(ite $x60 (= (dec_10$ ?v0) (dec_10$ (nat$ (+ (- 10) ?x29)))) (= (dec_10$ ?v0) ?v0)))) :pattern ( (of_nat$ ?v0) ) :pattern ( (dec_10$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5071
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5072
(let (($x180 (forall ((?v0 Nat$) )(let ((?x29 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5073
(let (($x60 (>= ?x29 10)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5074
(ite $x60 (= (dec_10$ ?v0) (dec_10$ (nat$ (+ (- 10) ?x29)))) (= (dec_10$ ?v0) ?v0)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5075
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5076
(let ((?x29 (of_nat$ ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5077
(let (($x60 (>= ?x29 10)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5078
(let (($x177 (ite $x60 (= (dec_10$ ?0) (dec_10$ (nat$ (+ (- 10) ?x29)))) (= (dec_10$ ?0) ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5079
(let (($x73 (forall ((?v0 Nat$) )(let ((?x46 (dec_10$ (nat$ (+ (- 10) (of_nat$ ?v0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5080
(let ((?x29 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5081
(let (($x60 (>= ?x29 10)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5082
(let ((?x65 (ite $x60 ?x46 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5083
(let ((?x28 (dec_10$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5084
(= ?x28 ?x65)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5085
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5086
(let ((?x46 (dec_10$ (nat$ (+ (- 10) ?x29)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5087
(let ((?x65 (ite $x60 ?x46 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5088
(let ((?x28 (dec_10$ ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5089
(let (($x70 (= ?x28 ?x65)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5090
(let (($x37 (forall ((?v0 Nat$) )(let ((?x29 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5091
(let (($x31 (< ?x29 10)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5092
(let ((?x28 (dec_10$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5093
(= ?x28 (ite $x31 ?v0 (dec_10$ (nat$ (- ?x29 10)))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5094
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5095
(let (($x55 (forall ((?v0 Nat$) )(let ((?x46 (dec_10$ (nat$ (+ (- 10) (of_nat$ ?v0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5096
(let ((?x29 (of_nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5097
(let (($x31 (< ?x29 10)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5098
(let ((?x49 (ite $x31 ?v0 ?x46)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5099
(let ((?x28 (dec_10$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5100
(= ?x28 ?x49)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5101
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5102
(let ((@x64 (monotonicity (rewrite (= (< ?x29 10) (not $x60))) (= (ite (< ?x29 10) ?0 ?x46) (ite (not $x60) ?0 ?x46)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5103
(let ((@x69 (trans @x64 (rewrite (= (ite (not $x60) ?0 ?x46) ?x65)) (= (ite (< ?x29 10) ?0 ?x46) ?x65))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5104
(let ((@x72 (monotonicity @x69 (= (= ?x28 (ite (< ?x29 10) ?0 ?x46)) $x70))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5105
(let (($x31 (< ?x29 10)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5106
(let ((?x49 (ite $x31 ?0 ?x46)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5107
(let (($x52 (= ?x28 ?x49)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5108
(let ((@x45 (monotonicity (rewrite (= (- ?x29 10) (+ (- 10) ?x29))) (= (nat$ (- ?x29 10)) (nat$ (+ (- 10) ?x29))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5109
(let ((@x51 (monotonicity (monotonicity @x45 (= (dec_10$ (nat$ (- ?x29 10))) ?x46)) (= (ite $x31 ?0 (dec_10$ (nat$ (- ?x29 10)))) ?x49))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5110
(let ((@x54 (monotonicity @x51 (= (= ?x28 (ite $x31 ?0 (dec_10$ (nat$ (- ?x29 10))))) $x52))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5111
(let ((@x77 (trans (quant-intro @x54 (= $x37 $x55)) (quant-intro @x72 (= $x55 $x73)) (= $x37 $x73))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5112
(let ((@x161 (mp~ (mp (asserted $x37) @x77 $x73) (nnf-pos (refl (~ $x70 $x70)) (~ $x73 $x73)) $x73)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5113
(let ((@x183 (mp @x161 (quant-intro (rewrite (= $x70 $x177)) (= $x73 $x180)) $x180)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5114
(let ((@x607 (mp @x183 (quant-intro (refl (= $x177 $x177)) (= $x180 $x602)) $x602)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5115
(let (($x256 (not $x602)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5116
(let (($x452 (or $x256 $x449)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5117
(let ((@x420 ((_ quant-inst (nat$ 6)) $x452)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5118
(let (($x385 (not $x460)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5119
(let (($x450 (<= ?x487 6)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5120
(let (($x488 (= ?x487 6)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5121
(let (($x616 (forall ((?v0 Int) )(!(let ((?x97 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5122
(let ((?x98 (of_nat$ ?x97)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5123
(let (($x99 (= ?x98 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5124
(let (($x112 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5125
(let (($x113 (not $x112)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5126
(or $x113 $x99)))))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5127
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5128
(let (($x119 (forall ((?v0 Int) )(let ((?x97 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5129
(let ((?x98 (of_nat$ ?x97)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5130
(let (($x99 (= ?x98 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5131
(let (($x112 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5132
(let (($x113 (not $x112)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5133
(or $x113 $x99)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5134
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5135
(let ((?x97 (nat$ ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5136
(let ((?x98 (of_nat$ ?x97)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5137
(let (($x99 (= ?x98 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5138
(let (($x112 (>= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5139
(let (($x113 (not $x112)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5140
(let (($x116 (or $x113 $x99)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5141
(let (($x101 (forall ((?v0 Int) )(let ((?x97 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5142
(let ((?x98 (of_nat$ ?x97)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5143
(let (($x99 (= ?x98 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5144
(let (($x96 (<= 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5145
(=> $x96 $x99))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5146
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5147
(let (($x107 (forall ((?v0 Int) )(let ((?x97 (nat$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5148
(let ((?x98 (of_nat$ ?x97)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5149
(let (($x99 (= ?x98 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5150
(or (not (<= 0 ?v0)) $x99)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5151
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5152
(let ((@x115 (monotonicity (rewrite (= (<= 0 ?0) $x112)) (= (not (<= 0 ?0)) $x113))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5153
(let ((@x121 (quant-intro (monotonicity @x115 (= (or (not (<= 0 ?0)) $x99) $x116)) (= $x107 $x119))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5154
(let ((@x106 (rewrite (= (=> (<= 0 ?0) $x99) (or (not (<= 0 ?0)) $x99)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5155
(let ((@x124 (mp (asserted $x101) (trans (quant-intro @x106 (= $x101 $x107)) @x121 (= $x101 $x119)) $x119)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5156
(let ((@x621 (mp (mp~ @x124 (nnf-pos (refl (~ $x116 $x116)) (~ $x119 $x119)) $x119) (quant-intro (refl (= $x116 $x116)) (= $x119 $x616)) $x616)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5157
(let (($x544 (not $x616)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5158
(let (($x480 (or $x544 $x488)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5159
(let ((@x491 (rewrite (= (>= 6 0) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5160
(let ((@x495 (trans (monotonicity @x491 (= (not (>= 6 0)) (not true))) (rewrite (= (not true) false)) (= (not (>= 6 0)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5161
(let ((@x475 (monotonicity @x495 (= (or (not (>= 6 0)) $x488) (or false $x488)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5162
(let ((@x479 (trans @x475 (rewrite (= (or false $x488) $x488)) (= (or (not (>= 6 0)) $x488) $x488))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5163
(let ((@x465 (monotonicity @x479 (= (or $x544 (or (not (>= 6 0)) $x488)) $x480))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5164
(let ((@x468 (trans @x465 (rewrite (= $x480 $x480)) (= (or $x544 (or (not (>= 6 0)) $x488)) $x480))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5165
(let ((@x469 (mp ((_ quant-inst 6) (or $x544 (or (not (>= 6 0)) $x488))) @x468 $x480)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5166
(let ((@x415 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x488) $x450)) (unit-resolution @x469 @x621 $x488) $x450)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5167
(let ((@x386 (unit-resolution (def-axiom (or (not $x449) $x460 $x421)) (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x450) $x385)) @x415 $x385) (unit-resolution @x420 @x607 $x449) $x421)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5168
(let ((?x251 (of_nat$ ?x80)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5169
(let ((?x454 (* (- 1) ?x251)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5170
(let ((?x455 (+ ?x82 ?x454)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5171
(let (($x456 (<= ?x455 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5172
(let (($x453 (= ?x82 ?x251)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5173
(let (($x238 (= ?x81 ?x80)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5174
(let ((?x233 (+ (- 10) ?x251)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5175
(let ((?x575 (nat$ ?x233)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5176
(let ((?x236 (dec_10$ ?x575)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5177
(let (($x237 (= ?x81 ?x236)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5178
(let (($x252 (>= ?x251 10)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5179
(let (($x239 (ite $x252 $x237 $x238)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5180
(let (($x578 (or $x256 $x239)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5181
(let ((@x579 ((_ quant-inst (nat$ 4)) $x578)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5182
(let (($x581 (not $x252)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5183
(let (($x380 (<= ?x251 4)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5184
(let (($x563 (= ?x251 4)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5185
(let (($x545 (or $x544 $x563)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5186
(let ((@x566 (rewrite (= (>= 4 0) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5187
(let ((@x558 (trans (monotonicity @x566 (= (not (>= 4 0)) (not true))) (rewrite (= (not true) false)) (= (not (>= 4 0)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5188
(let ((@x398 (monotonicity @x558 (= (or (not (>= 4 0)) $x563) (or false $x563)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5189
(let ((@x543 (trans @x398 (rewrite (= (or false $x563) $x563)) (= (or (not (>= 4 0)) $x563) $x563))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5190
(let ((@x549 (monotonicity @x543 (= (or $x544 (or (not (>= 4 0)) $x563)) $x545))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5191
(let ((@x377 (trans @x549 (rewrite (= $x545 $x545)) (= (or $x544 (or (not (>= 4 0)) $x563)) $x545))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5192
(let ((@x379 (mp ((_ quant-inst 4) (or $x544 (or (not (>= 4 0)) $x563))) @x377 $x545)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5193
(let ((@x393 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x563) $x380)) (unit-resolution @x379 @x621 $x563) $x380)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5194
(let ((@x367 (unit-resolution (def-axiom (or (not $x239) $x252 $x238)) (unit-resolution ((_ th-lemma arith farkas 1 1) (or (not $x380) $x581)) @x393 $x581) (unit-resolution @x579 @x607 $x239) $x238)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5195
(let ((@x215 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x453) $x456)) (monotonicity @x367 $x453) $x456)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5196
(let (($x457 (>= ?x455 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5197
(let ((@x376 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x453) $x457)) (monotonicity @x367 $x453) $x457)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5198
(let (($x536 (>= ?x251 4)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5199
(let ((@x362 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x563) $x536)) (unit-resolution @x379 @x621 $x563) $x536)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5200
(let ((?x576 (of_nat$ ?x84)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5201
(let ((?x439 (* (- 1) ?x576)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5202
(let ((?x440 (+ ?x83 ?x439)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5203
(let (($x517 (<= ?x440 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5204
(let (($x438 (= ?x440 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5205
(let (($x532 (>= ?x82 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5206
(let ((@x354 (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x532 (not $x536) (not $x457))) @x362 @x376 $x532)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5207
(let (($x434 (not $x532)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5208
(let (($x533 (or $x434 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5209
(let (($x522 (or $x544 $x434 $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5210
(let (($x530 (= ?x576 ?x83)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5211
(let (($x529 (>= ?x83 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5212
(let (($x433 (not $x529)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5213
(let (($x531 (or $x433 $x530)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5214
(let (($x523 (or $x544 $x531)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5215
(let ((@x535 (monotonicity (monotonicity (rewrite (= $x529 $x532)) (= $x433 $x434)) (rewrite (= $x530 $x438)) (= $x531 $x533))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5216
(let ((@x528 (trans (monotonicity @x535 (= $x523 (or $x544 $x533))) (rewrite (= (or $x544 $x533) $x522)) (= $x523 $x522))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5217
(let ((@x516 (mp ((_ quant-inst (* 4 ?x82)) $x523) @x528 $x522)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5218
(let ((@x351 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x438) $x517)) (unit-resolution (unit-resolution @x516 @x621 $x533) @x354 $x438) $x517)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5219
(let (($x518 (>= ?x440 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5220
(let ((@x345 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x438) $x518)) (unit-resolution (unit-resolution @x516 @x621 $x533) @x354 $x438) $x518)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5221
(let ((@x349 (monotonicity ((_ th-lemma arith eq-propagate 1 1 -4 -4 -4 -4) @x345 @x351 @x362 @x393 @x376 @x215 (= (+ (- 10) ?x576) 6)) (= (nat$ (+ (- 10) ?x576)) ?x87))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5222
(let ((?x574 (+ (- 10) ?x576)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5223
(let ((?x278 (nat$ ?x574)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5224
(let ((?x292 (dec_10$ ?x278)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5225
(let (($x293 (= ?x85 ?x292)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5226
(let (($x294 (= ?x85 ?x84)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5227
(let (($x577 (>= ?x576 10)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5228
(let (($x295 (ite $x577 $x293 $x294)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5229
(let (($x568 (or $x256 $x295)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5230
(let ((@x299 ((_ quant-inst (nat$ ?x83)) $x568)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5231
(let ((@x336 (unit-resolution ((_ th-lemma arith assign-bounds 1 4 4) (or $x577 (not $x517) (not $x536) (not $x457))) @x362 @x351 @x376 $x577)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5232
(let ((@x337 (unit-resolution (def-axiom (or (not $x295) (not $x577) $x293)) @x336 (unit-resolution @x299 @x607 $x295) $x293)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5233
(let ((@x323 (trans (trans @x337 (monotonicity @x349 (= ?x292 ?x461)) (= ?x85 ?x461)) @x386 $x88)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5234
(let (($x89 (not $x88)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5235
(let ((@x90 (asserted $x89)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5236
(unit-resolution @x90 @x323 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5237
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  5238
f8d23ebbeac7f77a32b969922f558052d0057659 336 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5239
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5240
((set-logic <null>)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5241
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5242
(let ((?x102 (mod$ l$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5243
(let ((?x99 (map$ uu$ xs$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5244
(let ((?x100 (eval_dioph$ ks$ ?x99)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5245
(let ((?x101 (mod$ ?x100 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5246
(let (($x103 (= ?x101 ?x102)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5247
(let ((?x96 (eval_dioph$ ks$ xs$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5248
(let (($x98 (= ?x96 l$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5249
(let ((?x113 (* (- 1) ?x100)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5250
(let ((?x114 (+ l$ ?x113)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5251
(let ((?x117 (div$ ?x114 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5252
(let ((?x104 (map$ uua$ xs$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5253
(let ((?x105 (eval_dioph$ ks$ ?x104)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5254
(let (($x120 (= ?x105 ?x117)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5255
(let (($x364 (not $x120)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5256
(let (($x363 (not $x103)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5257
(let (($x365 (or $x363 $x364)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5258
(let ((?x849 (div ?x96 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5259
(let ((?x1076 (* (- 1) ?x849)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5260
(let ((?x804 (mod ?x96 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5261
(let ((?x831 (* (- 1) ?x804)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5262
(let ((?x621 (mod l$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5263
(let ((?x648 (* (- 1) ?x621)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5264
(let (($x1078 (>= (+ l$ ?x102 ?x648 (* (- 1) (div l$ 2)) ?x831 ?x1076) 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5265
(let ((?x475 (* (- 1) l$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5266
(let ((?x798 (+ ?x96 ?x475)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5267
(let (($x800 (>= ?x798 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5268
(let (($x874 (not $x800)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5269
(let (($x799 (<= ?x798 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5270
(let ((?x791 (+ ?x105 (* (- 1) ?x117))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5271
(let (($x792 (<= ?x791 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5272
(let (($x366 (not $x365)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5273
(let ((@x583 (hypothesis $x366)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5274
(let ((@x577 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x364 $x792)) (unit-resolution (def-axiom (or $x365 $x120)) @x583 $x120) $x792)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5275
(let ((?x542 (+ l$ ?x113 (* (- 2) (div ?x114 2)) (* (- 1) (mod (+ l$ ?x100) 2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5276
(let (($x548 (>= ?x542 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5277
(let (($x539 (= ?x542 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5278
(let ((@x26 (true-axiom true)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5279
(let ((@x898 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x539) $x548)) (unit-resolution ((_ th-lemma arith) (or false $x539)) @x26 $x539) $x548)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5280
(let ((?x606 (* (- 2) ?x105)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5281
(let ((?x607 (+ ?x96 ?x113 ?x606)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5282
(let (($x614 (<= ?x607 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5283
(let (($x608 (= ?x607 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5284
(let (($x386 (forall ((?v0 Int_list$) (?v1 Nat_list$) )(!(let ((?x48 (eval_dioph$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5285
(let ((?x86 (+ ?x48 (* (- 1) (eval_dioph$ ?v0 (map$ uu$ ?v1))) (* (- 2) (eval_dioph$ ?v0 (map$ uua$ ?v1))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5286
(= ?x86 0))) :pattern ( (eval_dioph$ ?v0 (map$ uu$ ?v1)) ) :pattern ( (eval_dioph$ ?v0 (map$ uua$ ?v1)) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5287
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5288
(let (($x88 (forall ((?v0 Int_list$) (?v1 Nat_list$) )(let ((?x48 (eval_dioph$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5289
(let ((?x86 (+ ?x48 (* (- 1) (eval_dioph$ ?v0 (map$ uu$ ?v1))) (* (- 2) (eval_dioph$ ?v0 (map$ uua$ ?v1))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5290
(= ?x86 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5291
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5292
(let ((?x48 (eval_dioph$ ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5293
(let ((?x86 (+ ?x48 (* (- 1) (eval_dioph$ ?1 (map$ uu$ ?0))) (* (- 2) (eval_dioph$ ?1 (map$ uua$ ?0))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5294
(let (($x82 (= ?x86 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5295
(let (($x61 (forall ((?v0 Int_list$) (?v1 Nat_list$) )(let ((?x48 (eval_dioph$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5296
(let ((?x51 (eval_dioph$ ?v0 (map$ uu$ ?v1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5297
(let ((?x59 (+ (* (eval_dioph$ ?v0 (map$ uua$ ?v1)) 2) ?x51)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5298
(= ?x59 ?x48)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5299
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5300
(let (($x77 (forall ((?v0 Int_list$) (?v1 Nat_list$) )(let ((?x48 (eval_dioph$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5301
(let ((?x57 (eval_dioph$ ?v0 (map$ uua$ ?v1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5302
(let ((?x63 (* 2 ?x57)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5303
(let ((?x51 (eval_dioph$ ?v0 (map$ uu$ ?v1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5304
(let ((?x69 (+ ?x51 ?x63)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5305
(= ?x69 ?x48)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5306
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5307
(let ((?x57 (eval_dioph$ ?1 (map$ uua$ ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5308
(let ((?x63 (* 2 ?x57)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5309
(let ((?x51 (eval_dioph$ ?1 (map$ uu$ ?0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5310
(let ((?x69 (+ ?x51 ?x63)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5311
(let (($x74 (= ?x69 ?x48)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5312
(let ((@x68 (monotonicity (rewrite (= (* ?x57 2) ?x63)) (= (+ (* ?x57 2) ?x51) (+ ?x63 ?x51)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5313
(let ((@x73 (trans @x68 (rewrite (= (+ ?x63 ?x51) ?x69)) (= (+ (* ?x57 2) ?x51) ?x69))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5314
(let ((@x79 (quant-intro (monotonicity @x73 (= (= (+ (* ?x57 2) ?x51) ?x48) $x74)) (= $x61 $x77))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5315
(let ((@x92 (trans @x79 (quant-intro (rewrite (= $x74 $x82)) (= $x77 $x88)) (= $x61 $x88))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5316
(let ((@x337 (mp~ (mp (asserted $x61) @x92 $x88) (nnf-pos (refl (~ $x82 $x82)) (~ $x88 $x88)) $x88)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5317
(let ((@x391 (mp @x337 (quant-intro (refl (= $x82 $x82)) (= $x88 $x386)) $x386)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5318
(let (($x612 (or (not $x386) $x608)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5319
(let ((@x613 ((_ quant-inst ks$ xs$) $x612)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5320
(let ((@x905 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x608) $x614)) (unit-resolution @x613 @x391 $x608) $x614)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5321
(let ((?x502 (+ ?x117 (* (- 1) (div ?x114 2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5322
(let (($x519 (<= ?x502 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5323
(let (($x503 (= ?x502 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5324
(let (($x413 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x212 (div ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5325
(let ((?x224 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5326
(let ((?x221 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5327
(let ((?x227 (div ?x221 ?x224)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5328
(let (($x242 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5329
(let ((?x249 (ite $x242 ?x227 ?x212)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5330
(let (($x210 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5331
(let ((?x209 (div$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5332
(= ?x209 (ite $x210 0 ?x249)))))))))) :pattern ( (div$ ?v0 ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5333
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5334
(let (($x260 (forall ((?v0 Int) (?v1 Int) )(let ((?x212 (div ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5335
(let ((?x224 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5336
(let ((?x221 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5337
(let ((?x227 (div ?x221 ?x224)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5338
(let (($x242 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5339
(let ((?x249 (ite $x242 ?x227 ?x212)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5340
(let (($x210 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5341
(let ((?x209 (div$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5342
(= ?x209 (ite $x210 0 ?x249)))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5343
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5344
(let ((?x212 (div ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5345
(let ((?x224 (* (- 1) ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5346
(let ((?x221 (* (- 1) ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5347
(let ((?x227 (div ?x221 ?x224)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5348
(let (($x242 (<= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5349
(let ((?x249 (ite $x242 ?x227 ?x212)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5350
(let (($x210 (= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5351
(let ((?x209 (div$ ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5352
(let (($x257 (= ?x209 (ite $x210 0 ?x249))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5353
(let (($x219 (forall ((?v0 Int) (?v1 Int) )(let (($x210 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5354
(let ((?x217 (ite $x210 0 (ite (< 0 ?v1) (div ?v0 ?v1) (div (- ?v0) (- ?v1))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5355
(let ((?x209 (div$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5356
(= ?x209 ?x217)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5357
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5358
(let (($x239 (forall ((?v0 Int) (?v1 Int) )(let ((?x224 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5359
(let ((?x221 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5360
(let ((?x227 (div ?x221 ?x224)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5361
(let ((?x212 (div ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5362
(let (($x211 (< 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5363
(let ((?x230 (ite $x211 ?x212 ?x227)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5364
(let (($x210 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5365
(let ((?x233 (ite $x210 0 ?x230)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5366
(let ((?x209 (div$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5367
(= ?x209 ?x233)))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5368
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5369
(let (($x211 (< 0 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5370
(let ((?x230 (ite $x211 ?x212 ?x227)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5371
(let ((?x233 (ite $x210 0 ?x230)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5372
(let ((@x248 (monotonicity (rewrite (= $x211 (not $x242))) (= ?x230 (ite (not $x242) ?x212 ?x227)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5373
(let ((@x253 (trans @x248 (rewrite (= (ite (not $x242) ?x212 ?x227) ?x249)) (= ?x230 ?x249))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5374
(let ((@x259 (monotonicity (monotonicity @x253 (= ?x233 (ite $x210 0 ?x249))) (= (= ?x209 ?x233) $x257))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5375
(let (($x236 (= ?x209 ?x233)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5376
(let (($x237 (= (= ?x209 (ite $x210 0 (ite $x211 ?x212 (div (- ?1) (- ?0))))) $x236)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5377
(let ((@x229 (monotonicity (rewrite (= (- ?1) ?x221)) (rewrite (= (- ?0) ?x224)) (= (div (- ?1) (- ?0)) ?x227))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5378
(let ((@x235 (monotonicity (monotonicity @x229 (= (ite $x211 ?x212 (div (- ?1) (- ?0))) ?x230)) (= (ite $x210 0 (ite $x211 ?x212 (div (- ?1) (- ?0)))) ?x233))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5379
(let ((@x264 (trans (quant-intro (monotonicity @x235 $x237) (= $x219 $x239)) (quant-intro @x259 (= $x239 $x260)) (= $x219 $x260))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5380
(let ((@x357 (mp~ (mp (asserted $x219) @x264 $x260) (nnf-pos (refl (~ $x257 $x257)) (~ $x260 $x260)) $x260)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5381
(let ((@x418 (mp @x357 (quant-intro (refl (= $x257 $x257)) (= $x260 $x413)) $x413)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5382
(let (($x509 (or (not $x413) $x503)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5383
(let ((?x467 (div ?x114 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5384
(let (($x463 (<= 2 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5385
(let ((?x468 (ite $x463 (div (* (- 1) ?x114) (* (- 1) 2)) ?x467)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5386
(let (($x462 (= 2 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5387
(let ((?x469 (ite $x462 0 ?x468)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5388
(let (($x470 (= ?x117 ?x469)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5389
(let ((@x480 (rewrite (= (* (- 1) 2) (- 2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5390
(let ((@x483 (monotonicity (rewrite (= (* (- 1) ?x114) (+ ?x475 ?x100))) @x480 (= (div (* (- 1) ?x114) (* (- 1) 2)) (div (+ ?x475 ?x100) (- 2))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5391
(let ((@x474 (rewrite (= $x463 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5392
(let ((@x486 (monotonicity @x474 @x483 (= ?x468 (ite false (div (+ ?x475 ?x100) (- 2)) ?x467)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5393
(let ((@x490 (trans @x486 (rewrite (= (ite false (div (+ ?x475 ?x100) (- 2)) ?x467) ?x467)) (= ?x468 ?x467))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5394
(let ((@x472 (rewrite (= $x462 false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5395
(let ((@x497 (trans (monotonicity @x472 @x490 (= ?x469 (ite false 0 ?x467))) (rewrite (= (ite false 0 ?x467) ?x467)) (= ?x469 ?x467))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5396
(let ((@x507 (trans (monotonicity @x497 (= $x470 (= ?x117 ?x467))) (rewrite (= (= ?x117 ?x467) $x503)) (= $x470 $x503))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5397
(let ((@x516 (trans (monotonicity @x507 (= (or (not $x413) $x470) $x509)) (rewrite (= $x509 $x509)) (= (or (not $x413) $x470) $x509))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5398
(let ((@x907 (unit-resolution (mp ((_ quant-inst (+ l$ ?x113) 2) (or (not $x413) $x470)) @x516 $x509) @x418 $x503)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5399
(let ((?x530 (mod (+ l$ ?x100) 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5400
(let (($x570 (>= ?x530 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5401
(let ((@x915 ((_ th-lemma arith farkas 1 -2 -2 -1 1 1) (unit-resolution ((_ th-lemma arith) (or false $x570)) @x26 $x570) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x503) $x519)) @x907 $x519) (hypothesis $x792) @x905 (hypothesis (not $x799)) @x898 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5402
(let (($x137 (not $x98)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5403
(let (($x372 (= $x98 $x365)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5404
(let ((@x371 (monotonicity (rewrite (= (and $x103 $x120) $x366)) (= (= $x137 (and $x103 $x120)) (= $x137 $x366)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5405
(let ((@x376 (trans @x371 (rewrite (= (= $x137 $x366) $x372)) (= (= $x137 (and $x103 $x120)) $x372))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5406
(let (($x123 (and $x103 $x120)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5407
(let (($x138 (= $x137 $x123)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5408
(let (($x110 (= $x98 (and $x103 (= ?x105 (div$ (- l$ ?x100) 2))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5409
(let (($x111 (not $x110)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5410
(let ((@x119 (monotonicity (rewrite (= (- l$ ?x100) ?x114)) (= (div$ (- l$ ?x100) 2) ?x117))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5411
(let ((@x125 (monotonicity (monotonicity @x119 (= (= ?x105 (div$ (- l$ ?x100) 2)) $x120)) (= (and $x103 (= ?x105 (div$ (- l$ ?x100) 2))) $x123))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5412
(let ((@x133 (trans (monotonicity @x125 (= $x110 (= $x98 $x123))) (rewrite (= (= $x98 $x123) (= $x98 $x123))) (= $x110 (= $x98 $x123)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5413
(let ((@x142 (trans (monotonicity @x133 (= $x111 (not (= $x98 $x123)))) (rewrite (= (not (= $x98 $x123)) $x138)) (= $x111 $x138))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5414
(let ((@x377 (mp (mp (asserted $x111) @x142 $x138) @x376 $x372)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5415
(let ((@x449 (unit-resolution (def-axiom (or $x137 $x365 (not $x372))) @x377 (or $x137 $x365))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5416
(let ((@x603 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x98 (not $x799) $x874)) (unit-resolution @x449 @x583 $x137) (or (not $x799) $x874))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5417
(let ((@x604 (unit-resolution @x603 (unit-resolution (lemma @x915 (or $x799 (not $x792))) @x577 $x799) $x874)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5418
(let ((?x649 (+ ?x102 ?x648)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5419
(let (($x666 (>= ?x649 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5420
(let (($x650 (= ?x649 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5421
(let (($x420 (forall ((?v0 Int) (?v1 Int) )(!(let ((?x267 (mod ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5422
(let ((?x224 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5423
(let ((?x221 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5424
(let ((?x275 (mod ?x221 ?x224)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5425
(let ((?x281 (* (- 1) ?x275)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5426
(let (($x242 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5427
(let ((?x301 (ite $x242 ?x281 ?x267)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5428
(let (($x210 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5429
(let ((?x306 (ite $x210 ?v0 ?x301)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5430
(let ((?x266 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5431
(= ?x266 ?x306))))))))))) :pattern ( (mod$ ?v0 ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5432
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5433
(let (($x312 (forall ((?v0 Int) (?v1 Int) )(let ((?x267 (mod ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5434
(let ((?x224 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5435
(let ((?x221 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5436
(let ((?x275 (mod ?x221 ?x224)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5437
(let ((?x281 (* (- 1) ?x275)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5438
(let (($x242 (<= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5439
(let ((?x301 (ite $x242 ?x281 ?x267)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5440
(let (($x210 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5441
(let ((?x306 (ite $x210 ?v0 ?x301)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5442
(let ((?x266 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5443
(= ?x266 ?x306))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5444
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5445
(let ((?x267 (mod ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5446
(let ((?x275 (mod ?x221 ?x224)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5447
(let ((?x281 (* (- 1) ?x275)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5448
(let ((?x301 (ite $x242 ?x281 ?x267)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5449
(let ((?x306 (ite $x210 ?1 ?x301)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5450
(let ((?x266 (mod$ ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5451
(let (($x309 (= ?x266 ?x306)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5452
(let (($x273 (forall ((?v0 Int) (?v1 Int) )(let (($x210 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5453
(let ((?x271 (ite $x210 ?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
  5454
(let ((?x266 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5455
(= ?x266 ?x271)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5456
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5457
(let (($x295 (forall ((?v0 Int) (?v1 Int) )(let ((?x224 (* (- 1) ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5458
(let ((?x221 (* (- 1) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5459
(let ((?x275 (mod ?x221 ?x224)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5460
(let ((?x281 (* (- 1) ?x275)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5461
(let ((?x267 (mod ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5462
(let (($x211 (< 0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5463
(let ((?x286 (ite $x211 ?x267 ?x281)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5464
(let (($x210 (= ?v1 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5465
(let ((?x289 (ite $x210 ?v0 ?x286)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5466
(let ((?x266 (mod$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5467
(= ?x266 ?x289))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5468
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5469
(let ((@x300 (monotonicity (rewrite (= $x211 (not $x242))) (= (ite $x211 ?x267 ?x281) (ite (not $x242) ?x267 ?x281)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5470
(let ((@x305 (trans @x300 (rewrite (= (ite (not $x242) ?x267 ?x281) ?x301)) (= (ite $x211 ?x267 ?x281) ?x301))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5471
(let ((@x311 (monotonicity (monotonicity @x305 (= (ite $x210 ?1 (ite $x211 ?x267 ?x281)) ?x306)) (= (= ?x266 (ite $x210 ?1 (ite $x211 ?x267 ?x281))) $x309))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5472
(let ((?x286 (ite $x211 ?x267 ?x281)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5473
(let ((?x289 (ite $x210 ?1 ?x286)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5474
(let (($x292 (= ?x266 ?x289)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5475
(let (($x293 (= (= ?x266 (ite $x210 ?1 (ite $x211 ?x267 (- (mod (- ?1) (- ?0)))))) $x292)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5476
(let ((@x277 (monotonicity (rewrite (= (- ?1) ?x221)) (rewrite (= (- ?0) ?x224)) (= (mod (- ?1) (- ?0)) ?x275))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5477
(let ((@x285 (trans (monotonicity @x277 (= (- (mod (- ?1) (- ?0))) (- ?x275))) (rewrite (= (- ?x275) ?x281)) (= (- (mod (- ?1) (- ?0))) ?x281))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5478
(let ((@x288 (monotonicity @x285 (= (ite $x211 ?x267 (- (mod (- ?1) (- ?0)))) ?x286))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5479
(let ((@x291 (monotonicity @x288 (= (ite $x210 ?1 (ite $x211 ?x267 (- (mod (- ?1) (- ?0))))) ?x289))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5480
(let ((@x316 (trans (quant-intro (monotonicity @x291 $x293) (= $x273 $x295)) (quant-intro @x311 (= $x295 $x312)) (= $x273 $x312))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5481
(let ((@x362 (mp~ (mp (asserted $x273) @x316 $x312) (nnf-pos (refl (~ $x309 $x309)) (~ $x312 $x312)) $x312)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5482
(let ((@x425 (mp @x362 (quant-intro (refl (= $x309 $x309)) (= $x312 $x420)) $x420)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5483
(let (($x655 (not $x420)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5484
(let (($x656 (or $x655 $x650)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5485
(let ((?x465 (* (- 1) 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5486
(let ((?x616 (mod ?x475 ?x465)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5487
(let ((?x617 (* (- 1) ?x616)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5488
(let ((?x622 (ite $x463 ?x617 ?x621)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5489
(let ((?x623 (ite $x462 l$ ?x622)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5490
(let (($x624 (= ?x102 ?x623)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5491
(let ((@x630 (monotonicity (monotonicity @x480 (= ?x616 (mod ?x475 (- 2)))) (= ?x617 (* (- 1) (mod ?x475 (- 2)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5492
(let ((@x633 (monotonicity @x474 @x630 (= ?x622 (ite false (* (- 1) (mod ?x475 (- 2))) ?x621)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5493
(let ((@x637 (trans @x633 (rewrite (= (ite false (* (- 1) (mod ?x475 (- 2))) ?x621) ?x621)) (= ?x622 ?x621))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5494
(let ((@x644 (trans (monotonicity @x472 @x637 (= ?x623 (ite false l$ ?x621))) (rewrite (= (ite false l$ ?x621) ?x621)) (= ?x623 ?x621))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5495
(let ((@x654 (trans (monotonicity @x644 (= $x624 (= ?x102 ?x621))) (rewrite (= (= ?x102 ?x621) $x650)) (= $x624 $x650))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5496
(let ((@x663 (trans (monotonicity @x654 (= (or $x655 $x624) $x656)) (rewrite (= $x656 $x656)) (= (or $x655 $x624) $x656))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5497
(let ((@x664 (mp ((_ quant-inst l$ 2) (or $x655 $x624)) @x663 $x656)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5498
(let ((@x921 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x650) $x666)) (unit-resolution @x664 @x425 $x650) $x666)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5499
(let ((?x862 (* (- 2) ?x849)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5500
(let ((?x863 (+ ?x96 ?x831 ?x862)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5501
(let (($x869 (>= ?x863 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5502
(let (($x861 (= ?x863 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5503
(let ((@x924 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x861) $x869)) (unit-resolution ((_ th-lemma arith) (or false $x861)) @x26 $x861) $x869)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5504
(let ((?x667 (div l$ 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5505
(let ((?x680 (* (- 2) ?x667)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5506
(let ((?x681 (+ l$ ?x648 ?x680)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5507
(let (($x687 (>= ?x681 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5508
(let (($x679 (= ?x681 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5509
(let ((@x934 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x679) $x687)) (unit-resolution ((_ th-lemma arith) (or false $x679)) @x26 $x679) $x687)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5510
(let ((?x609 (mod$ ?x96 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5511
(let ((?x832 (+ ?x609 ?x831)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5512
(let (($x833 (= ?x832 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5513
(let (($x838 (or $x655 $x833)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5514
(let ((?x801 (* (- 1) ?x96)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5515
(let ((?x802 (mod ?x801 ?x465)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5516
(let ((?x803 (* (- 1) ?x802)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5517
(let ((?x805 (ite $x463 ?x803 ?x804)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5518
(let ((?x806 (ite $x462 ?x96 ?x805)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5519
(let (($x807 (= ?x609 ?x806)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5520
(let ((@x813 (monotonicity (monotonicity @x480 (= ?x802 (mod ?x801 (- 2)))) (= ?x803 (* (- 1) (mod ?x801 (- 2)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5521
(let ((@x816 (monotonicity @x474 @x813 (= ?x805 (ite false (* (- 1) (mod ?x801 (- 2))) ?x804)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5522
(let ((@x820 (trans @x816 (rewrite (= (ite false (* (- 1) (mod ?x801 (- 2))) ?x804) ?x804)) (= ?x805 ?x804))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5523
(let ((@x827 (trans (monotonicity @x472 @x820 (= ?x806 (ite false ?x96 ?x804))) (rewrite (= (ite false ?x96 ?x804) ?x804)) (= ?x806 ?x804))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5524
(let ((@x837 (trans (monotonicity @x827 (= $x807 (= ?x609 ?x804))) (rewrite (= (= ?x609 ?x804) $x833)) (= $x807 $x833))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5525
(let ((@x845 (trans (monotonicity @x837 (= (or $x655 $x807) $x838)) (rewrite (= $x838 $x838)) (= (or $x655 $x807) $x838))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5526
(let ((@x775 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x833) (>= ?x832 0))) (unit-resolution (mp ((_ quant-inst (eval_dioph$ ks$ xs$) 2) (or $x655 $x807)) @x845 $x838) @x425 $x833) (>= ?x832 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5527
(let ((?x888 (* (- 1) ?x609)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5528
(let ((?x889 (+ ?x102 ?x888)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5529
(let (($x891 (>= ?x889 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5530
(let (($x887 (= ?x102 ?x609)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5531
(let (($x881 (= ?x101 ?x609)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5532
(let (($x610 (= ?x609 ?x101)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5533
(let (($x379 (forall ((?v0 Int_list$) (?v1 Nat_list$) )(!(= (mod$ (eval_dioph$ ?v0 ?v1) 2) (mod$ (eval_dioph$ ?v0 (map$ uu$ ?v1)) 2)) :pattern ( (eval_dioph$ ?v0 (map$ uu$ ?v1)) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5534
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5535
(let (($x54 (forall ((?v0 Int_list$) (?v1 Nat_list$) )(= (mod$ (eval_dioph$ ?v0 ?v1) 2) (mod$ (eval_dioph$ ?v0 (map$ uu$ ?v1)) 2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5536
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5537
(let (($x53 (= (mod$ ?x48 2) (mod$ ?x51 2))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5538
(let ((@x332 (mp~ (asserted $x54) (nnf-pos (refl (~ $x53 $x53)) (~ $x54 $x54)) $x54)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5539
(let ((@x384 (mp @x332 (quant-intro (refl (= $x53 $x53)) (= $x54 $x379)) $x379)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5540
(let (($x619 (or (not $x379) $x610)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5541
(let ((@x620 ((_ quant-inst ks$ xs$) $x619)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5542
(let ((@x965 (symm (unit-resolution (def-axiom (or $x365 $x103)) @x583 $x103) (= ?x102 ?x101))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5543
(let ((@x962 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x887) $x891)) (trans @x965 (symm (unit-resolution @x620 @x384 $x610) $x881) $x887) $x891)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5544
(let (($x890 (<= ?x889 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5545
(let ((@x1023 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x887) $x890)) (trans @x965 (symm (unit-resolution @x620 @x384 $x610) $x881) $x887) $x890)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5546
(let (($x793 (>= ?x791 0)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  5547
(let ((@x522 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x364 $x793)) (unit-resolution (def-axiom (or $x365 $x120)) @x583 $x120) $x793)))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5548
(let ((@x1085 (unit-resolution ((_ th-lemma arith) (or false (not (>= ?x530 2)))) @x26 (not (>= ?x530 2)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5549
(let (($x665 (<= ?x649 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5550
(let ((@x767 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x650) $x665)) (unit-resolution @x664 @x425 $x650) $x665)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5551
(let (($x868 (<= ?x863 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5552
(let ((@x858 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x861) $x868)) (unit-resolution ((_ th-lemma arith) (or false $x861)) @x26 $x861) $x868)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5553
(let (($x686 (<= ?x681 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5554
(let ((@x1092 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x679) $x686)) (unit-resolution ((_ th-lemma arith) (or false $x679)) @x26 $x679) $x686)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5555
(let ((@x1095 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x833) (<= ?x832 0))) (unit-resolution (mp ((_ quant-inst (eval_dioph$ ks$ xs$) 2) (or $x655 $x807)) @x845 $x838) @x425 $x833) (<= ?x832 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5556
(let (($x615 (>= ?x607 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5557
(let ((@x1100 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x608) $x615)) (unit-resolution @x613 @x391 $x608) $x615)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5558
(let ((@x1104 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x503) (>= ?x502 0))) @x907 (>= ?x502 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5559
(let ((@x1107 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x539) (<= ?x542 0))) (unit-resolution ((_ th-lemma arith) (or false $x539)) @x26 $x539) (<= ?x542 0))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5560
(let ((@x1108 ((_ th-lemma arith farkas 1 -2 -2 -1 -2 1 1 1 1 1 1) @x1107 @x1104 (hypothesis $x793) @x1100 (hypothesis $x1078) (hypothesis $x890) @x1095 @x1092 @x858 @x767 @x1085 false)))
57170
3afada8f820d updated SMT2 certificates
blanchet
parents: 56727
diff changeset
  5561
(let ((@x576 (unit-resolution (lemma @x1108 (or (not $x1078) (not $x793) (not $x890))) @x522 @x1023 (not $x1078))))
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5562
(let ((@x966 (unit-resolution @x576 ((_ th-lemma arith) @x962 @x775 @x934 @x924 @x921 @x604 $x1078) false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5563
(let ((@x967 (lemma @x966 $x365)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5564
(let ((@x445 (unit-resolution (def-axiom (or $x98 $x366 (not $x372))) @x377 (or $x98 $x366))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5565
(let ((@x586 (unit-resolution @x445 @x967 $x98)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5566
(let ((@x1067 (trans (symm (unit-resolution @x620 @x384 $x610) $x881) (monotonicity @x586 (= ?x609 ?x102)) $x103)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5567
(let (($x916 (not $x792)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5568
(let ((@x950 ((_ th-lemma arith assign-bounds 1 -1/2 -1/2 1/2 -1/2) (or $x793 (not $x519) (not $x570) (not $x548) (not $x614) $x874))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5569
(let ((@x951 (unit-resolution @x950 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x503) $x519)) @x907 $x519) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x137 $x800)) @x586 $x800) @x898 (unit-resolution ((_ th-lemma arith) (or false $x570)) @x26 $x570) @x905 $x793)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5570
(let ((@x1040 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x120 $x916 (not $x793))) (hypothesis $x364) (or $x916 (not $x793)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5571
(let ((@x1060 ((_ th-lemma arith farkas -2 -2 1 -1 1 1) (unit-resolution @x1040 @x951 $x916) @x1104 @x1107 @x1100 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x137 $x799)) @x586 $x799) @x1085 false)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5572
(let ((@x569 (unit-resolution (unit-resolution (def-axiom (or $x366 $x363 $x364)) @x967 $x365) (lemma @x1060 $x120) $x363)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5573
(unit-resolution @x569 @x1067 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5574
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  5575
d277a40ca34ecc409672601e981711fef2d0064f 64 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5576
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5577
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5578
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5579
(let ((?x108 (collect$ uu$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5580
(let ((?x109 (sup$ ?x108)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5581
(let (($x117 (less_eq$ ?x109 ?x109)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5582
(let (($x118 (not $x117)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5583
(let ((@x119 (asserted $x118)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5584
(let ((?x111 (collect$ uua$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5585
(let ((?x112 (sup$ ?x111)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5586
(let (($x115 (less_eq$ ?x112 ?x109)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5587
(let ((@x116 (asserted $x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5588
(let (($x113 (less_eq$ ?x109 ?x112)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5589
(let ((@x114 (asserted $x113)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5590
(let (($x578 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(!(let (($x97 (less_eq$ ?v0 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5591
(let (($x95 (less_eq$ ?v1 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5592
(let (($x138 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5593
(let (($x93 (less_eq$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5594
(let (($x137 (not $x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5595
(or $x137 $x138 $x97)))))) :pattern ( (less_eq$ ?v0 ?v1) (less_eq$ ?v1 ?v2) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5596
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5597
(let (($x156 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(let (($x97 (less_eq$ ?v0 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5598
(let (($x95 (less_eq$ ?v1 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5599
(let (($x138 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5600
(let (($x93 (less_eq$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5601
(let (($x137 (not $x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5602
(or $x137 $x138 $x97)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5603
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5604
(let ((@x583 (trans (rewrite (= $x156 $x578)) (rewrite (= $x578 $x578)) (= $x156 $x578))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5605
(let (($x105 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(let (($x97 (less_eq$ ?v0 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5606
(let (($x95 (less_eq$ ?v1 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5607
(let (($x93 (less_eq$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5608
(let (($x96 (and $x93 $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5609
(let (($x101 (not $x96)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5610
(or $x101 $x97)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5611
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5612
(let (($x97 (less_eq$ ?2 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5613
(let (($x95 (less_eq$ ?1 ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5614
(let (($x138 (not $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5615
(let (($x93 (less_eq$ ?2 ?1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5616
(let (($x137 (not $x93)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5617
(let (($x151 (or $x137 $x138 $x97)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5618
(let (($x96 (and $x93 $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5619
(let (($x101 (not $x96)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5620
(let (($x102 (or $x101 $x97)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5621
(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
  5622
(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
  5623
(let ((@x155 (trans (monotonicity @x147 (= $x102 (or (or $x137 $x138) $x97))) (rewrite (= (or (or $x137 $x138) $x97) $x151)) (= $x102 $x151))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5624
(let (($x99 (forall ((?v0 A$) (?v1 A$) (?v2 A$) )(let (($x97 (less_eq$ ?v0 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5625
(let (($x95 (less_eq$ ?v1 ?v2)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5626
(let (($x93 (less_eq$ ?v0 ?v1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5627
(let (($x96 (and $x93 $x95)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5628
(=> $x96 $x97))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5629
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5630
(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
  5631
(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
  5632
(let ((@x584 (mp @x159 @x583 $x578)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5633
(let (($x247 (not $x115)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5634
(let (($x160 (not $x113)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5635
(let (($x251 (not $x578)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5636
(let (($x252 (or $x251 $x160 $x247 $x117)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5637
(let ((@x570 (mp ((_ quant-inst (sup$ ?x108) (sup$ ?x111) (sup$ ?x108)) (or $x251 (or $x160 $x247 $x117))) (rewrite (= (or $x251 (or $x160 $x247 $x117)) $x252)) $x252)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5638
(unit-resolution @x570 @x584 @x114 @x116 @x119 false)))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5639
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  5640
4e8ab14f236ad601aa67494ca8ea18b2ba6a1a79 25 0
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5641
unsat
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5642
((set-logic AUFLIA)
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5643
(proof
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5644
(let (($x142 (pred$e 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5645
(let (($x144 (not $x142)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5646
(let ((@x145 (asserted $x144)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5647
(let (($x615 (forall ((?v0 Int) )(!(pred$e ?v0) :pattern ( (pred$e ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5648
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5649
(let (($x138 (forall ((?v0 Int) )(pred$e ?v0))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5650
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5651
(let (($x127 (forall ((?v0 Int) )(let (($x125 (or (pred$d (cons$d ?v0 nil$d)) (not (pred$d (cons$d ?v0 nil$d))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5652
(let (($x119 (pred$e ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5653
(and $x119 $x125))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5654
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5655
(let (($x119 (pred$e ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5656
(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
  5657
(let (($x126 (and $x119 $x125)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5658
(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
  5659
(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
  5660
(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
  5661
(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
  5662
(let (($x257 (or (not $x615) $x142)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5663
(let ((@x258 ((_ quant-inst 1) $x257)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5664
(unit-resolution @x258 @x620 @x145 false))))))))))))))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5665
57204
7c36ce8e45f6 updated Z3 certificates
blanchet
parents: 57170
diff changeset
  5666
4e5cf2f6b4df716b03e440b50af106a8af8b2799 170 0
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5667
unsat
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5668
((set-logic AUFLIA)
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5669
(proof
56727
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5670
(let ((?x209 (some$a true)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5671
(let ((?x210 (g$b ?x209)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5672
(let ((?x206 (some$ 3)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5673
(let ((?x208 (g$ ?x206)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5674
(let (($x211 (= ?x208 ?x210)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5675
(let ((?x434 (cons$a true nil$a)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5676
(let ((?x435 (g$c ?x434)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5677
(let (($x406 (= ?x210 ?x435)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5678
(let (($x768 (forall ((?v0 Bool) )(!(= (g$b (some$a ?v0)) (g$c (cons$a ?v0 nil$a))) :pattern ( (some$a ?v0) ) :pattern ( (cons$a ?v0 nil$a) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5679
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5680
(let (($x43 (forall ((?v0 Bool) )(= (g$b (some$a ?v0)) (g$c (cons$a ?v0 nil$a))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5681
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5682
(let (($x42 (= (g$b (some$a ?0)) (g$c (cons$a ?0 nil$a)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5683
(let ((@x280 (mp~ (asserted $x43) (nnf-pos (refl (~ $x42 $x42)) (~ $x43 $x43)) $x43)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5684
(let ((@x773 (mp @x280 (quant-intro (refl (= $x42 $x42)) (= $x43 $x768)) $x768)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5685
(let (($x419 (or (not $x768) $x406)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5686
(let ((@x752 ((_ quant-inst true) $x419)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5687
(let ((?x720 (size$ ?x434)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5688
(let (($x444 (= ?x435 ?x720)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5689
(let (($x776 (forall ((?v0 Bool_list$) )(!(let ((?x61 (size$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5690
(let ((?x60 (g$c ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5691
(= ?x60 ?x61))) :pattern ( (g$c ?v0) ) :pattern ( (size$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5692
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5693
(let (($x63 (forall ((?v0 Bool_list$) )(let ((?x61 (size$ ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5694
(let ((?x60 (g$c ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5695
(= ?x60 ?x61))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5696
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5697
(let ((@x780 (quant-intro (refl (= (= (g$c ?0) (size$ ?0)) (= (g$c ?0) (size$ ?0)))) (= $x63 $x776))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5698
(let ((@x306 (nnf-pos (refl (~ (= (g$c ?0) (size$ ?0)) (= (g$c ?0) (size$ ?0)))) (~ $x63 $x63))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5699
(let ((@x781 (mp (mp~ (asserted $x63) @x306 $x63) @x780 $x776)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5700
(let (($x711 (or (not $x776) $x444)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5701
(let ((@x712 ((_ quant-inst (cons$a true nil$a)) $x711)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5702
(let ((?x149 (size$ nil$a)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5703
(let ((?x724 (of_nat$ ?x149)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5704
(let ((?x710 (+ 1 ?x724)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5705
(let ((?x713 (nat$ ?x710)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5706
(let (($x714 (= ?x720 ?x713)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5707
(let (($x819 (forall ((?v0 Bool) (?v1 Bool_list$) )(!(= (size$ (cons$a ?v0 ?v1)) (nat$ (+ 1 (of_nat$ (size$ ?v1))))) :pattern ( (cons$a ?v0 ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5708
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5709
(let (($x177 (forall ((?v0 Bool) (?v1 Bool_list$) )(= (size$ (cons$a ?v0 ?v1)) (nat$ (+ 1 (of_nat$ (size$ ?v1))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5710
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5711
(let (($x174 (= (size$ (cons$a ?1 ?0)) (nat$ (+ 1 (of_nat$ (size$ ?0)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5712
(let (($x161 (forall ((?v0 Bool) (?v1 Bool_list$) )(= (size$ (cons$a ?v0 ?v1)) (nat$ (+ (of_nat$ (size$ ?v1)) (+ 0 1)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5713
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5714
(let (($x160 (= (size$ (cons$a ?1 ?0)) (nat$ (+ (of_nat$ (size$ ?0)) (+ 0 1))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5715
(let (($x172 (= (nat$ (+ (of_nat$ (size$ ?0)) (+ 0 1))) (nat$ (+ 1 (of_nat$ (size$ ?0)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5716
(let ((?x61 (size$ ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5717
(let ((?x157 (of_nat$ ?x61)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5718
(let ((?x166 (+ 1 ?x157)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5719
(let ((?x92 (+ 0 1)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5720
(let ((?x158 (+ ?x157 ?x92)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5721
(let ((@x170 (trans (monotonicity (rewrite (= ?x92 1)) (= ?x158 (+ ?x157 1))) (rewrite (= (+ ?x157 1) ?x166)) (= ?x158 ?x166))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5722
(let ((@x179 (quant-intro (monotonicity (monotonicity @x170 $x172) (= $x160 $x174)) (= $x161 $x177))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5723
(let ((@x323 (mp~ (mp (asserted $x161) @x179 $x177) (nnf-pos (refl (~ $x174 $x174)) (~ $x177 $x177)) $x177)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5724
(let ((@x824 (mp @x323 (quant-intro (refl (= $x174 $x174)) (= $x177 $x819)) $x819)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5725
(let (($x718 (or (not $x819) $x714)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5726
(let ((@x556 ((_ quant-inst true nil$a) $x718)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5727
(let ((?x153 (size$a nil$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5728
(let ((?x730 (of_nat$ ?x153)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5729
(let (($x716 (<= ?x730 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5730
(let (($x715 (= ?x730 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5731
(let ((?x73 (nat$ 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5732
(let ((?x748 (of_nat$ ?x73)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5733
(let (($x412 (= ?x748 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5734
(let (($x841 (forall ((?v0 Int) )(!(let (($x223 (= (of_nat$ (nat$ ?v0)) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5735
(let (($x236 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5736
(let (($x237 (not $x236)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5737
(or $x237 $x223)))) :pattern ( (nat$ ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5738
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5739
(let (($x243 (forall ((?v0 Int) )(let (($x223 (= (of_nat$ (nat$ ?v0)) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5740
(let (($x236 (>= ?v0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5741
(let (($x237 (not $x236)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5742
(or $x237 $x223)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5743
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5744
(let (($x223 (= (of_nat$ (nat$ ?0)) ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5745
(let (($x236 (>= ?0 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5746
(let (($x237 (not $x236)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5747
(let (($x240 (or $x237 $x223)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5748
(let (($x225 (forall ((?v0 Int) )(let (($x223 (= (of_nat$ (nat$ ?v0)) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5749
(let (($x220 (<= 0 ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5750
(=> $x220 $x223))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5751
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5752
(let (($x231 (forall ((?v0 Int) )(let (($x223 (= (of_nat$ (nat$ ?v0)) ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5753
(or (not (<= 0 ?v0)) $x223)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5754
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5755
(let ((@x239 (monotonicity (rewrite (= (<= 0 ?0) $x236)) (= (not (<= 0 ?0)) $x237))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5756
(let ((@x245 (quant-intro (monotonicity @x239 (= (or (not (<= 0 ?0)) $x223) $x240)) (= $x231 $x243))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5757
(let ((@x230 (rewrite (= (=> (<= 0 ?0) $x223) (or (not (<= 0 ?0)) $x223)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5758
(let ((@x248 (mp (asserted $x225) (trans (quant-intro @x230 (= $x225 $x231)) @x245 (= $x225 $x243)) $x243)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5759
(let ((@x846 (mp (mp~ @x248 (nnf-pos (refl (~ $x240 $x240)) (~ $x243 $x243)) $x243) (quant-intro (refl (= $x240 $x240)) (= $x243 $x841)) $x841)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5760
(let (($x381 (not $x841)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5761
(let (($x382 (or $x381 $x412)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5762
(let ((@x733 (rewrite (= (>= 0 0) true))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5763
(let ((@x736 (trans (monotonicity @x733 (= (not (>= 0 0)) (not true))) (rewrite (= (not true) false)) (= (not (>= 0 0)) false))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5764
(let ((@x739 (monotonicity @x736 (= (or (not (>= 0 0)) $x412) (or false $x412)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5765
(let ((@x742 (trans @x739 (rewrite (= (or false $x412) $x412)) (= (or (not (>= 0 0)) $x412) $x412))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5766
(let ((@x731 (monotonicity @x742 (= (or $x381 (or (not (>= 0 0)) $x412)) $x382))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5767
(let ((@x450 (trans @x731 (rewrite (= $x382 $x382)) (= (or $x381 (or (not (>= 0 0)) $x412)) $x382))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5768
(let ((@x451 (mp ((_ quant-inst 0) (or $x381 (or (not (>= 0 0)) $x412))) @x450 $x382)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5769
(let ((@x621 (trans (monotonicity (asserted (= ?x153 ?x73)) (= ?x730 ?x748)) (unit-resolution @x451 @x846 $x412) $x715)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5770
(let (($x557 (>= ?x730 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5771
(let ((@x610 ((_ th-lemma arith eq-propagate -1 -1) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x715) $x557)) @x621 $x557) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x715) $x716)) @x621 $x716) (= (+ 1 ?x730) 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5772
(let (($x700 (<= ?x724 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5773
(let (($x558 (= ?x724 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5774
(let ((@x583 (trans (monotonicity (asserted (= ?x149 ?x73)) (= ?x724 ?x748)) (unit-resolution @x451 @x846 $x412) $x558)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5775
(let (($x701 (>= ?x724 0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5776
(let ((@x559 ((_ th-lemma arith eq-propagate -1 -1) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x558) $x701)) @x583 $x701) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x558) $x700)) @x583 $x700) (= ?x710 1))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5777
(let ((@x563 (trans @x559 (symm @x610 (= 1 (+ 1 ?x730))) (= ?x710 (+ 1 ?x730)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5778
(let ((@x539 (symm (monotonicity @x563 (= ?x713 (nat$ (+ 1 ?x730)))) (= (nat$ (+ 1 ?x730)) ?x713))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5779
(let ((?x437 (+ 1 ?x730)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5780
(let ((?x440 (nat$ ?x437)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5781
(let ((?x431 (cons$ 3 nil$)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5782
(let ((?x728 (size$a ?x431)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5783
(let (($x719 (= ?x728 ?x440)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5784
(let (($x826 (forall ((?v0 Int) (?v1 Int_list$) )(!(= (size$a (cons$ ?v0 ?v1)) (nat$ (+ 1 (of_nat$ (size$a ?v1))))) :pattern ( (cons$ ?v0 ?v1) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5785
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5786
(let (($x202 (forall ((?v0 Int) (?v1 Int_list$) )(= (size$a (cons$ ?v0 ?v1)) (nat$ (+ 1 (of_nat$ (size$a ?v1))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5787
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5788
(let (($x199 (= (size$a (cons$ ?1 ?0)) (nat$ (+ 1 (of_nat$ (size$a ?0)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5789
(let (($x186 (forall ((?v0 Int) (?v1 Int_list$) )(= (size$a (cons$ ?v0 ?v1)) (nat$ (+ (of_nat$ (size$a ?v1)) (+ 0 1)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5790
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5791
(let (($x185 (= (size$a (cons$ ?1 ?0)) (nat$ (+ (of_nat$ (size$a ?0)) ?x92)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5792
(let (($x197 (= (nat$ (+ (of_nat$ (size$a ?0)) ?x92)) (nat$ (+ 1 (of_nat$ (size$a ?0)))))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5793
(let ((?x67 (size$a ?0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5794
(let ((?x181 (of_nat$ ?x67)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5795
(let ((?x191 (+ 1 ?x181)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5796
(let ((?x183 (+ ?x181 ?x92)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5797
(let ((@x195 (trans (monotonicity (rewrite (= ?x92 1)) (= ?x183 (+ ?x181 1))) (rewrite (= (+ ?x181 1) ?x191)) (= ?x183 ?x191))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5798
(let ((@x204 (quant-intro (monotonicity (monotonicity @x195 $x197) (= $x185 $x199)) (= $x186 $x202))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5799
(let ((@x328 (mp~ (mp (asserted $x186) @x204 $x202) (nnf-pos (refl (~ $x199 $x199)) (~ $x202 $x202)) $x202)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5800
(let ((@x831 (mp @x328 (quant-intro (refl (= $x199 $x199)) (= $x202 $x826)) $x826)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5801
(let (($x722 (or (not $x826) $x719)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5802
(let ((@x723 ((_ quant-inst 3 nil$) $x722)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5803
(let ((?x432 (g$a ?x431)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5804
(let (($x729 (= ?x432 ?x728)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5805
(let (($x784 (forall ((?v0 Int_list$) )(!(let ((?x67 (size$a ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5806
(let ((?x66 (g$a ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5807
(= ?x66 ?x67))) :pattern ( (g$a ?v0) ) :pattern ( (size$a ?v0) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5808
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5809
(let (($x69 (forall ((?v0 Int_list$) )(let ((?x67 (size$a ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5810
(let ((?x66 (g$a ?v0)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5811
(= ?x66 ?x67))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5812
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5813
(let ((@x788 (quant-intro (refl (= (= (g$a ?0) ?x67) (= (g$a ?0) ?x67))) (= $x69 $x784))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5814
(let ((@x295 (nnf-pos (refl (~ (= (g$a ?0) ?x67) (= (g$a ?0) ?x67))) (~ $x69 $x69))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5815
(let ((@x789 (mp (mp~ (asserted $x69) @x295 $x69) @x788 $x784)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5816
(let (($x438 (or (not $x784) $x729)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5817
(let ((@x439 ((_ quant-inst (cons$ 3 nil$)) $x438)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5818
(let (($x433 (= ?x208 ?x432)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5819
(let (($x760 (forall ((?v0 Int) )(!(= (g$ (some$ ?v0)) (g$a (cons$ ?v0 nil$))) :pattern ( (some$ ?v0) ) :pattern ( (cons$ ?v0 nil$) )))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5820
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5821
(let (($x34 (forall ((?v0 Int) )(= (g$ (some$ ?v0)) (g$a (cons$ ?v0 nil$))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5822
))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5823
(let (($x33 (= (g$ (some$ ?0)) (g$a (cons$ ?0 nil$)))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5824
(let ((@x297 (mp~ (asserted $x34) (nnf-pos (refl (~ $x33 $x33)) (~ $x34 $x34)) $x34)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5825
(let ((@x765 (mp @x297 (quant-intro (refl (= $x33 $x33)) (= $x34 $x760)) $x760)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5826
(let (($x750 (or (not $x760) $x433)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5827
(let ((@x751 ((_ quant-inst 3) $x750)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5828
(let ((@x550 (trans (unit-resolution @x751 @x765 $x433) (unit-resolution @x439 @x789 $x729) (= ?x208 ?x728))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5829
(let ((@x554 (trans (trans @x550 (unit-resolution @x723 @x831 $x719) (= ?x208 ?x440)) @x539 (= ?x208 ?x713))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5830
(let ((@x525 (trans @x554 (symm (unit-resolution @x556 @x824 $x714) (= ?x713 ?x720)) (= ?x208 ?x720))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5831
(let ((@x527 (trans @x525 (symm (unit-resolution @x712 @x781 $x444) (= ?x720 ?x435)) (= ?x208 ?x435))))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5832
(let ((@x528 (trans @x527 (symm (unit-resolution @x752 @x773 $x406) (= ?x435 ?x210)) $x211)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5833
(let (($x212 (not $x211)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5834
(let ((@x213 (asserted $x212)))
75f4fdafb285 use Z3 4.3.2 to fix most FIXMEs
blanchet
parents: 56111
diff changeset
  5835
(unit-resolution @x213 @x528 false)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
56079
175ac95720d4 use 'smt2' in SMT examples as much as currently possible
blanchet
parents:
diff changeset
  5836