src/HOL/SMT/Examples/cert/z3_linarith_17.proof
author nipkow
Sat, 02 Jan 2010 21:31:15 +0100
changeset 34225 21c5405deb6b
parent 33446 153a27370a42
permissions -rw-r--r--
removed legacy asm_lr
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
33446
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
     1
#2 := false
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
     2
#8 := 1::real
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
     3
decl uf_1 :: real
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
     4
#4 := uf_1
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
     5
#6 := 2::real
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
     6
#7 := (* 2::real uf_1)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
     7
#9 := (+ #7 1::real)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
     8
#5 := (+ uf_1 uf_1)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
     9
#10 := (< #5 #9)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    10
#11 := (or false #10)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    11
#12 := (or #10 #11)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    12
#13 := (not #12)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    13
#64 := (iff #13 false)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    14
#32 := (+ 1::real #7)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    15
#35 := (< #7 #32)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    16
#52 := (not #35)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    17
#62 := (iff #52 false)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    18
#1 := true
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    19
#57 := (not true)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    20
#60 := (iff #57 false)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    21
#61 := [rewrite]: #60
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    22
#58 := (iff #52 #57)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    23
#55 := (iff #35 true)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    24
#56 := [rewrite]: #55
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    25
#59 := [monotonicity #56]: #58
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    26
#63 := [trans #59 #61]: #62
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    27
#53 := (iff #13 #52)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    28
#50 := (iff #12 #35)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    29
#45 := (or #35 #35)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    30
#48 := (iff #45 #35)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    31
#49 := [rewrite]: #48
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    32
#46 := (iff #12 #45)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    33
#43 := (iff #11 #35)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    34
#38 := (or false #35)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    35
#41 := (iff #38 #35)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    36
#42 := [rewrite]: #41
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    37
#39 := (iff #11 #38)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    38
#36 := (iff #10 #35)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    39
#33 := (= #9 #32)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    40
#34 := [rewrite]: #33
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    41
#30 := (= #5 #7)
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    42
#31 := [rewrite]: #30
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    43
#37 := [monotonicity #31 #34]: #36
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    44
#40 := [monotonicity #37]: #39
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    45
#44 := [trans #40 #42]: #43
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    46
#47 := [monotonicity #37 #44]: #46
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    47
#51 := [trans #47 #49]: #50
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    48
#54 := [monotonicity #51]: #53
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    49
#65 := [trans #54 #63]: #64
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    50
#29 := [asserted]: #13
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    51
[mp #29 #65]: false
153a27370a42 handle let expressions inside terms by unfolding (instead of raising an exception),
boehmes
parents:
diff changeset
    52
unsat