src/HOL/SMT/Examples/cert/z3_arith_quant_12.proof
author boehmes
Tue, 20 Oct 2009 10:11:30 +0200
changeset 33010 39f73a59e855
permissions -rw-r--r--
added proof reconstructon for Z3, added certificates for simpler re-checking of proofs (no need to invoke external solvers), added examples and certificates for all examples, removed Unsynchronized.ref (in smt_normalize.ML)

#2 := false
#5 := 0::int
#4 := (:var 0 int)
#42 := (<= #4 0::int)
#43 := (not #42)
#40 := (>= #4 0::int)
#38 := (not #40)
#46 := (or #38 #43)
#49 := (forall (vars (?x1 int)) #46)
#524 := (not #49)
#118 := (<= 0::int 0::int)
#205 := (not #118)
#119 := (>= 0::int 0::int)
#206 := (not #119)
#120 := (or #206 #205)
#183 := (or #524 #120)
#172 := (iff #183 #524)
#525 := (or #524 false)
#168 := (iff #525 #524)
#510 := [rewrite]: #168
#184 := (iff #183 #525)
#528 := (iff #120 false)
#197 := (or false false)
#532 := (iff #197 false)
#533 := [rewrite]: #532
#530 := (iff #120 #197)
#523 := (iff #205 false)
#1 := true
#209 := (not true)
#211 := (iff #209 false)
#208 := [rewrite]: #211
#185 := (iff #205 #209)
#527 := (iff #118 true)
#529 := [rewrite]: #527
#316 := [monotonicity #529]: #185
#196 := [trans #316 #208]: #523
#212 := (iff #206 false)
#210 := (iff #206 #209)
#207 := (iff #119 true)
#198 := [rewrite]: #207
#138 := [monotonicity #198]: #210
#191 := [trans #138 #208]: #212
#531 := [monotonicity #191 #196]: #530
#534 := [trans #531 #533]: #528
#526 := [monotonicity #534]: #184
#173 := [trans #526 #510]: #172
#188 := [quant-inst]: #183
#174 := [mp #188 #173]: #524
#60 := (~ #49 #49)
#58 := (~ #46 #46)
#59 := [refl]: #58
#61 := [nnf-pos #59]: #60
#7 := (< 0::int #4)
#6 := (< #4 0::int)
#8 := (or #6 #7)
#9 := (forall (vars (?x1 int)) #8)
#10 := (ite #9 false true)
#11 := (not #10)
#52 := (iff #11 #49)
#50 := (iff #9 #49)
#47 := (iff #8 #46)
#44 := (iff #7 #43)
#45 := [rewrite]: #44
#39 := (iff #6 #38)
#41 := [rewrite]: #39
#48 := [monotonicity #41 #45]: #47
#51 := [quant-intro #48]: #50
#36 := (iff #11 #9)
#28 := (not #9)
#31 := (not #28)
#34 := (iff #31 #9)
#35 := [rewrite]: #34
#32 := (iff #11 #31)
#29 := (iff #10 #28)
#30 := [rewrite]: #29
#33 := [monotonicity #30]: #32
#37 := [trans #33 #35]: #36
#53 := [trans #37 #51]: #52
#27 := [asserted]: #11
#54 := [mp #27 #53]: #49
#62 := [mp~ #54 #61]: #49
[unit-resolution #62 #174]: false
unsat