src/HOL/SMT/Examples/cert/z3_arith_quant_12.proof
author boehmes
Thu, 03 Dec 2009 15:56:06 +0100 (2009-12-03)
changeset 34010 ac78f5cdc430
parent 33010 39f73a59e855
permissions -rw-r--r--
faster preprocessing: before applying a step, test if it is applicable (normalization of binders, unfolding of abs/min/max definitions, lambda lifting, explicit application, monomorphization), custom-made (top-down) atomize_conv, store predicate and function symbols in a table instead of a list for faster lookup, updated certificates
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
33010
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     1
#2 := false
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     2
#5 := 0::int
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     3
#4 := (:var 0 int)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     4
#42 := (<= #4 0::int)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     5
#43 := (not #42)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     6
#40 := (>= #4 0::int)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     7
#38 := (not #40)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     8
#46 := (or #38 #43)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     9
#49 := (forall (vars (?x1 int)) #46)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    10
#524 := (not #49)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    11
#118 := (<= 0::int 0::int)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    12
#205 := (not #118)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    13
#119 := (>= 0::int 0::int)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    14
#206 := (not #119)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    15
#120 := (or #206 #205)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    16
#183 := (or #524 #120)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    17
#172 := (iff #183 #524)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    18
#525 := (or #524 false)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    19
#168 := (iff #525 #524)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    20
#510 := [rewrite]: #168
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    21
#184 := (iff #183 #525)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    22
#528 := (iff #120 false)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    23
#197 := (or false false)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    24
#532 := (iff #197 false)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    25
#533 := [rewrite]: #532
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    26
#530 := (iff #120 #197)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    27
#523 := (iff #205 false)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    28
#1 := true
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    29
#209 := (not true)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    30
#211 := (iff #209 false)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    31
#208 := [rewrite]: #211
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    32
#185 := (iff #205 #209)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    33
#527 := (iff #118 true)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    34
#529 := [rewrite]: #527
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    35
#316 := [monotonicity #529]: #185
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    36
#196 := [trans #316 #208]: #523
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    37
#212 := (iff #206 false)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    38
#210 := (iff #206 #209)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    39
#207 := (iff #119 true)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    40
#198 := [rewrite]: #207
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    41
#138 := [monotonicity #198]: #210
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    42
#191 := [trans #138 #208]: #212
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    43
#531 := [monotonicity #191 #196]: #530
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    44
#534 := [trans #531 #533]: #528
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    45
#526 := [monotonicity #534]: #184
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    46
#173 := [trans #526 #510]: #172
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    47
#188 := [quant-inst]: #183
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    48
#174 := [mp #188 #173]: #524
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    49
#60 := (~ #49 #49)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    50
#58 := (~ #46 #46)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    51
#59 := [refl]: #58
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    52
#61 := [nnf-pos #59]: #60
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    53
#7 := (< 0::int #4)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    54
#6 := (< #4 0::int)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    55
#8 := (or #6 #7)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    56
#9 := (forall (vars (?x1 int)) #8)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    57
#10 := (ite #9 false true)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    58
#11 := (not #10)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    59
#52 := (iff #11 #49)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    60
#50 := (iff #9 #49)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    61
#47 := (iff #8 #46)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    62
#44 := (iff #7 #43)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    63
#45 := [rewrite]: #44
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    64
#39 := (iff #6 #38)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    65
#41 := [rewrite]: #39
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    66
#48 := [monotonicity #41 #45]: #47
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    67
#51 := [quant-intro #48]: #50
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    68
#36 := (iff #11 #9)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    69
#28 := (not #9)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    70
#31 := (not #28)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    71
#34 := (iff #31 #9)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    72
#35 := [rewrite]: #34
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    73
#32 := (iff #11 #31)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    74
#29 := (iff #10 #28)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    75
#30 := [rewrite]: #29
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    76
#33 := [monotonicity #30]: #32
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    77
#37 := [trans #33 #35]: #36
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    78
#53 := [trans #37 #51]: #52
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    79
#27 := [asserted]: #11
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    80
#54 := [mp #27 #53]: #49
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    81
#62 := [mp~ #54 #61]: #49
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    82
[unit-resolution #62 #174]: false
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    83
unsat