src/HOL/SMT/Examples/cert/z3_prop_06.proof
author Christian Urban <urbanc@in.tum.de>
Fri, 20 Nov 2009 00:54:20 +0100
changeset 33773 ccef2e6d8c21
parent 33010 39f73a59e855
permissions -rw-r--r--
removed fixme - quick-and-dirty flag is appropriate
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
decl up_1 :: bool
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     3
#4 := up_1
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     4
decl up_3 :: bool
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     5
#7 := up_3
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     6
#10 := (and up_1 up_3)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     7
decl up_2 :: bool
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     8
#5 := up_2
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
     9
#9 := (and up_3 up_2)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    10
#11 := (or #9 #10)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    11
#12 := (implies up_1 #11)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    12
#13 := (or #12 up_1)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    13
#6 := (and up_1 up_2)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    14
#8 := (or #6 up_3)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    15
#14 := (implies #8 #13)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    16
#15 := (not #14)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    17
#81 := (iff #15 false)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    18
#32 := (and up_2 up_3)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    19
#38 := (or #10 #32)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    20
#46 := (not up_1)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    21
#47 := (or #46 #38)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    22
#55 := (or up_1 #47)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    23
#63 := (not #8)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    24
#64 := (or #63 #55)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    25
#69 := (not #64)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    26
#79 := (iff #69 false)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    27
#1 := true
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    28
#74 := (not true)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    29
#77 := (iff #74 false)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    30
#78 := [rewrite]: #77
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    31
#75 := (iff #69 #74)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    32
#72 := (iff #64 true)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    33
#73 := [rewrite]: #72
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    34
#76 := [monotonicity #73]: #75
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    35
#80 := [trans #76 #78]: #79
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    36
#70 := (iff #15 #69)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    37
#67 := (iff #14 #64)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    38
#60 := (implies #8 #55)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    39
#65 := (iff #60 #64)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    40
#66 := [rewrite]: #65
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    41
#61 := (iff #14 #60)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    42
#58 := (iff #13 #55)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    43
#52 := (or #47 up_1)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    44
#56 := (iff #52 #55)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    45
#57 := [rewrite]: #56
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    46
#53 := (iff #13 #52)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    47
#50 := (iff #12 #47)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    48
#43 := (implies up_1 #38)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    49
#48 := (iff #43 #47)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    50
#49 := [rewrite]: #48
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    51
#44 := (iff #12 #43)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    52
#41 := (iff #11 #38)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    53
#35 := (or #32 #10)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    54
#39 := (iff #35 #38)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    55
#40 := [rewrite]: #39
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    56
#36 := (iff #11 #35)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    57
#33 := (iff #9 #32)
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    58
#34 := [rewrite]: #33
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    59
#37 := [monotonicity #34]: #36
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    60
#42 := [trans #37 #40]: #41
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    61
#45 := [monotonicity #42]: #44
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    62
#51 := [trans #45 #49]: #50
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    63
#54 := [monotonicity #51]: #53
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    64
#59 := [trans #54 #57]: #58
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    65
#62 := [monotonicity #59]: #61
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    66
#68 := [trans #62 #66]: #67
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    67
#71 := [monotonicity #68]: #70
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    68
#82 := [trans #71 #80]: #81
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    69
#31 := [asserted]: #15
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    70
[mp #31 #82]: false
39f73a59e855 added proof reconstructon for Z3,
boehmes
parents:
diff changeset
    71
unsat