# HG changeset patch # User wenzelm # Date 1260181124 -3600 # Node ID f215f52b7ff17509294ac012a864ecd53c4235a6 # Parent 5426ada71790723e0a5e879e39a396440d471ea1# Parent bbd146caa6b2545c05498e3975c7d87d36d7b171 merged diff -r bbd146caa6b2 -r f215f52b7ff1 NEWS --- a/NEWS Mon Dec 07 00:02:54 2009 +0100 +++ b/NEWS Mon Dec 07 11:18:44 2009 +0100 @@ -11,6 +11,25 @@ * Code generation: ML and OCaml code is decorated with signatures. +* Complete_Lattice.thy: lemmas top_def and bot_def have been replaced +by the more convenient lemmas Inf_empty and Sup_empty. Dropped lemmas +Inf_insert_simp adn Sup_insert_simp, which are subsumed by Inf_insert and +Sup_insert. Lemmas Inf_UNIV and Sup_UNIV replace former Inf_Univ and Sup_Univ. +Lemmas inf_top_right and sup_bot_right subsume inf_top and sup_bot respectively. +INCOMPATIBILITY. + +* Finite_Set.thy and List.thy: some lemmas have been generalized from sets to lattices: + fun_left_comm_idem_inter ~> fun_left_comm_idem_inf + fun_left_comm_idem_union ~> fun_left_comm_idem_sup + inter_Inter_fold_inter ~> inf_Inf_fold_inf + union_Union_fold_union ~> sup_Sup_fold_sup + Inter_fold_inter ~> Inf_fold_inf + Union_fold_union ~> Sup_fold_sup + inter_INTER_fold_inter ~> inf_INFI_fold_inf + union_UNION_fold_union ~> sup_SUPR_fold_sup + INTER_fold_inter ~> INFI_fold_inf + UNION_fold_union ~> SUPR_fold_sup + *** ML *** diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/Boogie/Examples/cert/Boogie_Dijkstra --- a/src/HOL/Boogie/Examples/cert/Boogie_Dijkstra Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/Boogie/Examples/cert/Boogie_Dijkstra Mon Dec 07 11:18:44 2009 +0100 @@ -7,7 +7,6 @@ (uf_8 T5) (uf_7 T4 T2 T5 T4) (uf_5 T3 T2 Int T3) - (uf_6 T4 T2 T5) (uf_4 T3 T2 Int) (uf_10 T1 Int) (uf_11 T2) @@ -26,18 +25,19 @@ (uf_16 T4) ) :extrapreds ( + (up_6 T4 T2) (up_13 T2) ) :assumption (forall (?x1 T1) (= (uf_1 (uf_2 ?x1) (uf_3 ?x1)) ?x1)) :assumption (forall (?x2 T2) (?x3 T2) (= (uf_3 (uf_1 ?x2 ?x3)) ?x3)) :assumption (forall (?x4 T2) (?x5 T2) (= (uf_2 (uf_1 ?x4 ?x5)) ?x4)) :assumption (forall (?x6 T3) (?x7 T2) (?x8 Int) (?x9 T2) (= (uf_4 (uf_5 ?x6 ?x7 ?x8) ?x9) (ite (= ?x9 ?x7) ?x8 (uf_4 ?x6 ?x9)))) -:assumption (forall (?x10 T4) (?x11 T2) (?x12 T5) (?x13 T2) (iff (= (uf_6 (uf_7 ?x10 ?x11 ?x12) ?x13) uf_8) (if_then_else (= ?x13 ?x11) (= ?x12 uf_8) (= (uf_6 ?x10 ?x13) uf_8)))) +:assumption (forall (?x10 T4) (?x11 T2) (?x12 T5) (?x13 T2) (iff (up_6 (uf_7 ?x10 ?x11 ?x12) ?x13) (if_then_else (= ?x13 ?x11) (= ?x12 uf_8) (up_6 ?x10 ?x13)))) :assumption (forall (?x14 T3) (?x15 T2) (?x16 Int) (= (uf_4 (uf_5 ?x14 ?x15 ?x16) ?x15) ?x16)) -:assumption (forall (?x17 T4) (?x18 T2) (?x19 T5) (iff (= (uf_6 (uf_7 ?x17 ?x18 ?x19) ?x18) uf_8) (= ?x19 uf_8))) +:assumption (forall (?x17 T4) (?x18 T2) (?x19 T5) (iff (up_6 (uf_7 ?x17 ?x18 ?x19) ?x18) (= ?x19 uf_8))) :assumption (< 0 uf_9) :assumption (forall (?x20 T2) (?x21 T2) (implies (= ?x20 ?x21) (= (uf_10 (uf_1 ?x20 ?x21)) 0))) :assumption (forall (?x22 T2) (?x23 T2) (implies (not (= ?x22 ?x23)) (< 0 (uf_10 (uf_1 ?x22 ?x23))))) -:assumption (not (implies true (implies true (implies (forall (?x24 T2) (implies (= ?x24 uf_11) (= (uf_12 ?x24) 0))) (implies (forall (?x25 T2) (implies (not (= ?x25 uf_11)) (= (uf_12 ?x25) uf_9))) (implies (forall (?x26 T2) (not (up_13 ?x26))) (implies true (and (= (uf_12 uf_11) 0) (implies (= (uf_12 uf_11) 0) (and (forall (?x27 T2) (<= 0 (uf_12 ?x27))) (implies (forall (?x28 T2) (<= 0 (uf_12 ?x28))) (and (forall (?x29 T2) (?x30 T2) (implies (and (not (up_13 ?x30)) (up_13 ?x29)) (<= (uf_12 ?x29) (uf_12 ?x30)))) (implies (forall (?x31 T2) (?x32 T2) (implies (and (not (up_13 ?x32)) (up_13 ?x31)) (<= (uf_12 ?x31) (uf_12 ?x32)))) (and (forall (?x33 T2) (?x34 T2) (implies (and (up_13 ?x34) (< (uf_10 (uf_1 ?x34 ?x33)) uf_9)) (<= (uf_12 ?x33) (+ (uf_12 ?x34) (uf_10 (uf_1 ?x34 ?x33)))))) (implies (forall (?x35 T2) (?x36 T2) (implies (and (up_13 ?x36) (< (uf_10 (uf_1 ?x36 ?x35)) uf_9)) (<= (uf_12 ?x35) (+ (uf_12 ?x36) (uf_10 (uf_1 ?x36 ?x35)))))) (and (forall (?x37 T2) (implies (and (not (= ?x37 uf_11)) (< (uf_12 ?x37) uf_9)) (exists (?x38 T2) (and (< (uf_12 ?x38) (uf_12 ?x37)) (and (up_13 ?x38) (= (uf_12 ?x37) (+ (uf_12 ?x38) (uf_10 (uf_1 ?x38 ?x37))))))))) (implies (forall (?x39 T2) (implies (and (not (= ?x39 uf_11)) (< (uf_12 ?x39) uf_9)) (exists (?x40 T2) (and (< (uf_12 ?x40) (uf_12 ?x39)) (and (up_13 ?x40) (= (uf_12 ?x39) (+ (uf_12 ?x40) (uf_10 (uf_1 ?x40 ?x39))))))))) (implies true (implies true (implies (= (uf_4 uf_14 uf_11) 0) (implies (forall (?x41 T2) (<= 0 (uf_4 uf_14 ?x41))) (implies (forall (?x42 T2) (?x43 T2) (implies (and (not (= (uf_6 uf_15 ?x43) uf_8)) (= (uf_6 uf_15 ?x42) uf_8)) (<= (uf_4 uf_14 ?x42) (uf_4 uf_14 ?x43)))) (implies (forall (?x44 T2) (?x45 T2) (implies (and (= (uf_6 uf_15 ?x45) uf_8) (< (uf_10 (uf_1 ?x45 ?x44)) uf_9)) (<= (uf_4 uf_14 ?x44) (+ (uf_4 uf_14 ?x45) (uf_10 (uf_1 ?x45 ?x44)))))) (implies (forall (?x46 T2) (implies (and (not (= ?x46 uf_11)) (< (uf_4 uf_14 ?x46) uf_9)) (exists (?x47 T2) (and (< (uf_4 uf_14 ?x47) (uf_4 uf_14 ?x46)) (and (= (uf_6 uf_15 ?x47) uf_8) (= (uf_4 uf_14 ?x46) (+ (uf_4 uf_14 ?x47) (uf_10 (uf_1 ?x47 ?x46))))))))) (implies true (and (implies true (implies true (implies (not (exists (?x48 T2) (and (not (= (uf_6 uf_15 ?x48) uf_8)) (< (uf_4 uf_14 ?x48) uf_9)))) (implies true (implies true (implies (= uf_16 uf_15) (implies (= uf_17 uf_18) (implies (= uf_19 uf_14) (implies (= uf_20 uf_21) (implies true (and (forall (?x49 T2) (implies (and (not (= ?x49 uf_11)) (< (uf_4 uf_19 ?x49) uf_9)) (exists (?x50 T2) (and (< (uf_4 uf_19 ?x50) (uf_4 uf_19 ?x49)) (= (uf_4 uf_19 ?x49) (+ (uf_4 uf_19 ?x50) (uf_10 (uf_1 ?x50 ?x49)))))))) (implies (forall (?x51 T2) (implies (and (not (= ?x51 uf_11)) (< (uf_4 uf_19 ?x51) uf_9)) (exists (?x52 T2) (and (< (uf_4 uf_19 ?x52) (uf_4 uf_19 ?x51)) (= (uf_4 uf_19 ?x51) (+ (uf_4 uf_19 ?x52) (uf_10 (uf_1 ?x52 ?x51)))))))) (and (forall (?x53 T2) (?x54 T2) (implies (and (< (uf_4 uf_19 ?x54) uf_9) (< (uf_10 (uf_1 ?x54 ?x53)) uf_9)) (<= (uf_4 uf_19 ?x53) (+ (uf_4 uf_19 ?x54) (uf_10 (uf_1 ?x54 ?x53)))))) (implies (forall (?x55 T2) (?x56 T2) (implies (and (< (uf_4 uf_19 ?x56) uf_9) (< (uf_10 (uf_1 ?x56 ?x55)) uf_9)) (<= (uf_4 uf_19 ?x55) (+ (uf_4 uf_19 ?x56) (uf_10 (uf_1 ?x56 ?x55)))))) (and (= (uf_4 uf_19 uf_11) 0) (implies (= (uf_4 uf_19 uf_11) 0) true)))))))))))))))) (implies true (implies true (implies (exists (?x57 T2) (and (not (= (uf_6 uf_15 ?x57) uf_8)) (< (uf_4 uf_14 ?x57) uf_9))) (implies (not (= (uf_6 uf_15 uf_22) uf_8)) (implies (< (uf_4 uf_14 uf_22) uf_9) (implies (forall (?x58 T2) (implies (not (= (uf_6 uf_15 ?x58) uf_8)) (<= (uf_4 uf_14 uf_22) (uf_4 uf_14 ?x58)))) (implies (= uf_23 (uf_7 uf_15 uf_22 uf_8)) (implies (forall (?x59 T2) (implies (and (< (uf_10 (uf_1 uf_22 ?x59)) uf_9) (< (+ (uf_4 uf_14 uf_22) (uf_10 (uf_1 uf_22 ?x59))) (uf_4 uf_14 ?x59))) (= (uf_24 ?x59) (+ (uf_4 uf_14 uf_22) (uf_10 (uf_1 uf_22 ?x59)))))) (implies (forall (?x60 T2) (implies (not (and (< (uf_10 (uf_1 uf_22 ?x60)) uf_9) (< (+ (uf_4 uf_14 uf_22) (uf_10 (uf_1 uf_22 ?x60))) (uf_4 uf_14 ?x60)))) (= (uf_24 ?x60) (uf_4 uf_14 ?x60)))) (and (forall (?x61 T2) (<= (uf_24 ?x61) (uf_4 uf_14 ?x61))) (implies (forall (?x62 T2) (<= (uf_24 ?x62) (uf_4 uf_14 ?x62))) (and (forall (?x63 T2) (implies (= (uf_6 uf_23 ?x63) uf_8) (= (uf_24 ?x63) (uf_4 uf_14 ?x63)))) (implies (forall (?x64 T2) (implies (= (uf_6 uf_23 ?x64) uf_8) (= (uf_24 ?x64) (uf_4 uf_14 ?x64)))) (implies true (implies true (and (= (uf_24 uf_11) 0) (implies (= (uf_24 uf_11) 0) (and (forall (?x65 T2) (<= 0 (uf_24 ?x65))) (implies (forall (?x66 T2) (<= 0 (uf_24 ?x66))) (and (forall (?x67 T2) (?x68 T2) (implies (and (not (= (uf_6 uf_23 ?x68) uf_8)) (= (uf_6 uf_23 ?x67) uf_8)) (<= (uf_24 ?x67) (uf_24 ?x68)))) (implies (forall (?x69 T2) (?x70 T2) (implies (and (not (= (uf_6 uf_23 ?x70) uf_8)) (= (uf_6 uf_23 ?x69) uf_8)) (<= (uf_24 ?x69) (uf_24 ?x70)))) (and (forall (?x71 T2) (?x72 T2) (implies (and (= (uf_6 uf_23 ?x72) uf_8) (< (uf_10 (uf_1 ?x72 ?x71)) uf_9)) (<= (uf_24 ?x71) (+ (uf_24 ?x72) (uf_10 (uf_1 ?x72 ?x71)))))) (implies (forall (?x73 T2) (?x74 T2) (implies (and (= (uf_6 uf_23 ?x74) uf_8) (< (uf_10 (uf_1 ?x74 ?x73)) uf_9)) (<= (uf_24 ?x73) (+ (uf_24 ?x74) (uf_10 (uf_1 ?x74 ?x73)))))) (and (forall (?x75 T2) (implies (and (not (= ?x75 uf_11)) (< (uf_24 ?x75) uf_9)) (exists (?x76 T2) (and (< (uf_24 ?x76) (uf_24 ?x75)) (and (= (uf_6 uf_23 ?x76) uf_8) (= (uf_24 ?x75) (+ (uf_24 ?x76) (uf_10 (uf_1 ?x76 ?x75))))))))) (implies (forall (?x77 T2) (implies (and (not (= ?x77 uf_11)) (< (uf_24 ?x77) uf_9)) (exists (?x78 T2) (and (< (uf_24 ?x78) (uf_24 ?x77)) (and (= (uf_6 uf_23 ?x78) uf_8) (= (uf_24 ?x77) (+ (uf_24 ?x78) (uf_10 (uf_1 ?x78 ?x77))))))))) (implies false true)))))))))))))))))))))))))))))))))))))))))))))))))))) +:assumption (not (implies true (implies true (implies (forall (?x24 T2) (implies (= ?x24 uf_11) (= (uf_12 ?x24) 0))) (implies (forall (?x25 T2) (implies (not (= ?x25 uf_11)) (= (uf_12 ?x25) uf_9))) (implies (forall (?x26 T2) (not (up_13 ?x26))) (implies true (and (= (uf_12 uf_11) 0) (implies (= (uf_12 uf_11) 0) (and (forall (?x27 T2) (<= 0 (uf_12 ?x27))) (implies (forall (?x28 T2) (<= 0 (uf_12 ?x28))) (and (forall (?x29 T2) (?x30 T2) (implies (and (not (up_13 ?x30)) (up_13 ?x29)) (<= (uf_12 ?x29) (uf_12 ?x30)))) (implies (forall (?x31 T2) (?x32 T2) (implies (and (not (up_13 ?x32)) (up_13 ?x31)) (<= (uf_12 ?x31) (uf_12 ?x32)))) (and (forall (?x33 T2) (?x34 T2) (implies (and (up_13 ?x34) (< (uf_10 (uf_1 ?x34 ?x33)) uf_9)) (<= (uf_12 ?x33) (+ (uf_12 ?x34) (uf_10 (uf_1 ?x34 ?x33)))))) (implies (forall (?x35 T2) (?x36 T2) (implies (and (up_13 ?x36) (< (uf_10 (uf_1 ?x36 ?x35)) uf_9)) (<= (uf_12 ?x35) (+ (uf_12 ?x36) (uf_10 (uf_1 ?x36 ?x35)))))) (and (forall (?x37 T2) (implies (and (not (= ?x37 uf_11)) (< (uf_12 ?x37) uf_9)) (exists (?x38 T2) (and (< (uf_12 ?x38) (uf_12 ?x37)) (and (up_13 ?x38) (= (uf_12 ?x37) (+ (uf_12 ?x38) (uf_10 (uf_1 ?x38 ?x37))))))))) (implies (forall (?x39 T2) (implies (and (not (= ?x39 uf_11)) (< (uf_12 ?x39) uf_9)) (exists (?x40 T2) (and (< (uf_12 ?x40) (uf_12 ?x39)) (and (up_13 ?x40) (= (uf_12 ?x39) (+ (uf_12 ?x40) (uf_10 (uf_1 ?x40 ?x39))))))))) (implies true (implies true (implies (= (uf_4 uf_14 uf_11) 0) (implies (forall (?x41 T2) (<= 0 (uf_4 uf_14 ?x41))) (implies (forall (?x42 T2) (?x43 T2) (implies (and (not (up_6 uf_15 ?x43)) (up_6 uf_15 ?x42)) (<= (uf_4 uf_14 ?x42) (uf_4 uf_14 ?x43)))) (implies (forall (?x44 T2) (?x45 T2) (implies (and (up_6 uf_15 ?x45) (< (uf_10 (uf_1 ?x45 ?x44)) uf_9)) (<= (uf_4 uf_14 ?x44) (+ (uf_4 uf_14 ?x45) (uf_10 (uf_1 ?x45 ?x44)))))) (implies (forall (?x46 T2) (implies (and (not (= ?x46 uf_11)) (< (uf_4 uf_14 ?x46) uf_9)) (exists (?x47 T2) (and (< (uf_4 uf_14 ?x47) (uf_4 uf_14 ?x46)) (and (up_6 uf_15 ?x47) (= (uf_4 uf_14 ?x46) (+ (uf_4 uf_14 ?x47) (uf_10 (uf_1 ?x47 ?x46))))))))) (implies true (and (implies true (implies true (implies (not (exists (?x48 T2) (and (not (up_6 uf_15 ?x48)) (< (uf_4 uf_14 ?x48) uf_9)))) (implies true (implies true (implies (= uf_16 uf_15) (implies (= uf_17 uf_18) (implies (= uf_19 uf_14) (implies (= uf_20 uf_21) (implies true (and (forall (?x49 T2) (implies (and (not (= ?x49 uf_11)) (< (uf_4 uf_19 ?x49) uf_9)) (exists (?x50 T2) (and (< (uf_4 uf_19 ?x50) (uf_4 uf_19 ?x49)) (= (uf_4 uf_19 ?x49) (+ (uf_4 uf_19 ?x50) (uf_10 (uf_1 ?x50 ?x49)))))))) (implies (forall (?x51 T2) (implies (and (not (= ?x51 uf_11)) (< (uf_4 uf_19 ?x51) uf_9)) (exists (?x52 T2) (and (< (uf_4 uf_19 ?x52) (uf_4 uf_19 ?x51)) (= (uf_4 uf_19 ?x51) (+ (uf_4 uf_19 ?x52) (uf_10 (uf_1 ?x52 ?x51)))))))) (and (forall (?x53 T2) (?x54 T2) (implies (and (< (uf_4 uf_19 ?x54) uf_9) (< (uf_10 (uf_1 ?x54 ?x53)) uf_9)) (<= (uf_4 uf_19 ?x53) (+ (uf_4 uf_19 ?x54) (uf_10 (uf_1 ?x54 ?x53)))))) (implies (forall (?x55 T2) (?x56 T2) (implies (and (< (uf_4 uf_19 ?x56) uf_9) (< (uf_10 (uf_1 ?x56 ?x55)) uf_9)) (<= (uf_4 uf_19 ?x55) (+ (uf_4 uf_19 ?x56) (uf_10 (uf_1 ?x56 ?x55)))))) (and (= (uf_4 uf_19 uf_11) 0) (implies (= (uf_4 uf_19 uf_11) 0) true)))))))))))))))) (implies true (implies true (implies (exists (?x57 T2) (and (not (up_6 uf_15 ?x57)) (< (uf_4 uf_14 ?x57) uf_9))) (implies (not (up_6 uf_15 uf_22)) (implies (< (uf_4 uf_14 uf_22) uf_9) (implies (forall (?x58 T2) (implies (not (up_6 uf_15 ?x58)) (<= (uf_4 uf_14 uf_22) (uf_4 uf_14 ?x58)))) (implies (= uf_23 (uf_7 uf_15 uf_22 uf_8)) (implies (forall (?x59 T2) (implies (and (< (uf_10 (uf_1 uf_22 ?x59)) uf_9) (< (+ (uf_4 uf_14 uf_22) (uf_10 (uf_1 uf_22 ?x59))) (uf_4 uf_14 ?x59))) (= (uf_24 ?x59) (+ (uf_4 uf_14 uf_22) (uf_10 (uf_1 uf_22 ?x59)))))) (implies (forall (?x60 T2) (implies (not (and (< (uf_10 (uf_1 uf_22 ?x60)) uf_9) (< (+ (uf_4 uf_14 uf_22) (uf_10 (uf_1 uf_22 ?x60))) (uf_4 uf_14 ?x60)))) (= (uf_24 ?x60) (uf_4 uf_14 ?x60)))) (and (forall (?x61 T2) (<= (uf_24 ?x61) (uf_4 uf_14 ?x61))) (implies (forall (?x62 T2) (<= (uf_24 ?x62) (uf_4 uf_14 ?x62))) (and (forall (?x63 T2) (implies (up_6 uf_23 ?x63) (= (uf_24 ?x63) (uf_4 uf_14 ?x63)))) (implies (forall (?x64 T2) (implies (up_6 uf_23 ?x64) (= (uf_24 ?x64) (uf_4 uf_14 ?x64)))) (implies true (implies true (and (= (uf_24 uf_11) 0) (implies (= (uf_24 uf_11) 0) (and (forall (?x65 T2) (<= 0 (uf_24 ?x65))) (implies (forall (?x66 T2) (<= 0 (uf_24 ?x66))) (and (forall (?x67 T2) (?x68 T2) (implies (and (not (up_6 uf_23 ?x68)) (up_6 uf_23 ?x67)) (<= (uf_24 ?x67) (uf_24 ?x68)))) (implies (forall (?x69 T2) (?x70 T2) (implies (and (not (up_6 uf_23 ?x70)) (up_6 uf_23 ?x69)) (<= (uf_24 ?x69) (uf_24 ?x70)))) (and (forall (?x71 T2) (?x72 T2) (implies (and (up_6 uf_23 ?x72) (< (uf_10 (uf_1 ?x72 ?x71)) uf_9)) (<= (uf_24 ?x71) (+ (uf_24 ?x72) (uf_10 (uf_1 ?x72 ?x71)))))) (implies (forall (?x73 T2) (?x74 T2) (implies (and (up_6 uf_23 ?x74) (< (uf_10 (uf_1 ?x74 ?x73)) uf_9)) (<= (uf_24 ?x73) (+ (uf_24 ?x74) (uf_10 (uf_1 ?x74 ?x73)))))) (and (forall (?x75 T2) (implies (and (not (= ?x75 uf_11)) (< (uf_24 ?x75) uf_9)) (exists (?x76 T2) (and (< (uf_24 ?x76) (uf_24 ?x75)) (and (up_6 uf_23 ?x76) (= (uf_24 ?x75) (+ (uf_24 ?x76) (uf_10 (uf_1 ?x76 ?x75))))))))) (implies (forall (?x77 T2) (implies (and (not (= ?x77 uf_11)) (< (uf_24 ?x77) uf_9)) (exists (?x78 T2) (and (< (uf_24 ?x78) (uf_24 ?x77)) (and (up_6 uf_23 ?x78) (= (uf_24 ?x77) (+ (uf_24 ?x78) (uf_10 (uf_1 ?x78 ?x77))))))))) (implies false true)))))))))))))))))))))))))))))))))))))))))))))))))))) :formula true ) diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/Boogie/Examples/cert/Boogie_Dijkstra.proof --- a/src/HOL/Boogie/Examples/cert/Boogie_Dijkstra.proof Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/Boogie/Examples/cert/Boogie_Dijkstra.proof Mon Dec 07 11:18:44 2009 +0100 @@ -1,7129 +1,6631 @@ #2 := false -#55 := 0::int -decl uf_24 :: (-> T2 int) -decl ?x68!16 :: T2 -#2296 := ?x68!16 -#2300 := (uf_24 ?x68!16) -#1220 := -1::int -#2894 := (* -1::int #2300) -decl ?x67!17 :: T2 -#2297 := ?x67!17 -#2298 := (uf_24 ?x67!17) -#2895 := (+ #2298 #2894) -#2896 := (<= #2895 0::int) -#4133 := (not #2896) -decl uf_6 :: (-> T4 T2 T5) +decl up_6 :: (-> T4 T2 bool) +decl ?x47!7 :: (-> T2 T2) +decl ?x75!20 :: T2 +#2235 := ?x75!20 +#5912 := (?x47!7 ?x75!20) decl uf_23 :: T4 -#193 := uf_23 -#2305 := (uf_6 uf_23 ?x68!16) +#187 := uf_23 +#16889 := (up_6 uf_23 #5912) +decl uf_2 :: (-> T1 T2) +decl uf_1 :: (-> T2 T2 T1) +decl uf_3 :: (-> T1 T2) +decl uf_22 :: T2 +#179 := uf_22 +#4603 := (uf_1 uf_22 uf_22) +#10571 := (uf_3 #4603) +#15148 := (uf_1 #10571 ?x75!20) +#15931 := (uf_3 #15148) +#16881 := (uf_1 #5912 #15931) +#19932 := (uf_2 #16881) +decl uf_7 :: (-> T4 T2 T5 T4) decl uf_8 :: T5 #33 := uf_8 -#2306 := (= uf_8 #2305) -#2303 := (uf_6 uf_23 ?x67!17) -#2304 := (= uf_8 #2303) -#3433 := (not #2304) -#3448 := (or #3433 #2306 #2896) -#3453 := (not #3448) -decl uf_1 :: (-> T2 T2 T1) -decl ?x75!20 :: T2 -#2354 := ?x75!20 +decl uf_15 :: T4 +#110 := uf_15 +#11533 := (uf_7 uf_15 #10571 uf_8) +#27162 := (up_6 #11533 #19932) +#27198 := (not #27162) +#16890 := (not #16889) +#27320 := (iff #16890 #27198) +#27318 := (iff #16889 #27162) +#27316 := (iff #27162 #16889) +#27304 := (= #19932 #5912) +#20977 := (= #5912 #19932) #11 := (:var 0 T2) -#2358 := (uf_1 #11 ?x75!20) -#4486 := (pattern #2358) -#202 := (uf_24 #11) -#4426 := (pattern #202) -#212 := (uf_6 uf_23 #11) -#4452 := (pattern #212) +#10 := (:var 1 T2) +#12 := (uf_1 #10 #11) +#4070 := (pattern #12) +#16 := (uf_2 #12) +#317 := (= #10 #16) +#4077 := (forall (vars (?x4 T2) (?x5 T2)) (:pat #4070) #317) +#321 := (forall (vars (?x4 T2) (?x5 T2)) #317) +#4080 := (iff #321 #4077) +#4078 := (iff #317 #317) +#4079 := [refl]: #4078 +#4081 := [quant-intro #4079]: #4080 +#1731 := (~ #321 #321) +#1765 := (~ #317 #317) +#1766 := [refl]: #1765 +#1732 := [nnf-pos #1766]: #1731 +#17 := (= #16 #10) +#18 := (forall (vars (?x4 T2) (?x5 T2)) #17) +#322 := (iff #18 #321) +#319 := (iff #17 #317) +#320 := [rewrite]: #319 +#323 := [quant-intro #320]: #322 +#316 := [asserted]: #18 +#326 := [mp #316 #323]: #321 +#1767 := [mp~ #326 #1732]: #321 +#4082 := [mp #1767 #4081]: #4077 +#8504 := (not #4077) +#20954 := (or #8504 #20977) +#20968 := [quant-inst]: #20954 +#27303 := [unit-resolution #20968 #4082]: #20977 +#27305 := [symm #27303]: #27304 +#13612 := (= #11533 uf_23) +#188 := (uf_7 uf_15 uf_22 uf_8) +#7202 := (= #188 uf_23) +#189 := (= uf_23 #188) +#2239 := (uf_1 #11 ?x75!20) +#4360 := (pattern #2239) +decl uf_24 :: (-> T2 int) +#196 := (uf_24 #11) +#4300 := (pattern #196) +#206 := (up_6 uf_23 #11) +#4326 := (pattern #206) +#52 := 0::int decl uf_10 :: (-> T1 int) -#2359 := (uf_10 #2358) -#2355 := (uf_24 ?x75!20) -#2356 := (* -1::int #2355) -#2958 := (+ #2356 #2359) -#2959 := (+ #202 #2958) -#2962 := (= #2959 0::int) -#3524 := (not #2962) -#2357 := (+ #202 #2356) -#2362 := (>= #2357 0::int) -#773 := (= uf_8 #212) -#779 := (not #773) -#3525 := (or #779 #2362 #3524) -#4487 := (forall (vars (?x76 T2)) (:pat #4452 #4426 #4486) #3525) -#4492 := (not #4487) -#10 := (:var 1 T2) -#90 := (uf_1 #11 #10) -#4281 := (pattern #90) -#224 := (uf_24 #10) -#1505 := (* -1::int #224) -#1506 := (+ #202 #1505) -#91 := (uf_10 #90) -#1536 := (+ #91 #1506) -#1534 := (>= #1536 0::int) -#1235 := (* -1::int #91) +#2240 := (uf_10 #2239) +#2236 := (uf_24 ?x75!20) +#1127 := -1::int +#2237 := (* -1::int #2236) +#2834 := (+ #2237 #2240) +#2835 := (+ #196 #2834) +#2838 := (= #2835 0::int) +#3400 := (not #2838) +#2238 := (+ #196 #2237) +#2243 := (>= #2238 0::int) +#213 := (not #206) +#3401 := (or #213 #2243 #3400) +#4361 := (forall (vars (?x76 T2)) (:pat #4326 #4300 #4360) #3401) +#4366 := (not #4361) +#87 := (uf_1 #11 #10) +#4155 := (pattern #87) +#216 := (uf_24 #10) +#1407 := (* -1::int #216) +#1408 := (+ #196 #1407) +#88 := (uf_10 #87) +#1433 := (+ #88 #1408) +#1431 := (>= #1433 0::int) +#1142 := (* -1::int #88) decl uf_9 :: int -#56 := uf_9 -#1236 := (+ uf_9 #1235) -#1237 := (<= #1236 0::int) -#3516 := (or #779 #1237 #1534) -#4478 := (forall (vars (?x71 T2) (?x72 T2)) (:pat #4281) #3516) -#4483 := (not #4478) +#53 := uf_9 +#1143 := (+ uf_9 #1142) +#1144 := (<= #1143 0::int) +#3392 := (or #213 #1144 #1431) +#4352 := (forall (vars (?x71 T2) (?x72 T2)) (:pat #4155) #3392) +#4357 := (not #4352) decl uf_11 :: T2 -#67 := uf_11 -#2934 := (= uf_11 ?x75!20) -#2366 := (+ uf_9 #2356) -#2367 := (<= #2366 0::int) -#4495 := (or #2367 #2934 #4483 #4492) -#4498 := (not #4495) +#64 := uf_11 +#2810 := (= uf_11 ?x75!20) +#2247 := (+ uf_9 #2237) +#2248 := (<= #2247 0::int) +#4369 := (or #2248 #2810 #4357 #4366) +#4372 := (not #4369) decl ?x71!19 :: T2 -#2324 := ?x71!19 +#2206 := ?x71!19 decl ?x72!18 :: T2 -#2323 := ?x72!18 -#2329 := (uf_1 ?x72!18 ?x71!19) -#2330 := (uf_10 #2329) -#2333 := (* -1::int #2330) -#2327 := (uf_24 ?x72!18) -#2920 := (* -1::int #2327) -#2921 := (+ #2920 #2333) -#2325 := (uf_24 ?x71!19) -#2922 := (+ #2325 #2921) -#2923 := (<= #2922 0::int) -#2337 := (uf_6 uf_23 ?x72!18) -#2338 := (= uf_8 #2337) -#3479 := (not #2338) -#2334 := (+ uf_9 #2333) -#2335 := (<= #2334 0::int) -#3494 := (or #2335 #3479 #2923) -#3499 := (not #3494) -#4501 := (or #3499 #4498) -#4504 := (not #4501) -#4469 := (pattern #202 #224) -#1504 := (>= #1506 0::int) -#221 := (uf_6 uf_23 #10) -#793 := (= uf_8 #221) -#3456 := (not #793) -#3471 := (or #773 #3456 #1504) -#4470 := (forall (vars (?x67 T2) (?x68 T2)) (:pat #4469) #3471) -#4475 := (not #4470) -#4507 := (or #4475 #4504) -#7658 := [hypothesis]: #3499 -#2336 := (not #2335) -#4131 := (or #3494 #2336) -#4137 := [def-axiom]: #4131 -#17052 := [unit-resolution #4137 #7658]: #2336 -#17077 := (or #3494 #2335) +#2205 := ?x72!18 +#2211 := (uf_1 ?x72!18 ?x71!19) +#2212 := (uf_10 #2211) +#2215 := (* -1::int #2212) +#2209 := (uf_24 ?x72!18) +#2796 := (* -1::int #2209) +#2797 := (+ #2796 #2215) +#2207 := (uf_24 ?x71!19) +#2798 := (+ #2207 #2797) +#2799 := (<= #2798 0::int) +#2219 := (up_6 uf_23 ?x72!18) +#3355 := (not #2219) +#2216 := (+ uf_9 #2215) +#2217 := (<= #2216 0::int) +#3370 := (or #2217 #3355 #2799) +#3375 := (not #3370) +#4375 := (or #3375 #4372) +#4378 := (not #4375) +#4343 := (pattern #196 #216) +#1406 := (>= #1408 0::int) +#214 := (up_6 uf_23 #10) +#3332 := (not #214) +#3347 := (or #206 #3332 #1406) +#4344 := (forall (vars (?x67 T2) (?x68 T2)) (:pat #4343) #3347) +#4349 := (not #4344) +#4381 := (or #4349 #4378) +#4384 := (not #4381) +decl ?x68!16 :: T2 +#2180 := ?x68!16 +#2184 := (uf_24 ?x68!16) +#2770 := (* -1::int #2184) +decl ?x67!17 :: T2 +#2181 := ?x67!17 +#2182 := (uf_24 ?x67!17) +#2771 := (+ #2182 #2770) +#2772 := (<= #2771 0::int) +#2188 := (up_6 uf_23 ?x68!16) +#2187 := (up_6 uf_23 ?x67!17) +#3309 := (not #2187) +#3324 := (or #3309 #2188 #2772) +#3329 := (not #3324) +#4387 := (or #3329 #4384) +#4390 := (not #4387) +#1397 := (>= #196 0::int) +#4335 := (forall (vars (?x65 T2)) (:pat #4300) #1397) +#4340 := (not #4335) +#4393 := (or #4340 #4390) +#4396 := (not #4393) +decl ?x65!15 :: T2 +#2165 := ?x65!15 +#2166 := (uf_24 ?x65!15) +#2167 := (>= #2166 0::int) +#2168 := (not #2167) +#4399 := (or #2168 #4396) +#4402 := (not #4399) +#209 := (uf_24 uf_11) +#210 := (= #209 0::int) +#1394 := (not #210) +#4405 := (or #1394 #4402) +#4408 := (not #4405) +#4411 := (or #1394 #4408) +#4414 := (not #4411) decl uf_4 :: (-> T3 T2 int) decl uf_14 :: T3 -#107 := uf_14 -#110 := (uf_4 uf_14 #11) -#4305 := (pattern #110) -#759 := (= #110 #202) -#780 := (or #759 #779) -#4453 := (forall (vars (?x63 T2)) (:pat #4305 #4426 #4452) #780) -#4510 := (not #4507) -#4513 := (or #3453 #4510) -#4516 := (not #4513) -#1495 := (>= #202 0::int) -#4461 := (forall (vars (?x65 T2)) (:pat #4426) #1495) -#4466 := (not #4461) -#4519 := (or #4466 #4516) -#4522 := (not #4519) -decl ?x65!15 :: T2 -#2281 := ?x65!15 -#2282 := (uf_24 ?x65!15) -#2283 := (>= #2282 0::int) -#2284 := (not #2283) -#4525 := (or #2284 #4522) -#4528 := (not #4525) -#216 := (uf_24 uf_11) -#217 := (= #216 0::int) -#1492 := (not #217) -#4531 := (or #1492 #4528) -#4534 := (not #4531) -#4537 := (or #1492 #4534) -#4540 := (not #4537) -#4458 := (not #4453) -#4543 := (or #4458 #4540) -#4546 := (not #4543) +#104 := uf_14 +#107 := (uf_4 uf_14 #11) +#4179 := (pattern #107) +#688 := (= #107 #196) +#705 := (or #213 #688) +#4327 := (forall (vars (?x63 T2)) (:pat #4326 #4179 #4300) #705) +#4332 := (not #4327) +#4417 := (or #4332 #4414) +#4420 := (not #4417) decl ?x63!14 :: T2 -#2256 := ?x63!14 -#2261 := (uf_4 uf_14 ?x63!14) -#2260 := (uf_24 ?x63!14) -#2866 := (= #2260 #2261) -#2257 := (uf_6 uf_23 ?x63!14) -#2258 := (= uf_8 #2257) -#2259 := (not #2258) -#2872 := (or #2259 #2866) -#2877 := (not #2872) -#10222 := [hypothesis]: #2877 -#4144 := (or #2872 #2258) -#4145 := [def-axiom]: #4144 -#10559 := [unit-resolution #4145 #10222]: #2258 -#4140 := (not #2866) -#4141 := (or #2872 #4140) -#4146 := [def-axiom]: #4141 -#10294 := [unit-resolution #4146 #10222]: #4140 -decl uf_3 :: (-> T1 T2) -decl uf_22 :: T2 -#184 := uf_22 -#4728 := (uf_1 uf_22 uf_22) -#9695 := (uf_3 #4728) -#10367 := (uf_1 #9695 ?x63!14) -#10448 := (uf_3 #10367) -#11132 := (uf_4 uf_14 #10448) -#13212 := (= #11132 #2261) -#12385 := (= #2261 #11132) -#10449 := (= ?x63!14 #10448) -#12 := (uf_1 #10 #11) -#4196 := (pattern #12) -#13 := (uf_3 #12) -#317 := (= #11 #13) -#4197 := (forall (vars (?x2 T2) (?x3 T2)) (:pat #4196) #317) -#321 := (forall (vars (?x2 T2) (?x3 T2)) #317) -#4200 := (iff #321 #4197) -#4198 := (iff #317 #317) +#2141 := ?x63!14 +#2143 := (uf_4 uf_14 ?x63!14) +#2142 := (uf_24 ?x63!14) +#2747 := (= #2142 #2143) +#2145 := (up_6 uf_23 ?x63!14) +#2146 := (not #2145) +#2750 := (or #2146 #2747) +#2753 := (not #2750) +#4423 := (or #2753 #4420) +#4426 := (not #4423) +#1382 := (* -1::int #196) +#1383 := (+ #107 #1382) +#1381 := (>= #1383 0::int) +#4318 := (forall (vars (?x61 T2)) (:pat #4179 #4300) #1381) +#4323 := (not #4318) +#4429 := (or #4323 #4426) +#4432 := (not #4429) +decl ?x61!13 :: T2 +#2123 := ?x61!13 +#2126 := (uf_4 uf_14 ?x61!13) +#2737 := (* -1::int #2126) +#2124 := (uf_24 ?x61!13) +#2738 := (+ #2124 #2737) +#2739 := (<= #2738 0::int) +#2744 := (not #2739) +#4435 := (or #2744 #4432) +#4438 := (not #4435) +#190 := (uf_1 uf_22 #11) +#4301 := (pattern #190) +#191 := (uf_10 #190) +#1520 := (+ #191 #1382) +#182 := (uf_4 uf_14 uf_22) +#1521 := (+ #182 #1520) +#1522 := (= #1521 0::int) +#1351 := (* -1::int #191) +#1357 := (* -1::int #182) +#1358 := (+ #1357 #1351) +#1359 := (+ #107 #1358) +#1360 := (<= #1359 0::int) +#1352 := (+ uf_9 #1351) +#1353 := (<= #1352 0::int) +#3301 := (or #1353 #1360 #1522) +#4310 := (forall (vars (?x59 T2)) (:pat #4301 #4179 #4300) #3301) +#4315 := (not #4310) +#3281 := (or #1353 #1360) +#3282 := (not #3281) +#3285 := (or #688 #3282) +#4302 := (forall (vars (?x60 T2)) (:pat #4179 #4300 #4301) #3285) +#4307 := (not #4302) +decl ?x48!12 :: T2 +#2100 := ?x48!12 +#2106 := (up_6 uf_15 ?x48!12) +#2101 := (uf_4 uf_14 ?x48!12) +#2102 := (* -1::int #2101) +#2103 := (+ uf_9 #2102) +#2104 := (<= #2103 0::int) +#1547 := (+ uf_9 #1357) +#1548 := (<= #1547 0::int) +#111 := (up_6 uf_15 #11) +#4221 := (pattern #111) +#1535 := (+ #107 #1357) +#1534 := (>= #1535 0::int) +#1538 := (or #111 #1534) +#4292 := (forall (vars (?x58 T2)) (:pat #4221 #4179) #1538) +#4297 := (not #4292) +#888 := (not #189) +#180 := (up_6 uf_15 uf_22) +#4441 := (or #180 #888 #4297 #1548 #2104 #2106 #4307 #4315 #4438) +#4444 := (not #4441) +decl ?x53!11 :: T2 +#2034 := ?x53!11 +decl ?x54!10 :: T2 +#2033 := ?x54!10 +#2039 := (uf_1 ?x54!10 ?x53!11) +#2040 := (uf_10 #2039) +#2047 := (* -1::int #2040) +decl uf_19 :: T3 +#141 := uf_19 +#2037 := (uf_4 uf_19 ?x54!10) +#2043 := (* -1::int #2037) +#2694 := (+ #2043 #2047) +#2035 := (uf_4 uf_19 ?x53!11) +#2695 := (+ #2035 #2694) +#2696 := (<= #2695 0::int) +#2048 := (+ uf_9 #2047) +#2049 := (<= #2048 0::int) +#2044 := (+ uf_9 #2043) +#2045 := (<= #2044 0::int) +#3245 := (or #2045 #2049 #2696) +#3250 := (not #3245) +#149 := (uf_4 uf_19 #10) +#1264 := (* -1::int #149) +#146 := (uf_4 uf_19 #11) +#1265 := (+ #146 #1264) +#1271 := (+ #88 #1265) +#1294 := (>= #1271 0::int) +#1251 := (* -1::int #146) +#1252 := (+ uf_9 #1251) +#1253 := (<= #1252 0::int) +#3213 := (or #1144 #1253 #1294) +#4254 := (forall (vars (?x53 T2) (?x54 T2)) (:pat #4155) #3213) +#4259 := (not #4254) +#161 := (uf_4 uf_19 uf_11) +#162 := (= #161 0::int) +#4262 := (or #162 #4259) +#4265 := (not #4262) +#4268 := (or #4265 #3250) +#4271 := (not #4268) +#4230 := (pattern #146) +decl ?x50!9 :: (-> T2 T2) +#2010 := (?x50!9 #11) +#2013 := (uf_1 #2010 #11) +#2014 := (uf_10 #2013) +#2664 := (* -1::int #2014) +#2011 := (uf_4 uf_19 #2010) +#2647 := (* -1::int #2011) +#2665 := (+ #2647 #2664) +#2666 := (+ #146 #2665) +#2667 := (= #2666 0::int) +#3183 := (not #2667) +#2648 := (+ #146 #2647) +#2649 := (<= #2648 0::int) +#3184 := (or #2649 #3183) +#3185 := (not #3184) +#65 := (= #11 uf_11) +#3191 := (or #65 #1253 #3185) +#4246 := (forall (vars (?x49 T2)) (:pat #4230) #3191) +#4251 := (not #4246) +#4274 := (or #4251 #4271) +#4277 := (not #4274) +decl ?x49!8 :: T2 +#1970 := ?x49!8 +#1974 := (uf_1 #11 ?x49!8) +#4231 := (pattern #1974) +#1975 := (uf_10 #1974) +#1971 := (uf_4 uf_19 ?x49!8) +#1972 := (* -1::int #1971) +#2617 := (+ #1972 #1975) +#2618 := (+ #146 #2617) +#2621 := (= #2618 0::int) +#3147 := (not #2621) +#1973 := (+ #146 #1972) +#1978 := (>= #1973 0::int) +#3148 := (or #1978 #3147) +#4232 := (forall (vars (?x50 T2)) (:pat #4230 #4231) #3148) +#4237 := (not #4232) +#2593 := (= uf_11 ?x49!8) +#1982 := (+ uf_9 #1972) +#1983 := (<= #1982 0::int) +#4240 := (or #1983 #2593 #4237) +#4243 := (not #4240) +#4280 := (or #4243 #4277) +#4283 := (not #4280) +#1206 := (* -1::int #107) +#1207 := (+ uf_9 #1206) +#1208 := (<= #1207 0::int) +#3133 := (or #111 #1208) +#4222 := (forall (vars (?x48 T2)) (:pat #4221 #4179) #3133) +#4227 := (not #4222) +#509 := (= uf_14 uf_19) +#614 := (not #509) +decl uf_16 :: T4 +#136 := uf_16 +#506 := (= uf_15 uf_16) +#632 := (not #506) +decl uf_21 :: T3 +#144 := uf_21 +decl uf_20 :: T3 +#143 := uf_20 +#145 := (= uf_20 uf_21) +#605 := (not #145) +decl uf_18 :: T2 +#139 := uf_18 +decl uf_17 :: T2 +#138 := uf_17 +#140 := (= uf_17 uf_18) +#623 := (not #140) +#4286 := (or #623 #605 #632 #614 #4227 #4283) +#4289 := (not #4286) +#4447 := (or #4289 #4444) +#4450 := (not #4447) +#1934 := (?x47!7 #11) +#1935 := (uf_4 uf_14 #1934) +#2552 := (* -1::int #1935) +#2567 := (+ #107 #2552) +#2568 := (<= #2567 0::int) +#1939 := (uf_1 #1934 #11) +#1940 := (uf_10 #1939) +#2553 := (* -1::int #1940) +#2554 := (+ #2552 #2553) +#2555 := (+ #107 #2554) +#2556 := (= #2555 0::int) +#3117 := (not #2556) +#1943 := (up_6 uf_15 #1934) +#3116 := (not #1943) +#3118 := (or #3116 #3117 #2568) +#3119 := (not #3118) +#3125 := (or #65 #1208 #3119) +#4213 := (forall (vars (?x46 T2)) (:pat #4179) #3125) +#4218 := (not #4213) +decl uf_12 :: (-> T2 int) +#66 := (uf_12 #11) +#4131 := (pattern #66) +decl ?x38!6 :: (-> T2 T2) +#1907 := (?x38!6 #11) +#1911 := (uf_12 #1907) +#2511 := (* -1::int #1911) +#1908 := (uf_1 #1907 #11) +#1909 := (uf_10 #1908) +#2528 := (* -1::int #1909) +#2529 := (+ #2528 #2511) +#2530 := (+ #66 #2529) +#2531 := (= #2530 0::int) +#3089 := (not #2531) +#2512 := (+ #66 #2511) +#2513 := (<= #2512 0::int) +decl up_13 :: (-> T2 bool) +#1917 := (up_13 #1907) +#3088 := (not #1917) +#3090 := (or #3088 #2513 #3089) +#3091 := (not #3090) +#1168 := (* -1::int #66) +#1169 := (+ uf_9 #1168) +#1170 := (<= #1169 0::int) +#3097 := (or #65 #1170 #3091) +#4205 := (forall (vars (?x37 T2)) (:pat #4131) #3097) +#4210 := (not #4205) +#113 := (up_6 uf_15 #10) +#4196 := (pattern #111 #113) +#115 := (uf_4 uf_14 #10) +#1220 := (* -1::int #115) +#1221 := (+ #107 #1220) +#1224 := (>= #1221 0::int) +#3054 := (not #113) +#3069 := (or #111 #3054 #1224) +#4197 := (forall (vars (?x42 T2) (?x43 T2)) (:pat #4196) #3069) +#4202 := (not #4197) +#1222 := (+ #88 #1221) +#1602 := (>= #1222 0::int) +#112 := (not #111) +#3046 := (or #112 #1144 #1602) +#4188 := (forall (vars (?x44 T2) (?x45 T2)) (:pat #4155) #3046) +#4193 := (not #4188) +#1625 := (>= #107 0::int) +#4180 := (forall (vars (?x41 T2)) (:pat #4179) #1625) +#4185 := (not #4180) +#105 := (uf_4 uf_14 uf_11) +#106 := (= #105 0::int) +#1636 := (not #106) +#4453 := (or #1636 #4185 #4193 #4202 #4210 #4218 #4450) +#4456 := (not #4453) +decl ?x37!5 :: T2 +#1863 := ?x37!5 +#1864 := (uf_1 #11 ?x37!5) +#4164 := (pattern #1864) +#74 := (up_13 #11) +#4124 := (pattern #74) +#1866 := (uf_12 ?x37!5) +#1867 := (* -1::int #1866) +#1865 := (uf_10 #1864) +#2479 := (+ #1865 #1867) +#2480 := (+ #66 #2479) +#2483 := (= #2480 0::int) +#3007 := (not #2483) +#1871 := (+ #66 #1867) +#1872 := (>= #1871 0::int) +#75 := (not #74) +#3008 := (or #75 #1872 #3007) +#4165 := (forall (vars (?x38 T2)) (:pat #4124 #4131 #4164) #3008) +#4170 := (not #4165) +#2455 := (= uf_11 ?x37!5) +#1876 := (+ uf_9 #1867) +#1877 := (<= #1876 0::int) +#4173 := (or #1877 #2455 #4170) +#4176 := (not #4173) +#4459 := (or #4176 #4456) +#4462 := (not #4459) +#83 := (uf_12 #10) +#1130 := (* -1::int #83) +#1157 := (+ #1130 #88) +#1158 := (+ #66 #1157) +#1155 := (>= #1158 0::int) +#2999 := (or #75 #1144 #1155) +#4156 := (forall (vars (?x33 T2) (?x34 T2)) (:pat #4155) #2999) +#4161 := (not #4156) +#4465 := (or #4161 #4462) +#4468 := (not #4465) +decl ?x34!3 :: T2 +#1833 := ?x34!3 +#1840 := (uf_12 ?x34!3) +decl ?x33!4 :: T2 +#1834 := ?x33!4 +#1837 := (uf_12 ?x33!4) +#1838 := (* -1::int #1837) +#2442 := (+ #1838 #1840) +#1835 := (uf_1 ?x34!3 ?x33!4) +#1836 := (uf_10 #1835) +#2443 := (+ #1836 #2442) +#2446 := (>= #2443 0::int) +#1847 := (up_13 ?x34!3) +#2962 := (not #1847) +#1843 := (* -1::int #1836) +#1844 := (+ uf_9 #1843) +#1845 := (<= #1844 0::int) +#2977 := (or #1845 #2962 #2446) +#8241 := [hypothesis]: #1847 +#4125 := (forall (vars (?x26 T2)) (:pat #4124) #75) +#76 := (forall (vars (?x26 T2)) #75) +#4128 := (iff #76 #4125) +#4126 := (iff #75 #75) +#4127 := [refl]: #4126 +#4129 := [quant-intro #4127]: #4128 +#1747 := (~ #76 #76) +#1784 := (~ #75 #75) +#1785 := [refl]: #1784 +#1748 := [nnf-pos #1785]: #1747 +#67 := (= #66 0::int) +#70 := (not #65) +#1694 := (or #70 #67) +#1697 := (forall (vars (?x24 T2)) #1694) +#1700 := (not #1697) +#1628 := (forall (vars (?x41 T2)) #1625) +#1631 := (not #1628) +#114 := (and #112 #113) +#454 := (not #114) +#1616 := (or #454 #1224) +#1619 := (forall (vars (?x42 T2) (?x43 T2)) #1616) +#1622 := (not #1619) +#1145 := (not #1144) +#1594 := (and #111 #1145) +#1599 := (not #1594) +#1605 := (or #1599 #1602) +#1608 := (forall (vars (?x44 T2) (?x45 T2)) #1605) +#1611 := (not #1608) +#1541 := (forall (vars (?x58 T2)) #1538) +#1544 := (not #1541) +#1361 := (not #1360) +#1354 := (not #1353) +#1364 := (and #1354 #1361) +#1517 := (not #1364) +#1525 := (or #1517 #1522) +#1528 := (forall (vars (?x59 T2)) #1525) +#1531 := (not #1528) +#1455 := (= #1433 0::int) +#1458 := (not #1406) +#1467 := (and #206 #1458 #1455) +#1472 := (exists (vars (?x76 T2)) #1467) +#1444 := (+ uf_9 #1382) +#1445 := (<= #1444 0::int) +#1446 := (not #1445) +#1449 := (and #70 #1446) +#1452 := (not #1449) +#1475 := (or #1452 #1472) +#1478 := (forall (vars (?x75 T2)) #1475) +#1423 := (and #206 #1145) +#1428 := (not #1423) +#1435 := (or #1428 #1431) +#1438 := (forall (vars (?x71 T2) (?x72 T2)) #1435) +#1441 := (not #1438) +#1481 := (or #1441 #1478) +#1484 := (and #1438 #1481) +#215 := (and #213 #214) +#716 := (not #215) +#1411 := (or #716 #1406) +#1414 := (forall (vars (?x67 T2) (?x68 T2)) #1411) +#1417 := (not #1414) +#1487 := (or #1417 #1484) +#1490 := (and #1414 #1487) +#1400 := (forall (vars (?x65 T2)) #1397) +#1403 := (not #1400) +#1493 := (or #1403 #1490) +#1496 := (and #1400 #1493) +#1499 := (or #1394 #1496) +#1502 := (and #210 #1499) +#710 := (forall (vars (?x63 T2)) #705) +#846 := (not #710) +#1505 := (or #846 #1502) +#1508 := (and #710 #1505) +#1386 := (forall (vars (?x61 T2)) #1381) +#1389 := (not #1386) +#1511 := (or #1389 #1508) +#1514 := (and #1386 #1511) +#1370 := (or #688 #1364) +#1375 := (forall (vars (?x60 T2)) #1370) +#1378 := (not #1375) +#1209 := (not #1208) +#1325 := (and #112 #1209) +#1328 := (exists (vars (?x48 T2)) #1325) +#1559 := (not #1328) +#1583 := (or #180 #888 #1559 #1378 #1514 #1531 #1544 #1548) +#1254 := (not #1253) +#1288 := (and #1145 #1254) +#1291 := (not #1288) +#1297 := (or #1291 #1294) +#1300 := (forall (vars (?x53 T2) (?x54 T2)) #1297) +#1303 := (not #1300) +#1311 := (or #162 #1303) +#1316 := (and #1300 #1311) +#1269 := (= #1271 0::int) +#1263 := (>= #1265 0::int) +#1266 := (not #1263) +#1273 := (and #1266 #1269) +#1276 := (exists (vars (?x50 T2)) #1273) +#1257 := (and #70 #1254) +#1260 := (not #1257) +#1279 := (or #1260 #1276) +#1282 := (forall (vars (?x49 T2)) #1279) +#1285 := (not #1282) +#1319 := (or #1285 #1316) +#1322 := (and #1282 #1319) +#1346 := (or #623 #605 #632 #614 #1322 #1328) +#1588 := (and #1346 #1583) +#1225 := (not #1224) +#1218 := (= #1222 0::int) +#1234 := (and #111 #1218 #1225) +#1239 := (exists (vars (?x47 T2)) #1234) +#1212 := (and #70 #1209) +#1215 := (not #1212) +#1242 := (or #1215 #1239) +#1245 := (forall (vars (?x46 T2)) #1242) +#1248 := (not #1245) +#1180 := (= #1158 0::int) +#1131 := (+ #66 #1130) +#1129 := (>= #1131 0::int) +#1183 := (not #1129) +#1192 := (and #74 #1183 #1180) +#1197 := (exists (vars (?x38 T2)) #1192) +#1171 := (not #1170) +#1174 := (and #70 #1171) +#1177 := (not #1174) +#1200 := (or #1177 #1197) +#1203 := (forall (vars (?x37 T2)) #1200) +#1639 := (not #1203) +#1660 := (or #1636 #1639 #1248 #1588 #1611 #1622 #1631) +#1665 := (and #1203 #1660) +#1148 := (and #74 #1145) +#1151 := (not #1148) +#1159 := (or #1151 #1155) +#1162 := (forall (vars (?x33 T2) (?x34 T2)) #1159) +#1165 := (not #1162) +#1668 := (or #1165 #1665) +#1671 := (and #1162 #1668) +#81 := (up_13 #10) +#82 := (and #75 #81) +#430 := (not #82) +#1133 := (or #430 #1129) +#1136 := (forall (vars (?x29 T2) (?x30 T2)) #1133) +#1139 := (not #1136) +#1674 := (or #1139 #1671) +#1677 := (and #1136 #1674) +#1120 := (>= #66 0::int) +#1121 := (forall (vars (?x27 T2)) #1120) +#1124 := (not #1121) +#1680 := (or #1124 #1677) +#1683 := (and #1121 #1680) +#77 := (uf_12 uf_11) +#78 := (= #77 0::int) +#1115 := (not #78) +#1686 := (or #1115 #1683) +#1689 := (and #78 #1686) +#413 := (= uf_9 #66) +#419 := (or #65 #413) +#424 := (forall (vars (?x25 T2)) #419) +#1084 := (not #424) +#1075 := (not #76) +#1712 := (or #1075 #1084 #1689 #1700) +#1717 := (not #1712) +#1 := true +#234 := (implies false true) +#221 := (+ #196 #88) +#228 := (= #216 #221) +#229 := (and #206 #228) +#227 := (< #196 #216) +#230 := (and #227 #229) +#231 := (exists (vars (?x76 T2)) #230) +#225 := (< #196 uf_9) +#226 := (and #70 #225) +#232 := (implies #226 #231) +#233 := (forall (vars (?x75 T2)) #232) +#235 := (implies #233 #234) +#236 := (and #233 #235) +#222 := (<= #216 #221) +#89 := (< #88 uf_9) +#220 := (and #206 #89) +#223 := (implies #220 #222) +#224 := (forall (vars (?x71 T2) (?x72 T2)) #223) +#237 := (implies #224 #236) +#238 := (and #224 #237) +#217 := (<= #216 #196) +#218 := (implies #215 #217) +#219 := (forall (vars (?x67 T2) (?x68 T2)) #218) +#239 := (implies #219 #238) +#240 := (and #219 #239) +#211 := (<= 0::int #196) +#212 := (forall (vars (?x65 T2)) #211) +#241 := (implies #212 #240) +#242 := (and #212 #241) +#243 := (implies #210 #242) +#244 := (and #210 #243) +#245 := (implies true #244) +#246 := (implies true #245) +#201 := (= #196 #107) +#207 := (implies #206 #201) +#208 := (forall (vars (?x63 T2)) #207) +#247 := (implies #208 #246) +#248 := (and #208 #247) +#204 := (<= #196 #107) +#205 := (forall (vars (?x61 T2)) #204) +#249 := (implies #205 #248) +#250 := (and #205 #249) +#193 := (+ #182 #191) +#194 := (< #193 #107) +#192 := (< #191 uf_9) +#195 := (and #192 #194) +#200 := (not #195) +#202 := (implies #200 #201) +#203 := (forall (vars (?x60 T2)) #202) +#251 := (implies #203 #250) +#197 := (= #196 #193) +#198 := (implies #195 #197) +#199 := (forall (vars (?x59 T2)) #198) +#252 := (implies #199 #251) +#253 := (implies #189 #252) +#184 := (<= #182 #107) +#185 := (implies #112 #184) +#186 := (forall (vars (?x58 T2)) #185) +#254 := (implies #186 #253) +#183 := (< #182 uf_9) +#255 := (implies #183 #254) +#181 := (not #180) +#256 := (implies #181 #255) +#124 := (< #107 uf_9) +#133 := (and #112 #124) +#134 := (exists (vars (?x48 T2)) #133) +#257 := (implies #134 #256) +#258 := (implies true #257) +#259 := (implies true #258) +#163 := (implies #162 true) +#164 := (and #162 #163) +#151 := (+ #146 #88) +#158 := (<= #149 #151) +#147 := (< #146 uf_9) +#157 := (and #147 #89) +#159 := (implies #157 #158) +#160 := (forall (vars (?x53 T2) (?x54 T2)) #159) +#165 := (implies #160 #164) +#166 := (and #160 #165) +#152 := (= #149 #151) +#150 := (< #146 #149) +#153 := (and #150 #152) +#154 := (exists (vars (?x50 T2)) #153) +#148 := (and #70 #147) +#155 := (implies #148 #154) +#156 := (forall (vars (?x49 T2)) #155) +#167 := (implies #156 #166) +#168 := (and #156 #167) +#169 := (implies true #168) +#170 := (implies #145 #169) +#142 := (= uf_19 uf_14) +#171 := (implies #142 #170) +#172 := (implies #140 #171) +#137 := (= uf_16 uf_15) +#173 := (implies #137 #172) +#174 := (implies true #173) +#175 := (implies true #174) +#135 := (not #134) +#176 := (implies #135 #175) +#177 := (implies true #176) +#178 := (implies true #177) +#260 := (and #178 #259) +#261 := (implies true #260) +#120 := (+ #107 #88) +#127 := (= #115 #120) +#128 := (and #111 #127) +#126 := (< #107 #115) +#129 := (and #126 #128) +#130 := (exists (vars (?x47 T2)) #129) +#125 := (and #70 #124) +#131 := (implies #125 #130) +#132 := (forall (vars (?x46 T2)) #131) +#262 := (implies #132 #261) +#121 := (<= #115 #120) +#119 := (and #111 #89) +#122 := (implies #119 #121) +#123 := (forall (vars (?x44 T2) (?x45 T2)) #122) +#263 := (implies #123 #262) +#116 := (<= #115 #107) +#117 := (implies #114 #116) +#118 := (forall (vars (?x42 T2) (?x43 T2)) #117) +#264 := (implies #118 #263) +#108 := (<= 0::int #107) +#109 := (forall (vars (?x41 T2)) #108) +#265 := (implies #109 #264) +#266 := (implies #106 #265) +#267 := (implies true #266) +#268 := (implies true #267) +#91 := (+ #66 #88) +#98 := (= #83 #91) +#99 := (and #74 #98) +#97 := (< #66 #83) +#100 := (and #97 #99) +#101 := (exists (vars (?x38 T2)) #100) +#95 := (< #66 uf_9) +#96 := (and #70 #95) +#102 := (implies #96 #101) +#103 := (forall (vars (?x37 T2)) #102) +#269 := (implies #103 #268) +#270 := (and #103 #269) +#92 := (<= #83 #91) +#90 := (and #74 #89) +#93 := (implies #90 #92) +#94 := (forall (vars (?x33 T2) (?x34 T2)) #93) +#271 := (implies #94 #270) +#272 := (and #94 #271) +#84 := (<= #83 #66) +#85 := (implies #82 #84) +#86 := (forall (vars (?x29 T2) (?x30 T2)) #85) +#273 := (implies #86 #272) +#274 := (and #86 #273) +#79 := (<= 0::int #66) +#80 := (forall (vars (?x27 T2)) #79) +#275 := (implies #80 #274) +#276 := (and #80 #275) +#277 := (implies #78 #276) +#278 := (and #78 #277) +#279 := (implies true #278) +#280 := (implies #76 #279) +#71 := (= #66 uf_9) +#72 := (implies #70 #71) +#73 := (forall (vars (?x25 T2)) #72) +#281 := (implies #73 #280) +#68 := (implies #65 #67) +#69 := (forall (vars (?x24 T2)) #68) +#282 := (implies #69 #281) +#283 := (implies true #282) +#284 := (implies true #283) +#285 := (not #284) +#1720 := (iff #285 #1717) +#726 := (+ #88 #196) +#744 := (= #216 #726) +#747 := (and #206 #744) +#750 := (and #227 #747) +#753 := (exists (vars (?x76 T2)) #750) +#759 := (not #226) +#760 := (or #759 #753) +#765 := (forall (vars (?x75 T2)) #760) +#729 := (<= #216 #726) +#723 := (and #89 #206) +#735 := (not #723) +#736 := (or #735 #729) +#741 := (forall (vars (?x71 T2) (?x72 T2)) #736) +#787 := (not #741) +#788 := (or #787 #765) +#793 := (and #741 #788) +#717 := (or #716 #217) +#720 := (forall (vars (?x67 T2) (?x68 T2)) #717) +#799 := (not #720) +#800 := (or #799 #793) +#805 := (and #720 #800) +#811 := (not #212) +#812 := (or #811 #805) +#817 := (and #212 #812) +#713 := (= 0::int #209) +#823 := (not #713) +#824 := (or #823 #817) +#829 := (and #713 #824) +#847 := (or #846 #829) +#852 := (and #710 #847) +#858 := (not #205) +#859 := (or #858 #852) +#864 := (and #205 #859) +#694 := (or #195 #688) +#699 := (forall (vars (?x60 T2)) #694) +#870 := (not #699) +#871 := (or #870 #864) +#674 := (= #193 #196) +#680 := (or #200 #674) +#685 := (forall (vars (?x59 T2)) #680) +#879 := (not #685) +#880 := (or #879 #871) +#889 := (or #888 #880) +#668 := (or #111 #184) +#671 := (forall (vars (?x58 T2)) #668) +#897 := (not #671) +#898 := (or #897 #889) +#906 := (not #183) +#907 := (or #906 #898) +#915 := (or #180 #907) +#923 := (or #135 #915) +#554 := (= 0::int #161) +#512 := (+ #88 #146) +#539 := (<= #149 #512) +#536 := (and #89 #147) +#545 := (not #536) +#546 := (or #545 #539) +#551 := (forall (vars (?x53 T2) (?x54 T2)) #546) +#574 := (not #551) +#575 := (or #574 #554) +#580 := (and #551 #575) +#515 := (= #149 #512) +#518 := (and #150 #515) +#521 := (exists (vars (?x50 T2)) #518) +#527 := (not #148) +#528 := (or #527 #521) +#533 := (forall (vars (?x49 T2)) #528) +#586 := (not #533) +#587 := (or #586 #580) +#592 := (and #533 #587) +#606 := (or #605 #592) +#615 := (or #614 #606) +#624 := (or #623 #615) +#633 := (or #632 #624) +#652 := (or #134 #633) +#939 := (and #652 #923) +#464 := (+ #88 #107) +#482 := (= #115 #464) +#485 := (and #111 #482) +#488 := (and #126 #485) +#491 := (exists (vars (?x47 T2)) #488) +#497 := (not #125) +#498 := (or #497 #491) +#503 := (forall (vars (?x46 T2)) #498) +#952 := (not #503) +#953 := (or #952 #939) +#467 := (<= #115 #464) +#461 := (and #89 #111) +#473 := (not #461) +#474 := (or #473 #467) +#479 := (forall (vars (?x44 T2) (?x45 T2)) #474) +#961 := (not #479) +#962 := (or #961 #953) +#455 := (or #454 #116) +#458 := (forall (vars (?x42 T2) (?x43 T2)) #455) +#970 := (not #458) +#971 := (or #970 #962) +#979 := (not #109) +#980 := (or #979 #971) +#451 := (= 0::int #105) +#988 := (not #451) +#989 := (or #988 #980) +#444 := (not #96) +#445 := (or #444 #101) +#448 := (forall (vars (?x37 T2)) #445) +#1008 := (not #448) +#1009 := (or #1008 #989) +#1014 := (and #448 #1009) +#437 := (not #90) +#438 := (or #437 #92) +#441 := (forall (vars (?x33 T2) (?x34 T2)) #438) +#1020 := (not #441) +#1021 := (or #1020 #1014) +#1026 := (and #441 #1021) +#431 := (or #430 #84) +#434 := (forall (vars (?x29 T2) (?x30 T2)) #431) +#1032 := (not #434) +#1033 := (or #1032 #1026) +#1038 := (and #434 #1033) +#1044 := (not #80) +#1045 := (or #1044 #1038) +#1050 := (and #80 #1045) +#427 := (= 0::int #77) +#1056 := (not #427) +#1057 := (or #1056 #1050) +#1062 := (and #427 #1057) +#1076 := (or #1075 #1062) +#1085 := (or #1084 #1076) +#399 := (= 0::int #66) +#405 := (or #70 #399) +#410 := (forall (vars (?x24 T2)) #405) +#1093 := (not #410) +#1094 := (or #1093 #1085) +#1110 := (not #1094) +#1718 := (iff #1110 #1717) +#1715 := (iff #1094 #1712) +#1703 := (or #1075 #1689) +#1706 := (or #1084 #1703) +#1709 := (or #1700 #1706) +#1713 := (iff #1709 #1712) +#1714 := [rewrite]: #1713 +#1710 := (iff #1094 #1709) +#1707 := (iff #1085 #1706) +#1704 := (iff #1076 #1703) +#1690 := (iff #1062 #1689) +#1687 := (iff #1057 #1686) +#1684 := (iff #1050 #1683) +#1681 := (iff #1045 #1680) +#1678 := (iff #1038 #1677) +#1675 := (iff #1033 #1674) +#1672 := (iff #1026 #1671) +#1669 := (iff #1021 #1668) +#1666 := (iff #1014 #1665) +#1663 := (iff #1009 #1660) +#1642 := (or #1248 #1588) +#1645 := (or #1611 #1642) +#1648 := (or #1622 #1645) +#1651 := (or #1631 #1648) +#1654 := (or #1636 #1651) +#1657 := (or #1639 #1654) +#1661 := (iff #1657 #1660) +#1662 := [rewrite]: #1661 +#1658 := (iff #1009 #1657) +#1655 := (iff #989 #1654) +#1652 := (iff #980 #1651) +#1649 := (iff #971 #1648) +#1646 := (iff #962 #1645) +#1643 := (iff #953 #1642) +#1589 := (iff #939 #1588) +#1586 := (iff #923 #1583) +#1562 := (or #1378 #1514) +#1565 := (or #1531 #1562) +#1568 := (or #888 #1565) +#1571 := (or #1544 #1568) +#1574 := (or #1548 #1571) +#1577 := (or #180 #1574) +#1580 := (or #1559 #1577) +#1584 := (iff #1580 #1583) +#1585 := [rewrite]: #1584 +#1581 := (iff #923 #1580) +#1578 := (iff #915 #1577) +#1575 := (iff #907 #1574) +#1572 := (iff #898 #1571) +#1569 := (iff #889 #1568) +#1566 := (iff #880 #1565) +#1563 := (iff #871 #1562) +#1515 := (iff #864 #1514) +#1512 := (iff #859 #1511) +#1509 := (iff #852 #1508) +#1506 := (iff #847 #1505) +#1503 := (iff #829 #1502) +#1500 := (iff #824 #1499) +#1497 := (iff #817 #1496) +#1494 := (iff #812 #1493) +#1491 := (iff #805 #1490) +#1488 := (iff #800 #1487) +#1485 := (iff #793 #1484) +#1482 := (iff #788 #1481) +#1479 := (iff #765 #1478) +#1476 := (iff #760 #1475) +#1473 := (iff #753 #1472) +#1470 := (iff #750 #1467) +#1461 := (and #206 #1455) +#1464 := (and #1458 #1461) +#1468 := (iff #1464 #1467) +#1469 := [rewrite]: #1468 +#1465 := (iff #750 #1464) +#1462 := (iff #747 #1461) +#1456 := (iff #744 #1455) +#1457 := [rewrite]: #1456 +#1463 := [monotonicity #1457]: #1462 +#1459 := (iff #227 #1458) +#1460 := [rewrite]: #1459 +#1466 := [monotonicity #1460 #1463]: #1465 +#1471 := [trans #1466 #1469]: #1470 +#1474 := [quant-intro #1471]: #1473 +#1453 := (iff #759 #1452) +#1450 := (iff #226 #1449) +#1447 := (iff #225 #1446) +#1448 := [rewrite]: #1447 +#1451 := [monotonicity #1448]: #1450 +#1454 := [monotonicity #1451]: #1453 +#1477 := [monotonicity #1454 #1474]: #1476 +#1480 := [quant-intro #1477]: #1479 +#1442 := (iff #787 #1441) +#1439 := (iff #741 #1438) +#1436 := (iff #736 #1435) +#1432 := (iff #729 #1431) +#1434 := [rewrite]: #1432 +#1429 := (iff #735 #1428) +#1426 := (iff #723 #1423) +#1420 := (and #1145 #206) +#1424 := (iff #1420 #1423) +#1425 := [rewrite]: #1424 +#1421 := (iff #723 #1420) +#1146 := (iff #89 #1145) +#1147 := [rewrite]: #1146 +#1422 := [monotonicity #1147]: #1421 +#1427 := [trans #1422 #1425]: #1426 +#1430 := [monotonicity #1427]: #1429 +#1437 := [monotonicity #1430 #1434]: #1436 +#1440 := [quant-intro #1437]: #1439 +#1443 := [monotonicity #1440]: #1442 +#1483 := [monotonicity #1443 #1480]: #1482 +#1486 := [monotonicity #1440 #1483]: #1485 +#1418 := (iff #799 #1417) +#1415 := (iff #720 #1414) +#1412 := (iff #717 #1411) +#1409 := (iff #217 #1406) +#1410 := [rewrite]: #1409 +#1413 := [monotonicity #1410]: #1412 +#1416 := [quant-intro #1413]: #1415 +#1419 := [monotonicity #1416]: #1418 +#1489 := [monotonicity #1419 #1486]: #1488 +#1492 := [monotonicity #1416 #1489]: #1491 +#1404 := (iff #811 #1403) +#1401 := (iff #212 #1400) +#1398 := (iff #211 #1397) +#1399 := [rewrite]: #1398 +#1402 := [quant-intro #1399]: #1401 +#1405 := [monotonicity #1402]: #1404 +#1495 := [monotonicity #1405 #1492]: #1494 +#1498 := [monotonicity #1402 #1495]: #1497 +#1395 := (iff #823 #1394) +#1392 := (iff #713 #210) +#1393 := [rewrite]: #1392 +#1396 := [monotonicity #1393]: #1395 +#1501 := [monotonicity #1396 #1498]: #1500 +#1504 := [monotonicity #1393 #1501]: #1503 +#1507 := [monotonicity #1504]: #1506 +#1510 := [monotonicity #1507]: #1509 +#1390 := (iff #858 #1389) +#1387 := (iff #205 #1386) +#1384 := (iff #204 #1381) +#1385 := [rewrite]: #1384 +#1388 := [quant-intro #1385]: #1387 +#1391 := [monotonicity #1388]: #1390 +#1513 := [monotonicity #1391 #1510]: #1512 +#1516 := [monotonicity #1388 #1513]: #1515 +#1379 := (iff #870 #1378) +#1376 := (iff #699 #1375) +#1373 := (iff #694 #1370) +#1367 := (or #1364 #688) +#1371 := (iff #1367 #1370) +#1372 := [rewrite]: #1371 +#1368 := (iff #694 #1367) +#1365 := (iff #195 #1364) +#1362 := (iff #194 #1361) +#1363 := [rewrite]: #1362 +#1355 := (iff #192 #1354) +#1356 := [rewrite]: #1355 +#1366 := [monotonicity #1356 #1363]: #1365 +#1369 := [monotonicity #1366]: #1368 +#1374 := [trans #1369 #1372]: #1373 +#1377 := [quant-intro #1374]: #1376 +#1380 := [monotonicity #1377]: #1379 +#1564 := [monotonicity #1380 #1516]: #1563 +#1532 := (iff #879 #1531) +#1529 := (iff #685 #1528) +#1526 := (iff #680 #1525) +#1523 := (iff #674 #1522) +#1524 := [rewrite]: #1523 +#1518 := (iff #200 #1517) +#1519 := [monotonicity #1366]: #1518 +#1527 := [monotonicity #1519 #1524]: #1526 +#1530 := [quant-intro #1527]: #1529 +#1533 := [monotonicity #1530]: #1532 +#1567 := [monotonicity #1533 #1564]: #1566 +#1570 := [monotonicity #1567]: #1569 +#1545 := (iff #897 #1544) +#1542 := (iff #671 #1541) +#1539 := (iff #668 #1538) +#1536 := (iff #184 #1534) +#1537 := [rewrite]: #1536 +#1540 := [monotonicity #1537]: #1539 +#1543 := [quant-intro #1540]: #1542 +#1546 := [monotonicity #1543]: #1545 +#1573 := [monotonicity #1546 #1570]: #1572 +#1557 := (iff #906 #1548) +#1549 := (not #1548) +#1552 := (not #1549) +#1555 := (iff #1552 #1548) +#1556 := [rewrite]: #1555 +#1553 := (iff #906 #1552) +#1550 := (iff #183 #1549) +#1551 := [rewrite]: #1550 +#1554 := [monotonicity #1551]: #1553 +#1558 := [trans #1554 #1556]: #1557 +#1576 := [monotonicity #1558 #1573]: #1575 +#1579 := [monotonicity #1576]: #1578 +#1560 := (iff #135 #1559) +#1329 := (iff #134 #1328) +#1326 := (iff #133 #1325) +#1210 := (iff #124 #1209) +#1211 := [rewrite]: #1210 +#1327 := [monotonicity #1211]: #1326 +#1330 := [quant-intro #1327]: #1329 +#1561 := [monotonicity #1330]: #1560 +#1582 := [monotonicity #1561 #1579]: #1581 +#1587 := [trans #1582 #1585]: #1586 +#1349 := (iff #652 #1346) +#1331 := (or #605 #1322) +#1334 := (or #614 #1331) +#1337 := (or #623 #1334) +#1340 := (or #632 #1337) +#1343 := (or #1328 #1340) +#1347 := (iff #1343 #1346) +#1348 := [rewrite]: #1347 +#1344 := (iff #652 #1343) +#1341 := (iff #633 #1340) +#1338 := (iff #624 #1337) +#1335 := (iff #615 #1334) +#1332 := (iff #606 #1331) +#1323 := (iff #592 #1322) +#1320 := (iff #587 #1319) +#1317 := (iff #580 #1316) +#1314 := (iff #575 #1311) +#1308 := (or #1303 #162) +#1312 := (iff #1308 #1311) +#1313 := [rewrite]: #1312 +#1309 := (iff #575 #1308) +#1306 := (iff #554 #162) +#1307 := [rewrite]: #1306 +#1304 := (iff #574 #1303) +#1301 := (iff #551 #1300) +#1298 := (iff #546 #1297) +#1295 := (iff #539 #1294) +#1296 := [rewrite]: #1295 +#1292 := (iff #545 #1291) +#1289 := (iff #536 #1288) +#1255 := (iff #147 #1254) +#1256 := [rewrite]: #1255 +#1290 := [monotonicity #1147 #1256]: #1289 +#1293 := [monotonicity #1290]: #1292 +#1299 := [monotonicity #1293 #1296]: #1298 +#1302 := [quant-intro #1299]: #1301 +#1305 := [monotonicity #1302]: #1304 +#1310 := [monotonicity #1305 #1307]: #1309 +#1315 := [trans #1310 #1313]: #1314 +#1318 := [monotonicity #1302 #1315]: #1317 +#1286 := (iff #586 #1285) +#1283 := (iff #533 #1282) +#1280 := (iff #528 #1279) +#1277 := (iff #521 #1276) +#1274 := (iff #518 #1273) +#1270 := (iff #515 #1269) +#1272 := [rewrite]: #1270 +#1267 := (iff #150 #1266) +#1268 := [rewrite]: #1267 +#1275 := [monotonicity #1268 #1272]: #1274 +#1278 := [quant-intro #1275]: #1277 +#1261 := (iff #527 #1260) +#1258 := (iff #148 #1257) +#1259 := [monotonicity #1256]: #1258 +#1262 := [monotonicity #1259]: #1261 +#1281 := [monotonicity #1262 #1278]: #1280 +#1284 := [quant-intro #1281]: #1283 +#1287 := [monotonicity #1284]: #1286 +#1321 := [monotonicity #1287 #1318]: #1320 +#1324 := [monotonicity #1284 #1321]: #1323 +#1333 := [monotonicity #1324]: #1332 +#1336 := [monotonicity #1333]: #1335 +#1339 := [monotonicity #1336]: #1338 +#1342 := [monotonicity #1339]: #1341 +#1345 := [monotonicity #1330 #1342]: #1344 +#1350 := [trans #1345 #1348]: #1349 +#1590 := [monotonicity #1350 #1587]: #1589 +#1249 := (iff #952 #1248) +#1246 := (iff #503 #1245) +#1243 := (iff #498 #1242) +#1240 := (iff #491 #1239) +#1237 := (iff #488 #1234) +#1228 := (and #111 #1218) +#1231 := (and #1225 #1228) +#1235 := (iff #1231 #1234) +#1236 := [rewrite]: #1235 +#1232 := (iff #488 #1231) +#1229 := (iff #485 #1228) +#1219 := (iff #482 #1218) +#1223 := [rewrite]: #1219 +#1230 := [monotonicity #1223]: #1229 +#1226 := (iff #126 #1225) +#1227 := [rewrite]: #1226 +#1233 := [monotonicity #1227 #1230]: #1232 +#1238 := [trans #1233 #1236]: #1237 +#1241 := [quant-intro #1238]: #1240 +#1216 := (iff #497 #1215) +#1213 := (iff #125 #1212) +#1214 := [monotonicity #1211]: #1213 +#1217 := [monotonicity #1214]: #1216 +#1244 := [monotonicity #1217 #1241]: #1243 +#1247 := [quant-intro #1244]: #1246 +#1250 := [monotonicity #1247]: #1249 +#1644 := [monotonicity #1250 #1590]: #1643 +#1612 := (iff #961 #1611) +#1609 := (iff #479 #1608) +#1606 := (iff #474 #1605) +#1603 := (iff #467 #1602) +#1604 := [rewrite]: #1603 +#1600 := (iff #473 #1599) +#1597 := (iff #461 #1594) +#1591 := (and #1145 #111) +#1595 := (iff #1591 #1594) +#1596 := [rewrite]: #1595 +#1592 := (iff #461 #1591) +#1593 := [monotonicity #1147]: #1592 +#1598 := [trans #1593 #1596]: #1597 +#1601 := [monotonicity #1598]: #1600 +#1607 := [monotonicity #1601 #1604]: #1606 +#1610 := [quant-intro #1607]: #1609 +#1613 := [monotonicity #1610]: #1612 +#1647 := [monotonicity #1613 #1644]: #1646 +#1623 := (iff #970 #1622) +#1620 := (iff #458 #1619) +#1617 := (iff #455 #1616) +#1614 := (iff #116 #1224) +#1615 := [rewrite]: #1614 +#1618 := [monotonicity #1615]: #1617 +#1621 := [quant-intro #1618]: #1620 +#1624 := [monotonicity #1621]: #1623 +#1650 := [monotonicity #1624 #1647]: #1649 +#1632 := (iff #979 #1631) +#1629 := (iff #109 #1628) +#1626 := (iff #108 #1625) +#1627 := [rewrite]: #1626 +#1630 := [quant-intro #1627]: #1629 +#1633 := [monotonicity #1630]: #1632 +#1653 := [monotonicity #1633 #1650]: #1652 +#1637 := (iff #988 #1636) +#1634 := (iff #451 #106) +#1635 := [rewrite]: #1634 +#1638 := [monotonicity #1635]: #1637 +#1656 := [monotonicity #1638 #1653]: #1655 +#1640 := (iff #1008 #1639) +#1204 := (iff #448 #1203) +#1201 := (iff #445 #1200) +#1198 := (iff #101 #1197) +#1195 := (iff #100 #1192) +#1186 := (and #74 #1180) +#1189 := (and #1183 #1186) +#1193 := (iff #1189 #1192) +#1194 := [rewrite]: #1193 +#1190 := (iff #100 #1189) +#1187 := (iff #99 #1186) +#1181 := (iff #98 #1180) +#1182 := [rewrite]: #1181 +#1188 := [monotonicity #1182]: #1187 +#1184 := (iff #97 #1183) +#1185 := [rewrite]: #1184 +#1191 := [monotonicity #1185 #1188]: #1190 +#1196 := [trans #1191 #1194]: #1195 +#1199 := [quant-intro #1196]: #1198 +#1178 := (iff #444 #1177) +#1175 := (iff #96 #1174) +#1172 := (iff #95 #1171) +#1173 := [rewrite]: #1172 +#1176 := [monotonicity #1173]: #1175 +#1179 := [monotonicity #1176]: #1178 +#1202 := [monotonicity #1179 #1199]: #1201 +#1205 := [quant-intro #1202]: #1204 +#1641 := [monotonicity #1205]: #1640 +#1659 := [monotonicity #1641 #1656]: #1658 +#1664 := [trans #1659 #1662]: #1663 +#1667 := [monotonicity #1205 #1664]: #1666 +#1166 := (iff #1020 #1165) +#1163 := (iff #441 #1162) +#1160 := (iff #438 #1159) +#1154 := (iff #92 #1155) +#1156 := [rewrite]: #1154 +#1152 := (iff #437 #1151) +#1149 := (iff #90 #1148) +#1150 := [monotonicity #1147]: #1149 +#1153 := [monotonicity #1150]: #1152 +#1161 := [monotonicity #1153 #1156]: #1160 +#1164 := [quant-intro #1161]: #1163 +#1167 := [monotonicity #1164]: #1166 +#1670 := [monotonicity #1167 #1667]: #1669 +#1673 := [monotonicity #1164 #1670]: #1672 +#1140 := (iff #1032 #1139) +#1137 := (iff #434 #1136) +#1134 := (iff #431 #1133) +#1128 := (iff #84 #1129) +#1132 := [rewrite]: #1128 +#1135 := [monotonicity #1132]: #1134 +#1138 := [quant-intro #1135]: #1137 +#1141 := [monotonicity #1138]: #1140 +#1676 := [monotonicity #1141 #1673]: #1675 +#1679 := [monotonicity #1138 #1676]: #1678 +#1125 := (iff #1044 #1124) +#1122 := (iff #80 #1121) +#1118 := (iff #79 #1120) +#1119 := [rewrite]: #1118 +#1123 := [quant-intro #1119]: #1122 +#1126 := [monotonicity #1123]: #1125 +#1682 := [monotonicity #1126 #1679]: #1681 +#1685 := [monotonicity #1123 #1682]: #1684 +#1116 := (iff #1056 #1115) +#1113 := (iff #427 #78) +#1114 := [rewrite]: #1113 +#1117 := [monotonicity #1114]: #1116 +#1688 := [monotonicity #1117 #1685]: #1687 +#1691 := [monotonicity #1114 #1688]: #1690 +#1705 := [monotonicity #1691]: #1704 +#1708 := [monotonicity #1705]: #1707 +#1701 := (iff #1093 #1700) +#1698 := (iff #410 #1697) +#1695 := (iff #405 #1694) +#1692 := (iff #399 #67) +#1693 := [rewrite]: #1692 +#1696 := [monotonicity #1693]: #1695 +#1699 := [quant-intro #1696]: #1698 +#1702 := [monotonicity #1699]: #1701 +#1711 := [monotonicity #1702 #1708]: #1710 +#1716 := [trans #1711 #1714]: #1715 +#1719 := [monotonicity #1716]: #1718 +#1111 := (iff #285 #1110) +#1108 := (iff #284 #1094) +#1099 := (implies true #1094) +#1102 := (iff #1099 #1094) +#1103 := [rewrite]: #1102 +#1106 := (iff #284 #1099) +#1104 := (iff #283 #1094) +#1100 := (iff #283 #1099) +#1097 := (iff #282 #1094) +#1090 := (implies #410 #1085) +#1095 := (iff #1090 #1094) +#1096 := [rewrite]: #1095 +#1091 := (iff #282 #1090) +#1088 := (iff #281 #1085) +#1081 := (implies #424 #1076) +#1086 := (iff #1081 #1085) +#1087 := [rewrite]: #1086 +#1082 := (iff #281 #1081) +#1079 := (iff #280 #1076) +#1072 := (implies #76 #1062) +#1077 := (iff #1072 #1076) +#1078 := [rewrite]: #1077 +#1073 := (iff #280 #1072) +#1070 := (iff #279 #1062) +#1065 := (implies true #1062) +#1068 := (iff #1065 #1062) +#1069 := [rewrite]: #1068 +#1066 := (iff #279 #1065) +#1063 := (iff #278 #1062) +#1060 := (iff #277 #1057) +#1053 := (implies #427 #1050) +#1058 := (iff #1053 #1057) +#1059 := [rewrite]: #1058 +#1054 := (iff #277 #1053) +#1051 := (iff #276 #1050) +#1048 := (iff #275 #1045) +#1041 := (implies #80 #1038) +#1046 := (iff #1041 #1045) +#1047 := [rewrite]: #1046 +#1042 := (iff #275 #1041) +#1039 := (iff #274 #1038) +#1036 := (iff #273 #1033) +#1029 := (implies #434 #1026) +#1034 := (iff #1029 #1033) +#1035 := [rewrite]: #1034 +#1030 := (iff #273 #1029) +#1027 := (iff #272 #1026) +#1024 := (iff #271 #1021) +#1017 := (implies #441 #1014) +#1022 := (iff #1017 #1021) +#1023 := [rewrite]: #1022 +#1018 := (iff #271 #1017) +#1015 := (iff #270 #1014) +#1012 := (iff #269 #1009) +#1005 := (implies #448 #989) +#1010 := (iff #1005 #1009) +#1011 := [rewrite]: #1010 +#1006 := (iff #269 #1005) +#1003 := (iff #268 #989) +#994 := (implies true #989) +#997 := (iff #994 #989) +#998 := [rewrite]: #997 +#1001 := (iff #268 #994) +#999 := (iff #267 #989) +#995 := (iff #267 #994) +#992 := (iff #266 #989) +#985 := (implies #451 #980) +#990 := (iff #985 #989) +#991 := [rewrite]: #990 +#986 := (iff #266 #985) +#983 := (iff #265 #980) +#976 := (implies #109 #971) +#981 := (iff #976 #980) +#982 := [rewrite]: #981 +#977 := (iff #265 #976) +#974 := (iff #264 #971) +#967 := (implies #458 #962) +#972 := (iff #967 #971) +#973 := [rewrite]: #972 +#968 := (iff #264 #967) +#965 := (iff #263 #962) +#958 := (implies #479 #953) +#963 := (iff #958 #962) +#964 := [rewrite]: #963 +#959 := (iff #263 #958) +#956 := (iff #262 #953) +#949 := (implies #503 #939) +#954 := (iff #949 #953) +#955 := [rewrite]: #954 +#950 := (iff #262 #949) +#947 := (iff #261 #939) +#942 := (implies true #939) +#945 := (iff #942 #939) +#946 := [rewrite]: #945 +#943 := (iff #261 #942) +#940 := (iff #260 #939) +#937 := (iff #259 #923) +#928 := (implies true #923) +#931 := (iff #928 #923) +#932 := [rewrite]: #931 +#935 := (iff #259 #928) +#933 := (iff #258 #923) +#929 := (iff #258 #928) +#926 := (iff #257 #923) +#920 := (implies #134 #915) +#924 := (iff #920 #923) +#925 := [rewrite]: #924 +#921 := (iff #257 #920) +#918 := (iff #256 #915) +#912 := (implies #181 #907) +#916 := (iff #912 #915) +#917 := [rewrite]: #916 +#913 := (iff #256 #912) +#910 := (iff #255 #907) +#903 := (implies #183 #898) +#908 := (iff #903 #907) +#909 := [rewrite]: #908 +#904 := (iff #255 #903) +#901 := (iff #254 #898) +#894 := (implies #671 #889) +#899 := (iff #894 #898) +#900 := [rewrite]: #899 +#895 := (iff #254 #894) +#892 := (iff #253 #889) +#885 := (implies #189 #880) +#890 := (iff #885 #889) +#891 := [rewrite]: #890 +#886 := (iff #253 #885) +#883 := (iff #252 #880) +#876 := (implies #685 #871) +#881 := (iff #876 #880) +#882 := [rewrite]: #881 +#877 := (iff #252 #876) +#874 := (iff #251 #871) +#867 := (implies #699 #864) +#872 := (iff #867 #871) +#873 := [rewrite]: #872 +#868 := (iff #251 #867) +#865 := (iff #250 #864) +#862 := (iff #249 #859) +#855 := (implies #205 #852) +#860 := (iff #855 #859) +#861 := [rewrite]: #860 +#856 := (iff #249 #855) +#853 := (iff #248 #852) +#850 := (iff #247 #847) +#843 := (implies #710 #829) +#848 := (iff #843 #847) +#849 := [rewrite]: #848 +#844 := (iff #247 #843) +#841 := (iff #246 #829) +#832 := (implies true #829) +#835 := (iff #832 #829) +#836 := [rewrite]: #835 +#839 := (iff #246 #832) +#837 := (iff #245 #829) +#833 := (iff #245 #832) +#830 := (iff #244 #829) +#827 := (iff #243 #824) +#820 := (implies #713 #817) +#825 := (iff #820 #824) +#826 := [rewrite]: #825 +#821 := (iff #243 #820) +#818 := (iff #242 #817) +#815 := (iff #241 #812) +#808 := (implies #212 #805) +#813 := (iff #808 #812) +#814 := [rewrite]: #813 +#809 := (iff #241 #808) +#806 := (iff #240 #805) +#803 := (iff #239 #800) +#796 := (implies #720 #793) +#801 := (iff #796 #800) +#802 := [rewrite]: #801 +#797 := (iff #239 #796) +#794 := (iff #238 #793) +#791 := (iff #237 #788) +#784 := (implies #741 #765) +#789 := (iff #784 #788) +#790 := [rewrite]: #789 +#785 := (iff #237 #784) +#782 := (iff #236 #765) +#777 := (and #765 true) +#780 := (iff #777 #765) +#781 := [rewrite]: #780 +#778 := (iff #236 #777) +#775 := (iff #235 true) +#770 := (implies #765 true) +#773 := (iff #770 true) +#774 := [rewrite]: #773 +#771 := (iff #235 #770) +#768 := (iff #234 true) +#769 := [rewrite]: #768 +#766 := (iff #233 #765) +#763 := (iff #232 #760) +#756 := (implies #226 #753) +#761 := (iff #756 #760) +#762 := [rewrite]: #761 +#757 := (iff #232 #756) +#754 := (iff #231 #753) +#751 := (iff #230 #750) +#748 := (iff #229 #747) +#745 := (iff #228 #744) +#727 := (= #221 #726) +#728 := [rewrite]: #727 +#746 := [monotonicity #728]: #745 +#749 := [monotonicity #746]: #748 +#752 := [monotonicity #749]: #751 +#755 := [quant-intro #752]: #754 +#758 := [monotonicity #755]: #757 +#764 := [trans #758 #762]: #763 +#767 := [quant-intro #764]: #766 +#772 := [monotonicity #767 #769]: #771 +#776 := [trans #772 #774]: #775 +#779 := [monotonicity #767 #776]: #778 +#783 := [trans #779 #781]: #782 +#742 := (iff #224 #741) +#739 := (iff #223 #736) +#732 := (implies #723 #729) +#737 := (iff #732 #736) +#738 := [rewrite]: #737 +#733 := (iff #223 #732) +#730 := (iff #222 #729) +#731 := [monotonicity #728]: #730 +#724 := (iff #220 #723) +#725 := [rewrite]: #724 +#734 := [monotonicity #725 #731]: #733 +#740 := [trans #734 #738]: #739 +#743 := [quant-intro #740]: #742 +#786 := [monotonicity #743 #783]: #785 +#792 := [trans #786 #790]: #791 +#795 := [monotonicity #743 #792]: #794 +#721 := (iff #219 #720) +#718 := (iff #218 #717) +#719 := [rewrite]: #718 +#722 := [quant-intro #719]: #721 +#798 := [monotonicity #722 #795]: #797 +#804 := [trans #798 #802]: #803 +#807 := [monotonicity #722 #804]: #806 +#810 := [monotonicity #807]: #809 +#816 := [trans #810 #814]: #815 +#819 := [monotonicity #816]: #818 +#714 := (iff #210 #713) +#715 := [rewrite]: #714 +#822 := [monotonicity #715 #819]: #821 +#828 := [trans #822 #826]: #827 +#831 := [monotonicity #715 #828]: #830 +#834 := [monotonicity #831]: #833 +#838 := [trans #834 #836]: #837 +#840 := [monotonicity #838]: #839 +#842 := [trans #840 #836]: #841 +#711 := (iff #208 #710) +#708 := (iff #207 #705) +#702 := (implies #206 #688) +#706 := (iff #702 #705) +#707 := [rewrite]: #706 +#703 := (iff #207 #702) +#689 := (iff #201 #688) +#690 := [rewrite]: #689 +#704 := [monotonicity #690]: #703 +#709 := [trans #704 #707]: #708 +#712 := [quant-intro #709]: #711 +#845 := [monotonicity #712 #842]: #844 +#851 := [trans #845 #849]: #850 +#854 := [monotonicity #712 #851]: #853 +#857 := [monotonicity #854]: #856 +#863 := [trans #857 #861]: #862 +#866 := [monotonicity #863]: #865 +#700 := (iff #203 #699) +#697 := (iff #202 #694) +#691 := (implies #200 #688) +#695 := (iff #691 #694) +#696 := [rewrite]: #695 +#692 := (iff #202 #691) +#693 := [monotonicity #690]: #692 +#698 := [trans #693 #696]: #697 +#701 := [quant-intro #698]: #700 +#869 := [monotonicity #701 #866]: #868 +#875 := [trans #869 #873]: #874 +#686 := (iff #199 #685) +#683 := (iff #198 #680) +#677 := (implies #195 #674) +#681 := (iff #677 #680) +#682 := [rewrite]: #681 +#678 := (iff #198 #677) +#675 := (iff #197 #674) +#676 := [rewrite]: #675 +#679 := [monotonicity #676]: #678 +#684 := [trans #679 #682]: #683 +#687 := [quant-intro #684]: #686 +#878 := [monotonicity #687 #875]: #877 +#884 := [trans #878 #882]: #883 +#887 := [monotonicity #884]: #886 +#893 := [trans #887 #891]: #892 +#672 := (iff #186 #671) +#669 := (iff #185 #668) +#670 := [rewrite]: #669 +#673 := [quant-intro #670]: #672 +#896 := [monotonicity #673 #893]: #895 +#902 := [trans #896 #900]: #901 +#905 := [monotonicity #902]: #904 +#911 := [trans #905 #909]: #910 +#914 := [monotonicity #911]: #913 +#919 := [trans #914 #917]: #918 +#922 := [monotonicity #919]: #921 +#927 := [trans #922 #925]: #926 +#930 := [monotonicity #927]: #929 +#934 := [trans #930 #932]: #933 +#936 := [monotonicity #934]: #935 +#938 := [trans #936 #932]: #937 +#666 := (iff #178 #652) +#657 := (implies true #652) +#660 := (iff #657 #652) +#661 := [rewrite]: #660 +#664 := (iff #178 #657) +#662 := (iff #177 #652) +#658 := (iff #177 #657) +#655 := (iff #176 #652) +#649 := (implies #135 #633) +#653 := (iff #649 #652) +#654 := [rewrite]: #653 +#650 := (iff #176 #649) +#647 := (iff #175 #633) +#638 := (implies true #633) +#641 := (iff #638 #633) +#642 := [rewrite]: #641 +#645 := (iff #175 #638) +#643 := (iff #174 #633) +#639 := (iff #174 #638) +#636 := (iff #173 #633) +#629 := (implies #506 #624) +#634 := (iff #629 #633) +#635 := [rewrite]: #634 +#630 := (iff #173 #629) +#627 := (iff #172 #624) +#620 := (implies #140 #615) +#625 := (iff #620 #624) +#626 := [rewrite]: #625 +#621 := (iff #172 #620) +#618 := (iff #171 #615) +#611 := (implies #509 #606) +#616 := (iff #611 #615) +#617 := [rewrite]: #616 +#612 := (iff #171 #611) +#609 := (iff #170 #606) +#602 := (implies #145 #592) +#607 := (iff #602 #606) +#608 := [rewrite]: #607 +#603 := (iff #170 #602) +#600 := (iff #169 #592) +#595 := (implies true #592) +#598 := (iff #595 #592) +#599 := [rewrite]: #598 +#596 := (iff #169 #595) +#593 := (iff #168 #592) +#590 := (iff #167 #587) +#583 := (implies #533 #580) +#588 := (iff #583 #587) +#589 := [rewrite]: #588 +#584 := (iff #167 #583) +#581 := (iff #166 #580) +#578 := (iff #165 #575) +#571 := (implies #551 #554) +#576 := (iff #571 #575) +#577 := [rewrite]: #576 +#572 := (iff #165 #571) +#569 := (iff #164 #554) +#564 := (and #554 true) +#567 := (iff #564 #554) +#568 := [rewrite]: #567 +#565 := (iff #164 #564) +#562 := (iff #163 true) +#557 := (implies #554 true) +#560 := (iff #557 true) +#561 := [rewrite]: #560 +#558 := (iff #163 #557) +#555 := (iff #162 #554) +#556 := [rewrite]: #555 +#559 := [monotonicity #556]: #558 +#563 := [trans #559 #561]: #562 +#566 := [monotonicity #556 #563]: #565 +#570 := [trans #566 #568]: #569 +#552 := (iff #160 #551) +#549 := (iff #159 #546) +#542 := (implies #536 #539) +#547 := (iff #542 #546) +#548 := [rewrite]: #547 +#543 := (iff #159 #542) +#540 := (iff #158 #539) +#513 := (= #151 #512) +#514 := [rewrite]: #513 +#541 := [monotonicity #514]: #540 +#537 := (iff #157 #536) +#538 := [rewrite]: #537 +#544 := [monotonicity #538 #541]: #543 +#550 := [trans #544 #548]: #549 +#553 := [quant-intro #550]: #552 +#573 := [monotonicity #553 #570]: #572 +#579 := [trans #573 #577]: #578 +#582 := [monotonicity #553 #579]: #581 +#534 := (iff #156 #533) +#531 := (iff #155 #528) +#524 := (implies #148 #521) +#529 := (iff #524 #528) +#530 := [rewrite]: #529 +#525 := (iff #155 #524) +#522 := (iff #154 #521) +#519 := (iff #153 #518) +#516 := (iff #152 #515) +#517 := [monotonicity #514]: #516 +#520 := [monotonicity #517]: #519 +#523 := [quant-intro #520]: #522 +#526 := [monotonicity #523]: #525 +#532 := [trans #526 #530]: #531 +#535 := [quant-intro #532]: #534 +#585 := [monotonicity #535 #582]: #584 +#591 := [trans #585 #589]: #590 +#594 := [monotonicity #535 #591]: #593 +#597 := [monotonicity #594]: #596 +#601 := [trans #597 #599]: #600 +#604 := [monotonicity #601]: #603 +#610 := [trans #604 #608]: #609 +#510 := (iff #142 #509) +#511 := [rewrite]: #510 +#613 := [monotonicity #511 #610]: #612 +#619 := [trans #613 #617]: #618 +#622 := [monotonicity #619]: #621 +#628 := [trans #622 #626]: #627 +#507 := (iff #137 #506) +#508 := [rewrite]: #507 +#631 := [monotonicity #508 #628]: #630 +#637 := [trans #631 #635]: #636 +#640 := [monotonicity #637]: #639 +#644 := [trans #640 #642]: #643 +#646 := [monotonicity #644]: #645 +#648 := [trans #646 #642]: #647 +#651 := [monotonicity #648]: #650 +#656 := [trans #651 #654]: #655 +#659 := [monotonicity #656]: #658 +#663 := [trans #659 #661]: #662 +#665 := [monotonicity #663]: #664 +#667 := [trans #665 #661]: #666 +#941 := [monotonicity #667 #938]: #940 +#944 := [monotonicity #941]: #943 +#948 := [trans #944 #946]: #947 +#504 := (iff #132 #503) +#501 := (iff #131 #498) +#494 := (implies #125 #491) +#499 := (iff #494 #498) +#500 := [rewrite]: #499 +#495 := (iff #131 #494) +#492 := (iff #130 #491) +#489 := (iff #129 #488) +#486 := (iff #128 #485) +#483 := (iff #127 #482) +#465 := (= #120 #464) +#466 := [rewrite]: #465 +#484 := [monotonicity #466]: #483 +#487 := [monotonicity #484]: #486 +#490 := [monotonicity #487]: #489 +#493 := [quant-intro #490]: #492 +#496 := [monotonicity #493]: #495 +#502 := [trans #496 #500]: #501 +#505 := [quant-intro #502]: #504 +#951 := [monotonicity #505 #948]: #950 +#957 := [trans #951 #955]: #956 +#480 := (iff #123 #479) +#477 := (iff #122 #474) +#470 := (implies #461 #467) +#475 := (iff #470 #474) +#476 := [rewrite]: #475 +#471 := (iff #122 #470) +#468 := (iff #121 #467) +#469 := [monotonicity #466]: #468 +#462 := (iff #119 #461) +#463 := [rewrite]: #462 +#472 := [monotonicity #463 #469]: #471 +#478 := [trans #472 #476]: #477 +#481 := [quant-intro #478]: #480 +#960 := [monotonicity #481 #957]: #959 +#966 := [trans #960 #964]: #965 +#459 := (iff #118 #458) +#456 := (iff #117 #455) +#457 := [rewrite]: #456 +#460 := [quant-intro #457]: #459 +#969 := [monotonicity #460 #966]: #968 +#975 := [trans #969 #973]: #974 +#978 := [monotonicity #975]: #977 +#984 := [trans #978 #982]: #983 +#452 := (iff #106 #451) +#453 := [rewrite]: #452 +#987 := [monotonicity #453 #984]: #986 +#993 := [trans #987 #991]: #992 +#996 := [monotonicity #993]: #995 +#1000 := [trans #996 #998]: #999 +#1002 := [monotonicity #1000]: #1001 +#1004 := [trans #1002 #998]: #1003 +#449 := (iff #103 #448) +#446 := (iff #102 #445) +#447 := [rewrite]: #446 +#450 := [quant-intro #447]: #449 +#1007 := [monotonicity #450 #1004]: #1006 +#1013 := [trans #1007 #1011]: #1012 +#1016 := [monotonicity #450 #1013]: #1015 +#442 := (iff #94 #441) +#439 := (iff #93 #438) +#440 := [rewrite]: #439 +#443 := [quant-intro #440]: #442 +#1019 := [monotonicity #443 #1016]: #1018 +#1025 := [trans #1019 #1023]: #1024 +#1028 := [monotonicity #443 #1025]: #1027 +#435 := (iff #86 #434) +#432 := (iff #85 #431) +#433 := [rewrite]: #432 +#436 := [quant-intro #433]: #435 +#1031 := [monotonicity #436 #1028]: #1030 +#1037 := [trans #1031 #1035]: #1036 +#1040 := [monotonicity #436 #1037]: #1039 +#1043 := [monotonicity #1040]: #1042 +#1049 := [trans #1043 #1047]: #1048 +#1052 := [monotonicity #1049]: #1051 +#428 := (iff #78 #427) +#429 := [rewrite]: #428 +#1055 := [monotonicity #429 #1052]: #1054 +#1061 := [trans #1055 #1059]: #1060 +#1064 := [monotonicity #429 #1061]: #1063 +#1067 := [monotonicity #1064]: #1066 +#1071 := [trans #1067 #1069]: #1070 +#1074 := [monotonicity #1071]: #1073 +#1080 := [trans #1074 #1078]: #1079 +#425 := (iff #73 #424) +#422 := (iff #72 #419) +#416 := (implies #70 #413) +#420 := (iff #416 #419) +#421 := [rewrite]: #420 +#417 := (iff #72 #416) +#414 := (iff #71 #413) +#415 := [rewrite]: #414 +#418 := [monotonicity #415]: #417 +#423 := [trans #418 #421]: #422 +#426 := [quant-intro #423]: #425 +#1083 := [monotonicity #426 #1080]: #1082 +#1089 := [trans #1083 #1087]: #1088 +#411 := (iff #69 #410) +#408 := (iff #68 #405) +#402 := (implies #65 #399) +#406 := (iff #402 #405) +#407 := [rewrite]: #406 +#403 := (iff #68 #402) +#400 := (iff #67 #399) +#401 := [rewrite]: #400 +#404 := [monotonicity #401]: #403 +#409 := [trans #404 #407]: #408 +#412 := [quant-intro #409]: #411 +#1092 := [monotonicity #412 #1089]: #1091 +#1098 := [trans #1092 #1096]: #1097 +#1101 := [monotonicity #1098]: #1100 +#1105 := [trans #1101 #1103]: #1104 +#1107 := [monotonicity #1105]: #1106 +#1109 := [trans #1107 #1103]: #1108 +#1112 := [monotonicity #1109]: #1111 +#1721 := [trans #1112 #1719]: #1720 +#398 := [asserted]: #285 +#1722 := [mp #398 #1721]: #1717 +#1723 := [not-or-elim #1722]: #76 +#1786 := [mp~ #1723 #1748]: #76 +#4130 := [mp #1786 #4129]: #4125 +#5292 := (not #4125) +#5293 := (or #5292 #2962) +#5294 := [quant-inst]: #5293 +#8242 := [unit-resolution #5294 #4130 #8241]: false +#8245 := [lemma #8242]: #2962 +#3719 := (or #2977 #1847) +#4054 := [def-axiom]: #3719 +#10109 := [unit-resolution #4054 #8245]: #2977 +#2982 := (not #2977) +#4471 := (or #2982 #4468) +#4474 := (not #4471) +#4146 := (pattern #74 #81) +#2408 := (not #81) +#2954 := (or #74 #2408 #1129) +#4147 := (forall (vars (?x29 T2) (?x30 T2)) (:pat #4146) #2954) +#4152 := (not #4147) +#4477 := (or #4152 #4474) +#4480 := (not #4477) +decl ?x30!1 :: T2 +#1808 := ?x30!1 +#1812 := (uf_12 ?x30!1) +#2423 := (* -1::int #1812) +decl ?x29!2 :: T2 +#1809 := ?x29!2 +#1810 := (uf_12 ?x29!2) +#2424 := (+ #1810 #2423) +#2425 := (<= #2424 0::int) +#1816 := (up_13 ?x30!1) +#1815 := (up_13 ?x29!2) +#2058 := (not #1815) +#2132 := (or #2058 #1816 #2425) +#8816 := [hypothesis]: #1815 +#5238 := (or #5292 #2058) +#5267 := [quant-inst]: #5238 +#8817 := [unit-resolution #5267 #4130 #8816]: false +#8818 := [lemma #8817]: #2058 +#3648 := (or #2132 #1815) +#3733 := [def-axiom]: #3648 +#10110 := [unit-resolution #3733 #8818]: #2132 +#1948 := (not #2132) +#4483 := (or #1948 #4480) +#4486 := (not #4483) +#4138 := (forall (vars (?x27 T2)) (:pat #4131) #1120) +#4143 := (not #4138) +#4489 := (or #4143 #4486) +#4492 := (not #4489) +decl ?x27!0 :: T2 +#1793 := ?x27!0 +#1794 := (uf_12 ?x27!0) +#1795 := (>= #1794 0::int) +#1796 := (not #1795) +#4495 := (or #1796 #4492) +#4498 := (not #4495) +#4501 := (or #1115 #4498) +#4504 := (not #4501) +#4511 := (forall (vars (?x24 T2)) (:pat #4131) #1694) +#4514 := (iff #1697 #4511) +#4512 := (iff #1694 #1694) +#4513 := [refl]: #4512 +#4515 := [quant-intro #4513]: #4514 +#2226 := (~ #1697 #1697) +#2022 := (~ #1694 #1694) +#2023 := [refl]: #2022 +#2227 := [nnf-pos #2023]: #2226 +#1727 := [not-or-elim #1722]: #1697 +#2057 := [mp~ #1727 #2227]: #1697 +#4516 := [mp #2057 #4515]: #4511 +#5053 := [hypothesis]: #1115 +#3659 := (not #4511) +#5075 := (or #3659 #78) +#4998 := (= uf_11 uf_11) +#4996 := (not #4998) +#4988 := (or #4996 #78) +#5076 := (or #3659 #4988) +#5078 := (iff #5076 #5075) +#5069 := (iff #5075 #5075) +#5103 := [rewrite]: #5069 +#5070 := (iff #4988 #78) +#5059 := (or false #78) +#5063 := (iff #5059 #78) +#5064 := [rewrite]: #5063 +#5062 := (iff #4988 #5059) +#5012 := (iff #4996 false) +#8701 := (not true) +#8736 := (iff #8701 false) +#8737 := [rewrite]: #8736 +#5010 := (iff #4996 #8701) +#5008 := (iff #4998 true) +#5009 := [rewrite]: #5008 +#5011 := [monotonicity #5009]: #5010 +#5061 := [trans #5011 #8737]: #5012 +#5052 := [monotonicity #5061]: #5062 +#5071 := [trans #5052 #5064]: #5070 +#5079 := [monotonicity #5071]: #5078 +#5104 := [trans #5079 #5103]: #5078 +#5077 := [quant-inst]: #5076 +#5105 := [mp #5077 #5104]: #5075 +#5060 := [unit-resolution #5105 #5053 #4516]: false +#5109 := [lemma #5060]: #78 +#4507 := (or #1115 #4504) +#3412 := (forall (vars (?x76 T2)) #3401) +#3419 := (not #3412) +#3397 := (forall (vars (?x71 T2) (?x72 T2)) #3392) +#3418 := (not #3397) +#3420 := (or #2248 #2810 #3418 #3419) +#3421 := (not #3420) +#3426 := (or #3375 #3421) +#3433 := (not #3426) +#3352 := (forall (vars (?x67 T2) (?x68 T2)) #3347) +#3432 := (not #3352) +#3434 := (or #3432 #3433) +#3435 := (not #3434) +#3440 := (or #3329 #3435) +#3446 := (not #3440) +#3447 := (or #1403 #3446) +#3448 := (not #3447) +#3453 := (or #2168 #3448) +#3459 := (not #3453) +#3460 := (or #1394 #3459) +#3461 := (not #3460) +#3466 := (or #1394 #3461) +#3472 := (not #3466) +#3473 := (or #846 #3472) +#3474 := (not #3473) +#3479 := (or #2753 #3474) +#3485 := (not #3479) +#3486 := (or #1389 #3485) +#3487 := (not #3486) +#3492 := (or #2744 #3487) +#3500 := (not #3492) +#3306 := (forall (vars (?x59 T2)) #3301) +#3499 := (not #3306) +#3288 := (forall (vars (?x60 T2)) #3285) +#3498 := (not #3288) +#3501 := (or #180 #888 #1544 #1548 #2104 #2106 #3498 #3499 #3500) +#3502 := (not #3501) +#3218 := (forall (vars (?x53 T2) (?x54 T2)) #3213) +#3224 := (not #3218) +#3225 := (or #162 #3224) +#3226 := (not #3225) +#3253 := (or #3226 #3250) +#3260 := (not #3253) +#3196 := (forall (vars (?x49 T2)) #3191) +#3259 := (not #3196) +#3261 := (or #3259 #3260) +#3262 := (not #3261) +#3159 := (forall (vars (?x50 T2)) #3148) +#3165 := (not #3159) +#3166 := (or #1983 #2593 #3165) +#3167 := (not #3166) +#3267 := (or #3167 #3262) +#3274 := (not #3267) +#3144 := (forall (vars (?x48 T2)) #3133) +#3273 := (not #3144) +#3275 := (or #623 #605 #632 #614 #3273 #3274) +#3276 := (not #3275) +#3507 := (or #3276 #3502) +#3517 := (not #3507) +#3130 := (forall (vars (?x46 T2)) #3125) +#3516 := (not #3130) +#3102 := (forall (vars (?x37 T2)) #3097) +#3515 := (not #3102) +#3074 := (forall (vars (?x42 T2) (?x43 T2)) #3069) +#3514 := (not #3074) +#3051 := (forall (vars (?x44 T2) (?x45 T2)) #3046) +#3513 := (not #3051) +#3518 := (or #1636 #1631 #3513 #3514 #3515 #3516 #3517) +#3519 := (not #3518) +#3019 := (forall (vars (?x38 T2)) #3008) +#3025 := (not #3019) +#3026 := (or #1877 #2455 #3025) +#3027 := (not #3026) +#3524 := (or #3027 #3519) +#3531 := (not #3524) +#3004 := (forall (vars (?x33 T2) (?x34 T2)) #2999) +#3530 := (not #3004) +#3532 := (or #3530 #3531) +#3533 := (not #3532) +#3538 := (or #2982 #3533) +#3545 := (not #3538) +#2959 := (forall (vars (?x29 T2) (?x30 T2)) #2954) +#3544 := (not #2959) +#3546 := (or #3544 #3545) +#3547 := (not #3546) +#3552 := (or #1948 #3547) +#3558 := (not #3552) +#3559 := (or #1124 #3558) +#3560 := (not #3559) +#3565 := (or #1796 #3560) +#3571 := (not #3565) +#3572 := (or #1115 #3571) +#3573 := (not #3572) +#3578 := (or #1115 #3573) +#4508 := (iff #3578 #4507) +#4505 := (iff #3573 #4504) +#4502 := (iff #3572 #4501) +#4499 := (iff #3571 #4498) +#4496 := (iff #3565 #4495) +#4493 := (iff #3560 #4492) +#4490 := (iff #3559 #4489) +#4487 := (iff #3558 #4486) +#4484 := (iff #3552 #4483) +#4481 := (iff #3547 #4480) +#4478 := (iff #3546 #4477) +#4475 := (iff #3545 #4474) +#4472 := (iff #3538 #4471) +#4469 := (iff #3533 #4468) +#4466 := (iff #3532 #4465) +#4463 := (iff #3531 #4462) +#4460 := (iff #3524 #4459) +#4457 := (iff #3519 #4456) +#4454 := (iff #3518 #4453) +#4451 := (iff #3517 #4450) +#4448 := (iff #3507 #4447) +#4445 := (iff #3502 #4444) +#4442 := (iff #3501 #4441) +#4439 := (iff #3500 #4438) +#4436 := (iff #3492 #4435) +#4433 := (iff #3487 #4432) +#4430 := (iff #3486 #4429) +#4427 := (iff #3485 #4426) +#4424 := (iff #3479 #4423) +#4421 := (iff #3474 #4420) +#4418 := (iff #3473 #4417) +#4415 := (iff #3472 #4414) +#4412 := (iff #3466 #4411) +#4409 := (iff #3461 #4408) +#4406 := (iff #3460 #4405) +#4403 := (iff #3459 #4402) +#4400 := (iff #3453 #4399) +#4397 := (iff #3448 #4396) +#4394 := (iff #3447 #4393) +#4391 := (iff #3446 #4390) +#4388 := (iff #3440 #4387) +#4385 := (iff #3435 #4384) +#4382 := (iff #3434 #4381) +#4379 := (iff #3433 #4378) +#4376 := (iff #3426 #4375) +#4373 := (iff #3421 #4372) +#4370 := (iff #3420 #4369) +#4367 := (iff #3419 #4366) +#4364 := (iff #3412 #4361) +#4362 := (iff #3401 #3401) +#4363 := [refl]: #4362 +#4365 := [quant-intro #4363]: #4364 +#4368 := [monotonicity #4365]: #4367 +#4358 := (iff #3418 #4357) +#4355 := (iff #3397 #4352) +#4353 := (iff #3392 #3392) +#4354 := [refl]: #4353 +#4356 := [quant-intro #4354]: #4355 +#4359 := [monotonicity #4356]: #4358 +#4371 := [monotonicity #4359 #4368]: #4370 +#4374 := [monotonicity #4371]: #4373 +#4377 := [monotonicity #4374]: #4376 +#4380 := [monotonicity #4377]: #4379 +#4350 := (iff #3432 #4349) +#4347 := (iff #3352 #4344) +#4345 := (iff #3347 #3347) +#4346 := [refl]: #4345 +#4348 := [quant-intro #4346]: #4347 +#4351 := [monotonicity #4348]: #4350 +#4383 := [monotonicity #4351 #4380]: #4382 +#4386 := [monotonicity #4383]: #4385 +#4389 := [monotonicity #4386]: #4388 +#4392 := [monotonicity #4389]: #4391 +#4341 := (iff #1403 #4340) +#4338 := (iff #1400 #4335) +#4336 := (iff #1397 #1397) +#4337 := [refl]: #4336 +#4339 := [quant-intro #4337]: #4338 +#4342 := [monotonicity #4339]: #4341 +#4395 := [monotonicity #4342 #4392]: #4394 +#4398 := [monotonicity #4395]: #4397 +#4401 := [monotonicity #4398]: #4400 +#4404 := [monotonicity #4401]: #4403 +#4407 := [monotonicity #4404]: #4406 +#4410 := [monotonicity #4407]: #4409 +#4413 := [monotonicity #4410]: #4412 +#4416 := [monotonicity #4413]: #4415 +#4333 := (iff #846 #4332) +#4330 := (iff #710 #4327) +#4328 := (iff #705 #705) +#4329 := [refl]: #4328 +#4331 := [quant-intro #4329]: #4330 +#4334 := [monotonicity #4331]: #4333 +#4419 := [monotonicity #4334 #4416]: #4418 +#4422 := [monotonicity #4419]: #4421 +#4425 := [monotonicity #4422]: #4424 +#4428 := [monotonicity #4425]: #4427 +#4324 := (iff #1389 #4323) +#4321 := (iff #1386 #4318) +#4319 := (iff #1381 #1381) +#4320 := [refl]: #4319 +#4322 := [quant-intro #4320]: #4321 +#4325 := [monotonicity #4322]: #4324 +#4431 := [monotonicity #4325 #4428]: #4430 +#4434 := [monotonicity #4431]: #4433 +#4437 := [monotonicity #4434]: #4436 +#4440 := [monotonicity #4437]: #4439 +#4316 := (iff #3499 #4315) +#4313 := (iff #3306 #4310) +#4311 := (iff #3301 #3301) +#4312 := [refl]: #4311 +#4314 := [quant-intro #4312]: #4313 +#4317 := [monotonicity #4314]: #4316 +#4308 := (iff #3498 #4307) +#4305 := (iff #3288 #4302) +#4303 := (iff #3285 #3285) +#4304 := [refl]: #4303 +#4306 := [quant-intro #4304]: #4305 +#4309 := [monotonicity #4306]: #4308 +#4298 := (iff #1544 #4297) +#4295 := (iff #1541 #4292) +#4293 := (iff #1538 #1538) +#4294 := [refl]: #4293 +#4296 := [quant-intro #4294]: #4295 +#4299 := [monotonicity #4296]: #4298 +#4443 := [monotonicity #4299 #4309 #4317 #4440]: #4442 +#4446 := [monotonicity #4443]: #4445 +#4290 := (iff #3276 #4289) +#4287 := (iff #3275 #4286) +#4284 := (iff #3274 #4283) +#4281 := (iff #3267 #4280) +#4278 := (iff #3262 #4277) +#4275 := (iff #3261 #4274) +#4272 := (iff #3260 #4271) +#4269 := (iff #3253 #4268) +#4266 := (iff #3226 #4265) +#4263 := (iff #3225 #4262) +#4260 := (iff #3224 #4259) +#4257 := (iff #3218 #4254) +#4255 := (iff #3213 #3213) +#4256 := [refl]: #4255 +#4258 := [quant-intro #4256]: #4257 +#4261 := [monotonicity #4258]: #4260 +#4264 := [monotonicity #4261]: #4263 +#4267 := [monotonicity #4264]: #4266 +#4270 := [monotonicity #4267]: #4269 +#4273 := [monotonicity #4270]: #4272 +#4252 := (iff #3259 #4251) +#4249 := (iff #3196 #4246) +#4247 := (iff #3191 #3191) +#4248 := [refl]: #4247 +#4250 := [quant-intro #4248]: #4249 +#4253 := [monotonicity #4250]: #4252 +#4276 := [monotonicity #4253 #4273]: #4275 +#4279 := [monotonicity #4276]: #4278 +#4244 := (iff #3167 #4243) +#4241 := (iff #3166 #4240) +#4238 := (iff #3165 #4237) +#4235 := (iff #3159 #4232) +#4233 := (iff #3148 #3148) +#4234 := [refl]: #4233 +#4236 := [quant-intro #4234]: #4235 +#4239 := [monotonicity #4236]: #4238 +#4242 := [monotonicity #4239]: #4241 +#4245 := [monotonicity #4242]: #4244 +#4282 := [monotonicity #4245 #4279]: #4281 +#4285 := [monotonicity #4282]: #4284 +#4228 := (iff #3273 #4227) +#4225 := (iff #3144 #4222) +#4223 := (iff #3133 #3133) +#4224 := [refl]: #4223 +#4226 := [quant-intro #4224]: #4225 +#4229 := [monotonicity #4226]: #4228 +#4288 := [monotonicity #4229 #4285]: #4287 +#4291 := [monotonicity #4288]: #4290 +#4449 := [monotonicity #4291 #4446]: #4448 +#4452 := [monotonicity #4449]: #4451 +#4219 := (iff #3516 #4218) +#4216 := (iff #3130 #4213) +#4214 := (iff #3125 #3125) +#4215 := [refl]: #4214 +#4217 := [quant-intro #4215]: #4216 +#4220 := [monotonicity #4217]: #4219 +#4211 := (iff #3515 #4210) +#4208 := (iff #3102 #4205) +#4206 := (iff #3097 #3097) +#4207 := [refl]: #4206 +#4209 := [quant-intro #4207]: #4208 +#4212 := [monotonicity #4209]: #4211 +#4203 := (iff #3514 #4202) +#4200 := (iff #3074 #4197) +#4198 := (iff #3069 #3069) #4199 := [refl]: #4198 #4201 := [quant-intro #4199]: #4200 -#1843 := (~ #321 #321) -#1875 := (~ #317 #317) -#1876 := [refl]: #1875 -#1841 := [nnf-pos #1876]: #1843 +#4204 := [monotonicity #4201]: #4203 +#4194 := (iff #3513 #4193) +#4191 := (iff #3051 #4188) +#4189 := (iff #3046 #3046) +#4190 := [refl]: #4189 +#4192 := [quant-intro #4190]: #4191 +#4195 := [monotonicity #4192]: #4194 +#4186 := (iff #1631 #4185) +#4183 := (iff #1628 #4180) +#4181 := (iff #1625 #1625) +#4182 := [refl]: #4181 +#4184 := [quant-intro #4182]: #4183 +#4187 := [monotonicity #4184]: #4186 +#4455 := [monotonicity #4187 #4195 #4204 #4212 #4220 #4452]: #4454 +#4458 := [monotonicity #4455]: #4457 +#4177 := (iff #3027 #4176) +#4174 := (iff #3026 #4173) +#4171 := (iff #3025 #4170) +#4168 := (iff #3019 #4165) +#4166 := (iff #3008 #3008) +#4167 := [refl]: #4166 +#4169 := [quant-intro #4167]: #4168 +#4172 := [monotonicity #4169]: #4171 +#4175 := [monotonicity #4172]: #4174 +#4178 := [monotonicity #4175]: #4177 +#4461 := [monotonicity #4178 #4458]: #4460 +#4464 := [monotonicity #4461]: #4463 +#4162 := (iff #3530 #4161) +#4159 := (iff #3004 #4156) +#4157 := (iff #2999 #2999) +#4158 := [refl]: #4157 +#4160 := [quant-intro #4158]: #4159 +#4163 := [monotonicity #4160]: #4162 +#4467 := [monotonicity #4163 #4464]: #4466 +#4470 := [monotonicity #4467]: #4469 +#4473 := [monotonicity #4470]: #4472 +#4476 := [monotonicity #4473]: #4475 +#4153 := (iff #3544 #4152) +#4150 := (iff #2959 #4147) +#4148 := (iff #2954 #2954) +#4149 := [refl]: #4148 +#4151 := [quant-intro #4149]: #4150 +#4154 := [monotonicity #4151]: #4153 +#4479 := [monotonicity #4154 #4476]: #4478 +#4482 := [monotonicity #4479]: #4481 +#4485 := [monotonicity #4482]: #4484 +#4488 := [monotonicity #4485]: #4487 +#4144 := (iff #1124 #4143) +#4141 := (iff #1121 #4138) +#4139 := (iff #1120 #1120) +#4140 := [refl]: #4139 +#4142 := [quant-intro #4140]: #4141 +#4145 := [monotonicity #4142]: #4144 +#4491 := [monotonicity #4145 #4488]: #4490 +#4494 := [monotonicity #4491]: #4493 +#4497 := [monotonicity #4494]: #4496 +#4500 := [monotonicity #4497]: #4499 +#4503 := [monotonicity #4500]: #4502 +#4506 := [monotonicity #4503]: #4505 +#4509 := [monotonicity #4506]: #4508 +#2244 := (not #2243) +#2841 := (and #206 #2244 #2838) +#2844 := (not #2841) +#2847 := (forall (vars (?x76 T2)) #2844) +#2813 := (not #2810) +#2249 := (not #2248) +#2856 := (and #1438 #2249 #2813 #2847) +#2218 := (not #2217) +#2783 := (and #2218 #2219) +#2786 := (not #2783) +#2804 := (or #2786 #2799) +#2807 := (not #2804) +#2861 := (or #2807 #2856) +#2864 := (and #1414 #2861) +#2189 := (not #2188) +#2758 := (and #2187 #2189) +#2761 := (not #2758) +#2777 := (or #2761 #2772) +#2780 := (not #2777) +#2867 := (or #2780 #2864) +#2870 := (and #1400 #2867) +#2873 := (or #2168 #2870) +#2876 := (and #210 #2873) +#2879 := (or #1394 #2876) +#2882 := (and #710 #2879) +#2885 := (or #2753 #2882) +#2888 := (and #1386 #2885) +#2891 := (or #2744 #2888) +#2107 := (not #2106) +#2105 := (not #2104) +#2897 := (and #181 #189 #1375 #1528 #1541 #1549 #2105 #2107 #2891) +#2050 := (not #2049) +#2046 := (not #2045) +#2681 := (and #2046 #2050) +#2684 := (not #2681) +#2701 := (or #2684 #2696) +#2704 := (not #2701) +#2059 := (not #162) +#2069 := (and #2059 #1300) +#2710 := (or #2069 #2704) +#2654 := (not #2649) +#2672 := (and #2654 #2667) +#2675 := (or #1260 #2672) +#2678 := (forall (vars (?x49 T2)) #2675) +#2715 := (and #2678 #2710) +#1979 := (not #1978) +#2624 := (and #1979 #2621) +#2627 := (not #2624) +#2630 := (forall (vars (?x50 T2)) #2627) +#2596 := (not #2593) +#1984 := (not #1983) +#2636 := (and #1984 #2596 #2630) +#2718 := (or #2636 #2715) +#2085 := (not #1325) +#2088 := (forall (vars (?x48 T2)) #2085) +#2724 := (and #140 #145 #506 #509 #2088 #2718) +#2902 := (or #2724 #2897) +#2573 := (not #2568) +#2576 := (and #1943 #2556 #2573) +#2579 := (or #1215 #2576) +#2582 := (forall (vars (?x46 T2)) #2579) +#2518 := (not #2513) +#2536 := (and #1917 #2518 #2531) +#2539 := (or #1177 #2536) +#2542 := (forall (vars (?x37 T2)) #2539) +#2908 := (and #106 #1608 #1619 #1628 #2542 #2582 #2902) +#1873 := (not #1872) +#2486 := (and #74 #1873 #2483) +#2489 := (not #2486) +#2492 := (forall (vars (?x38 T2)) #2489) +#2458 := (not #2455) +#1878 := (not #1877) +#2498 := (and #1878 #2458 #2492) +#2913 := (or #2498 #2908) +#2916 := (and #1162 #2913) +#1846 := (not #1845) +#2436 := (and #1846 #1847) +#2439 := (not #2436) +#2449 := (or #2439 #2446) +#2452 := (not #2449) +#2919 := (or #2452 #2916) +#2922 := (and #1136 #2919) +#1817 := (not #1816) +#2411 := (and #1815 #1817) +#2414 := (not #2411) +#2430 := (or #2414 #2425) +#2433 := (not #2430) +#2925 := (or #2433 #2922) +#2928 := (and #1121 #2925) +#2931 := (or #1796 #2928) +#2934 := (and #78 #2931) +#2937 := (or #1115 #2934) +#3579 := (iff #2937 #3578) +#3576 := (iff #2934 #3573) +#3568 := (and #78 #3565) +#3574 := (iff #3568 #3573) +#3575 := [rewrite]: #3574 +#3569 := (iff #2934 #3568) +#3566 := (iff #2931 #3565) +#3563 := (iff #2928 #3560) +#3555 := (and #1121 #3552) +#3561 := (iff #3555 #3560) +#3562 := [rewrite]: #3561 +#3556 := (iff #2928 #3555) +#3553 := (iff #2925 #3552) +#3550 := (iff #2922 #3547) +#3541 := (and #2959 #3538) +#3548 := (iff #3541 #3547) +#3549 := [rewrite]: #3548 +#3542 := (iff #2922 #3541) +#3539 := (iff #2919 #3538) +#3536 := (iff #2916 #3533) +#3527 := (and #3004 #3524) +#3534 := (iff #3527 #3533) +#3535 := [rewrite]: #3534 +#3528 := (iff #2916 #3527) +#3525 := (iff #2913 #3524) +#3522 := (iff #2908 #3519) +#3510 := (and #106 #3051 #3074 #1628 #3102 #3130 #3507) +#3520 := (iff #3510 #3519) +#3521 := [rewrite]: #3520 +#3511 := (iff #2908 #3510) +#3508 := (iff #2902 #3507) +#3505 := (iff #2897 #3502) +#3495 := (and #181 #189 #3288 #3306 #1541 #1549 #2105 #2107 #3492) +#3503 := (iff #3495 #3502) +#3504 := [rewrite]: #3503 +#3496 := (iff #2897 #3495) +#3493 := (iff #2891 #3492) +#3490 := (iff #2888 #3487) +#3482 := (and #1386 #3479) +#3488 := (iff #3482 #3487) +#3489 := [rewrite]: #3488 +#3483 := (iff #2888 #3482) +#3480 := (iff #2885 #3479) +#3477 := (iff #2882 #3474) +#3469 := (and #710 #3466) +#3475 := (iff #3469 #3474) +#3476 := [rewrite]: #3475 +#3470 := (iff #2882 #3469) +#3467 := (iff #2879 #3466) +#3464 := (iff #2876 #3461) +#3456 := (and #210 #3453) +#3462 := (iff #3456 #3461) +#3463 := [rewrite]: #3462 +#3457 := (iff #2876 #3456) +#3454 := (iff #2873 #3453) +#3451 := (iff #2870 #3448) +#3443 := (and #1400 #3440) +#3449 := (iff #3443 #3448) +#3450 := [rewrite]: #3449 +#3444 := (iff #2870 #3443) +#3441 := (iff #2867 #3440) +#3438 := (iff #2864 #3435) +#3429 := (and #3352 #3426) +#3436 := (iff #3429 #3435) +#3437 := [rewrite]: #3436 +#3430 := (iff #2864 #3429) +#3427 := (iff #2861 #3426) +#3424 := (iff #2856 #3421) +#3415 := (and #3397 #2249 #2813 #3412) +#3422 := (iff #3415 #3421) +#3423 := [rewrite]: #3422 +#3416 := (iff #2856 #3415) +#3413 := (iff #2847 #3412) +#3410 := (iff #2844 #3401) +#3402 := (not #3401) +#3405 := (not #3402) +#3408 := (iff #3405 #3401) +#3409 := [rewrite]: #3408 +#3406 := (iff #2844 #3405) +#3403 := (iff #2841 #3402) +#3404 := [rewrite]: #3403 +#3407 := [monotonicity #3404]: #3406 +#3411 := [trans #3407 #3409]: #3410 +#3414 := [quant-intro #3411]: #3413 +#3398 := (iff #1438 #3397) +#3395 := (iff #1435 #3392) +#3378 := (or #213 #1144) +#3389 := (or #3378 #1431) +#3393 := (iff #3389 #3392) +#3394 := [rewrite]: #3393 +#3390 := (iff #1435 #3389) +#3387 := (iff #1428 #3378) +#3379 := (not #3378) +#3382 := (not #3379) +#3385 := (iff #3382 #3378) +#3386 := [rewrite]: #3385 +#3383 := (iff #1428 #3382) +#3380 := (iff #1423 #3379) +#3381 := [rewrite]: #3380 +#3384 := [monotonicity #3381]: #3383 +#3388 := [trans #3384 #3386]: #3387 +#3391 := [monotonicity #3388]: #3390 +#3396 := [trans #3391 #3394]: #3395 +#3399 := [quant-intro #3396]: #3398 +#3417 := [monotonicity #3399 #3414]: #3416 +#3425 := [trans #3417 #3423]: #3424 +#3376 := (iff #2807 #3375) +#3373 := (iff #2804 #3370) +#3356 := (or #2217 #3355) +#3367 := (or #3356 #2799) +#3371 := (iff #3367 #3370) +#3372 := [rewrite]: #3371 +#3368 := (iff #2804 #3367) +#3365 := (iff #2786 #3356) +#3357 := (not #3356) +#3360 := (not #3357) +#3363 := (iff #3360 #3356) +#3364 := [rewrite]: #3363 +#3361 := (iff #2786 #3360) +#3358 := (iff #2783 #3357) +#3359 := [rewrite]: #3358 +#3362 := [monotonicity #3359]: #3361 +#3366 := [trans #3362 #3364]: #3365 +#3369 := [monotonicity #3366]: #3368 +#3374 := [trans #3369 #3372]: #3373 +#3377 := [monotonicity #3374]: #3376 +#3428 := [monotonicity #3377 #3425]: #3427 +#3353 := (iff #1414 #3352) +#3350 := (iff #1411 #3347) +#3333 := (or #206 #3332) +#3344 := (or #3333 #1406) +#3348 := (iff #3344 #3347) +#3349 := [rewrite]: #3348 +#3345 := (iff #1411 #3344) +#3342 := (iff #716 #3333) +#3334 := (not #3333) +#3337 := (not #3334) +#3340 := (iff #3337 #3333) +#3341 := [rewrite]: #3340 +#3338 := (iff #716 #3337) +#3335 := (iff #215 #3334) +#3336 := [rewrite]: #3335 +#3339 := [monotonicity #3336]: #3338 +#3343 := [trans #3339 #3341]: #3342 +#3346 := [monotonicity #3343]: #3345 +#3351 := [trans #3346 #3349]: #3350 +#3354 := [quant-intro #3351]: #3353 +#3431 := [monotonicity #3354 #3428]: #3430 +#3439 := [trans #3431 #3437]: #3438 +#3330 := (iff #2780 #3329) +#3327 := (iff #2777 #3324) +#3310 := (or #3309 #2188) +#3321 := (or #3310 #2772) +#3325 := (iff #3321 #3324) +#3326 := [rewrite]: #3325 +#3322 := (iff #2777 #3321) +#3319 := (iff #2761 #3310) +#3311 := (not #3310) +#3314 := (not #3311) +#3317 := (iff #3314 #3310) +#3318 := [rewrite]: #3317 +#3315 := (iff #2761 #3314) +#3312 := (iff #2758 #3311) +#3313 := [rewrite]: #3312 +#3316 := [monotonicity #3313]: #3315 +#3320 := [trans #3316 #3318]: #3319 +#3323 := [monotonicity #3320]: #3322 +#3328 := [trans #3323 #3326]: #3327 +#3331 := [monotonicity #3328]: #3330 +#3442 := [monotonicity #3331 #3439]: #3441 +#3445 := [monotonicity #3442]: #3444 +#3452 := [trans #3445 #3450]: #3451 +#3455 := [monotonicity #3452]: #3454 +#3458 := [monotonicity #3455]: #3457 +#3465 := [trans #3458 #3463]: #3464 +#3468 := [monotonicity #3465]: #3467 +#3471 := [monotonicity #3468]: #3470 +#3478 := [trans #3471 #3476]: #3477 +#3481 := [monotonicity #3478]: #3480 +#3484 := [monotonicity #3481]: #3483 +#3491 := [trans #3484 #3489]: #3490 +#3494 := [monotonicity #3491]: #3493 +#3307 := (iff #1528 #3306) +#3304 := (iff #1525 #3301) +#3298 := (or #3281 #1522) +#3302 := (iff #3298 #3301) +#3303 := [rewrite]: #3302 +#3299 := (iff #1525 #3298) +#3296 := (iff #1517 #3281) +#3291 := (not #3282) +#3294 := (iff #3291 #3281) +#3295 := [rewrite]: #3294 +#3292 := (iff #1517 #3291) +#3283 := (iff #1364 #3282) +#3284 := [rewrite]: #3283 +#3293 := [monotonicity #3284]: #3292 +#3297 := [trans #3293 #3295]: #3296 +#3300 := [monotonicity #3297]: #3299 +#3305 := [trans #3300 #3303]: #3304 +#3308 := [quant-intro #3305]: #3307 +#3289 := (iff #1375 #3288) +#3286 := (iff #1370 #3285) +#3287 := [monotonicity #3284]: #3286 +#3290 := [quant-intro #3287]: #3289 +#3497 := [monotonicity #3290 #3308 #3494]: #3496 +#3506 := [trans #3497 #3504]: #3505 +#3279 := (iff #2724 #3276) +#3270 := (and #140 #145 #506 #509 #3144 #3267) +#3277 := (iff #3270 #3276) +#3278 := [rewrite]: #3277 +#3271 := (iff #2724 #3270) +#3268 := (iff #2718 #3267) +#3265 := (iff #2715 #3262) +#3256 := (and #3196 #3253) +#3263 := (iff #3256 #3262) +#3264 := [rewrite]: #3263 +#3257 := (iff #2715 #3256) +#3254 := (iff #2710 #3253) +#3251 := (iff #2704 #3250) +#3248 := (iff #2701 #3245) +#3231 := (or #2045 #2049) +#3242 := (or #3231 #2696) +#3246 := (iff #3242 #3245) +#3247 := [rewrite]: #3246 +#3243 := (iff #2701 #3242) +#3240 := (iff #2684 #3231) +#3232 := (not #3231) +#3235 := (not #3232) +#3238 := (iff #3235 #3231) +#3239 := [rewrite]: #3238 +#3236 := (iff #2684 #3235) +#3233 := (iff #2681 #3232) +#3234 := [rewrite]: #3233 +#3237 := [monotonicity #3234]: #3236 +#3241 := [trans #3237 #3239]: #3240 +#3244 := [monotonicity #3241]: #3243 +#3249 := [trans #3244 #3247]: #3248 +#3252 := [monotonicity #3249]: #3251 +#3229 := (iff #2069 #3226) +#3221 := (and #2059 #3218) +#3227 := (iff #3221 #3226) +#3228 := [rewrite]: #3227 +#3222 := (iff #2069 #3221) +#3219 := (iff #1300 #3218) +#3216 := (iff #1297 #3213) +#3199 := (or #1144 #1253) +#3210 := (or #3199 #1294) +#3214 := (iff #3210 #3213) +#3215 := [rewrite]: #3214 +#3211 := (iff #1297 #3210) +#3208 := (iff #1291 #3199) +#3200 := (not #3199) +#3203 := (not #3200) +#3206 := (iff #3203 #3199) +#3207 := [rewrite]: #3206 +#3204 := (iff #1291 #3203) +#3201 := (iff #1288 #3200) +#3202 := [rewrite]: #3201 +#3205 := [monotonicity #3202]: #3204 +#3209 := [trans #3205 #3207]: #3208 +#3212 := [monotonicity #3209]: #3211 +#3217 := [trans #3212 #3215]: #3216 +#3220 := [quant-intro #3217]: #3219 +#3223 := [monotonicity #3220]: #3222 +#3230 := [trans #3223 #3228]: #3229 +#3255 := [monotonicity #3230 #3252]: #3254 +#3197 := (iff #2678 #3196) +#3194 := (iff #2675 #3191) +#3172 := (or #65 #1253) +#3188 := (or #3172 #3185) +#3192 := (iff #3188 #3191) +#3193 := [rewrite]: #3192 +#3189 := (iff #2675 #3188) +#3186 := (iff #2672 #3185) +#3187 := [rewrite]: #3186 +#3181 := (iff #1260 #3172) +#3173 := (not #3172) +#3176 := (not #3173) +#3179 := (iff #3176 #3172) +#3180 := [rewrite]: #3179 +#3177 := (iff #1260 #3176) +#3174 := (iff #1257 #3173) +#3175 := [rewrite]: #3174 +#3178 := [monotonicity #3175]: #3177 +#3182 := [trans #3178 #3180]: #3181 +#3190 := [monotonicity #3182 #3187]: #3189 +#3195 := [trans #3190 #3193]: #3194 +#3198 := [quant-intro #3195]: #3197 +#3258 := [monotonicity #3198 #3255]: #3257 +#3266 := [trans #3258 #3264]: #3265 +#3170 := (iff #2636 #3167) +#3162 := (and #1984 #2596 #3159) +#3168 := (iff #3162 #3167) +#3169 := [rewrite]: #3168 +#3163 := (iff #2636 #3162) +#3160 := (iff #2630 #3159) +#3157 := (iff #2627 #3148) +#3149 := (not #3148) +#3152 := (not #3149) +#3155 := (iff #3152 #3148) +#3156 := [rewrite]: #3155 +#3153 := (iff #2627 #3152) +#3150 := (iff #2624 #3149) +#3151 := [rewrite]: #3150 +#3154 := [monotonicity #3151]: #3153 +#3158 := [trans #3154 #3156]: #3157 +#3161 := [quant-intro #3158]: #3160 +#3164 := [monotonicity #3161]: #3163 +#3171 := [trans #3164 #3169]: #3170 +#3269 := [monotonicity #3171 #3266]: #3268 +#3145 := (iff #2088 #3144) +#3142 := (iff #2085 #3133) +#3134 := (not #3133) +#3137 := (not #3134) +#3140 := (iff #3137 #3133) +#3141 := [rewrite]: #3140 +#3138 := (iff #2085 #3137) +#3135 := (iff #1325 #3134) +#3136 := [rewrite]: #3135 +#3139 := [monotonicity #3136]: #3138 +#3143 := [trans #3139 #3141]: #3142 +#3146 := [quant-intro #3143]: #3145 +#3272 := [monotonicity #3146 #3269]: #3271 +#3280 := [trans #3272 #3278]: #3279 +#3509 := [monotonicity #3280 #3506]: #3508 +#3131 := (iff #2582 #3130) +#3128 := (iff #2579 #3125) +#3105 := (or #65 #1208) +#3122 := (or #3105 #3119) +#3126 := (iff #3122 #3125) +#3127 := [rewrite]: #3126 +#3123 := (iff #2579 #3122) +#3120 := (iff #2576 #3119) +#3121 := [rewrite]: #3120 +#3114 := (iff #1215 #3105) +#3106 := (not #3105) +#3109 := (not #3106) +#3112 := (iff #3109 #3105) +#3113 := [rewrite]: #3112 +#3110 := (iff #1215 #3109) +#3107 := (iff #1212 #3106) +#3108 := [rewrite]: #3107 +#3111 := [monotonicity #3108]: #3110 +#3115 := [trans #3111 #3113]: #3114 +#3124 := [monotonicity #3115 #3121]: #3123 +#3129 := [trans #3124 #3127]: #3128 +#3132 := [quant-intro #3129]: #3131 +#3103 := (iff #2542 #3102) +#3100 := (iff #2539 #3097) +#3077 := (or #65 #1170) +#3094 := (or #3077 #3091) +#3098 := (iff #3094 #3097) +#3099 := [rewrite]: #3098 +#3095 := (iff #2539 #3094) +#3092 := (iff #2536 #3091) +#3093 := [rewrite]: #3092 +#3086 := (iff #1177 #3077) +#3078 := (not #3077) +#3081 := (not #3078) +#3084 := (iff #3081 #3077) +#3085 := [rewrite]: #3084 +#3082 := (iff #1177 #3081) +#3079 := (iff #1174 #3078) +#3080 := [rewrite]: #3079 +#3083 := [monotonicity #3080]: #3082 +#3087 := [trans #3083 #3085]: #3086 +#3096 := [monotonicity #3087 #3093]: #3095 +#3101 := [trans #3096 #3099]: #3100 +#3104 := [quant-intro #3101]: #3103 +#3075 := (iff #1619 #3074) +#3072 := (iff #1616 #3069) +#3055 := (or #111 #3054) +#3066 := (or #3055 #1224) +#3070 := (iff #3066 #3069) +#3071 := [rewrite]: #3070 +#3067 := (iff #1616 #3066) +#3064 := (iff #454 #3055) +#3056 := (not #3055) +#3059 := (not #3056) +#3062 := (iff #3059 #3055) +#3063 := [rewrite]: #3062 +#3060 := (iff #454 #3059) +#3057 := (iff #114 #3056) +#3058 := [rewrite]: #3057 +#3061 := [monotonicity #3058]: #3060 +#3065 := [trans #3061 #3063]: #3064 +#3068 := [monotonicity #3065]: #3067 +#3073 := [trans #3068 #3071]: #3072 +#3076 := [quant-intro #3073]: #3075 +#3052 := (iff #1608 #3051) +#3049 := (iff #1605 #3046) +#3032 := (or #112 #1144) +#3043 := (or #3032 #1602) +#3047 := (iff #3043 #3046) +#3048 := [rewrite]: #3047 +#3044 := (iff #1605 #3043) +#3041 := (iff #1599 #3032) +#3033 := (not #3032) +#3036 := (not #3033) +#3039 := (iff #3036 #3032) +#3040 := [rewrite]: #3039 +#3037 := (iff #1599 #3036) +#3034 := (iff #1594 #3033) +#3035 := [rewrite]: #3034 +#3038 := [monotonicity #3035]: #3037 +#3042 := [trans #3038 #3040]: #3041 +#3045 := [monotonicity #3042]: #3044 +#3050 := [trans #3045 #3048]: #3049 +#3053 := [quant-intro #3050]: #3052 +#3512 := [monotonicity #3053 #3076 #3104 #3132 #3509]: #3511 +#3523 := [trans #3512 #3521]: #3522 +#3030 := (iff #2498 #3027) +#3022 := (and #1878 #2458 #3019) +#3028 := (iff #3022 #3027) +#3029 := [rewrite]: #3028 +#3023 := (iff #2498 #3022) +#3020 := (iff #2492 #3019) +#3017 := (iff #2489 #3008) +#3009 := (not #3008) +#3012 := (not #3009) +#3015 := (iff #3012 #3008) +#3016 := [rewrite]: #3015 +#3013 := (iff #2489 #3012) +#3010 := (iff #2486 #3009) +#3011 := [rewrite]: #3010 +#3014 := [monotonicity #3011]: #3013 +#3018 := [trans #3014 #3016]: #3017 +#3021 := [quant-intro #3018]: #3020 +#3024 := [monotonicity #3021]: #3023 +#3031 := [trans #3024 #3029]: #3030 +#3526 := [monotonicity #3031 #3523]: #3525 +#3005 := (iff #1162 #3004) +#3002 := (iff #1159 #2999) +#2985 := (or #75 #1144) +#2996 := (or #2985 #1155) +#3000 := (iff #2996 #2999) +#3001 := [rewrite]: #3000 +#2997 := (iff #1159 #2996) +#2994 := (iff #1151 #2985) +#2986 := (not #2985) +#2989 := (not #2986) +#2992 := (iff #2989 #2985) +#2993 := [rewrite]: #2992 +#2990 := (iff #1151 #2989) +#2987 := (iff #1148 #2986) +#2988 := [rewrite]: #2987 +#2991 := [monotonicity #2988]: #2990 +#2995 := [trans #2991 #2993]: #2994 +#2998 := [monotonicity #2995]: #2997 +#3003 := [trans #2998 #3001]: #3002 +#3006 := [quant-intro #3003]: #3005 +#3529 := [monotonicity #3006 #3526]: #3528 +#3537 := [trans #3529 #3535]: #3536 +#2983 := (iff #2452 #2982) +#2980 := (iff #2449 #2977) +#2963 := (or #1845 #2962) +#2974 := (or #2963 #2446) +#2978 := (iff #2974 #2977) +#2979 := [rewrite]: #2978 +#2975 := (iff #2449 #2974) +#2972 := (iff #2439 #2963) +#2964 := (not #2963) +#2967 := (not #2964) +#2970 := (iff #2967 #2963) +#2971 := [rewrite]: #2970 +#2968 := (iff #2439 #2967) +#2965 := (iff #2436 #2964) +#2966 := [rewrite]: #2965 +#2969 := [monotonicity #2966]: #2968 +#2973 := [trans #2969 #2971]: #2972 +#2976 := [monotonicity #2973]: #2975 +#2981 := [trans #2976 #2979]: #2980 +#2984 := [monotonicity #2981]: #2983 +#3540 := [monotonicity #2984 #3537]: #3539 +#2960 := (iff #1136 #2959) +#2957 := (iff #1133 #2954) +#2940 := (or #74 #2408) +#2951 := (or #2940 #1129) +#2955 := (iff #2951 #2954) +#2956 := [rewrite]: #2955 +#2952 := (iff #1133 #2951) +#2949 := (iff #430 #2940) +#2941 := (not #2940) +#2944 := (not #2941) +#2947 := (iff #2944 #2940) +#2948 := [rewrite]: #2947 +#2945 := (iff #430 #2944) +#2942 := (iff #82 #2941) +#2943 := [rewrite]: #2942 +#2946 := [monotonicity #2943]: #2945 +#2950 := [trans #2946 #2948]: #2949 +#2953 := [monotonicity #2950]: #2952 +#2958 := [trans #2953 #2956]: #2957 +#2961 := [quant-intro #2958]: #2960 +#3543 := [monotonicity #2961 #3540]: #3542 +#3551 := [trans #3543 #3549]: #3550 +#2111 := (iff #2433 #1948) +#1825 := (iff #2430 #2132) +#1799 := (or #2058 #1816) +#2197 := (or #1799 #2425) +#2133 := (iff #2197 #2132) +#1824 := [rewrite]: #2133 +#2171 := (iff #2430 #2197) +#1855 := (iff #2414 #1799) +#1755 := (not #1799) +#1921 := (not #1755) +#2152 := (iff #1921 #1799) +#1854 := [rewrite]: #2152 +#1922 := (iff #2414 #1921) +#1756 := (iff #2411 #1755) +#1800 := [rewrite]: #1756 +#2151 := [monotonicity #1800]: #1922 +#2196 := [trans #2151 #1854]: #1855 +#2172 := [monotonicity #2196]: #2171 +#1947 := [trans #2172 #1824]: #1825 +#2112 := [monotonicity #1947]: #2111 +#3554 := [monotonicity #2112 #3551]: #3553 +#3557 := [monotonicity #3554]: #3556 +#3564 := [trans #3557 #3562]: #3563 +#3567 := [monotonicity #3564]: #3566 +#3570 := [monotonicity #3567]: #3569 +#3577 := [trans #3570 #3575]: #3576 +#3580 := [monotonicity #3577]: #3579 +#2241 := (+ #2240 #2238) +#2242 := (= #2241 0::int) +#2245 := (and #206 #2244 #2242) +#2262 := (not #2245) +#2265 := (forall (vars (?x76 T2)) #2262) +#2250 := (= ?x75!20 uf_11) +#2251 := (not #2250) +#2252 := (and #2251 #2249) +#2253 := (not #2252) +#2259 := (not #2253) +#2269 := (and #2259 #2265) +#2274 := (and #1438 #2269) +#2208 := (* -1::int #2207) +#2210 := (+ #2209 #2208) +#2213 := (+ #2212 #2210) +#2214 := (>= #2213 0::int) +#2220 := (and #2219 #2218) +#2221 := (not #2220) +#2222 := (or #2221 #2214) +#2223 := (not #2222) +#2278 := (or #2223 #2274) +#2282 := (and #1414 #2278) +#2183 := (* -1::int #2182) +#2185 := (+ #2184 #2183) +#2186 := (>= #2185 0::int) +#2190 := (and #2189 #2187) +#2191 := (not #2190) +#2192 := (or #2191 #2186) +#2193 := (not #2192) +#2286 := (or #2193 #2282) +#2290 := (and #1400 #2286) +#2294 := (or #2168 #2290) +#2162 := (not #1394) +#2298 := (and #2162 #2294) +#2302 := (or #1394 #2298) +#2306 := (and #710 #2302) +#2144 := (= #2143 #2142) +#2147 := (or #2146 #2144) +#2148 := (not #2147) +#2310 := (or #2148 #2306) +#2314 := (and #1386 #2310) +#2125 := (* -1::int #2124) +#2127 := (+ #2126 #2125) +#2128 := (>= #2127 0::int) +#2129 := (not #2128) +#2318 := (or #2129 #2314) +#2108 := (and #2107 #2105) +#2097 := (not #888) +#2338 := (and #181 #2097 #2108 #1375 #2318 #1528 #1541 #1549) +#2036 := (* -1::int #2035) +#2038 := (+ #2037 #2036) +#2041 := (+ #2040 #2038) +#2042 := (>= #2041 0::int) +#2051 := (and #2050 #2046) +#2052 := (not #2051) +#2053 := (or #2052 #2042) +#2054 := (not #2053) +#2073 := (or #2054 #2069) +#2012 := (+ #2011 #1251) +#2015 := (+ #2014 #2012) +#2016 := (= #2015 0::int) +#2017 := (>= #2012 0::int) +#2018 := (not #2017) +#2019 := (and #2018 #2016) +#2024 := (or #1260 #2019) +#2027 := (forall (vars (?x49 T2)) #2024) +#2077 := (and #2027 #2073) +#1976 := (+ #1975 #1973) +#1977 := (= #1976 0::int) +#1980 := (and #1979 #1977) +#1996 := (not #1980) +#1999 := (forall (vars (?x50 T2)) #1996) +#1985 := (= ?x49!8 uf_11) +#1986 := (not #1985) +#1987 := (and #1986 #1984) +#1988 := (not #1987) +#1993 := (not #1988) +#2003 := (and #1993 #1999) +#2081 := (or #2003 #2077) +#1967 := (not #614) +#1964 := (not #632) +#1961 := (not #605) +#1958 := (not #623) +#2091 := (and #1958 #1961 #1964 #1967 #2081 #2088) +#2342 := (or #2091 #2338) +#1936 := (+ #1935 #1206) +#1937 := (>= #1936 0::int) +#1938 := (not #1937) +#1941 := (+ #1940 #1936) +#1942 := (= #1941 0::int) +#1944 := (and #1943 #1942 #1938) +#1949 := (or #1215 #1944) +#1952 := (forall (vars (?x46 T2)) #1949) +#1910 := (+ #1168 #1909) +#1912 := (+ #1911 #1910) +#1913 := (= #1912 0::int) +#1914 := (+ #1911 #1168) +#1915 := (>= #1914 0::int) +#1916 := (not #1915) +#1918 := (and #1917 #1916 #1913) +#1923 := (or #1177 #1918) +#1926 := (forall (vars (?x37 T2)) #1923) +#1902 := (not #1636) +#2367 := (and #1902 #1926 #1952 #2342 #1608 #1619 #1628) +#1868 := (+ #1867 #1865) +#1869 := (+ #66 #1868) +#1870 := (= #1869 0::int) +#1874 := (and #74 #1873 #1870) +#1890 := (not #1874) +#1893 := (forall (vars (?x38 T2)) #1890) +#1879 := (= ?x37!5 uf_11) +#1880 := (not #1879) +#1881 := (and #1880 #1878) +#1882 := (not #1881) +#1887 := (not #1882) +#1897 := (and #1887 #1893) +#2371 := (or #1897 #2367) +#2375 := (and #1162 #2371) +#1839 := (+ #1838 #1836) +#1841 := (+ #1840 #1839) +#1842 := (>= #1841 0::int) +#1848 := (and #1847 #1846) +#1849 := (not #1848) +#1850 := (or #1849 #1842) +#1851 := (not #1850) +#2379 := (or #1851 #2375) +#2383 := (and #1136 #2379) +#1811 := (* -1::int #1810) +#1813 := (+ #1812 #1811) +#1814 := (>= #1813 0::int) +#1818 := (and #1817 #1815) +#1819 := (not #1818) +#1820 := (or #1819 #1814) +#1821 := (not #1820) +#2387 := (or #1821 #2383) +#2391 := (and #1121 #2387) +#2395 := (or #1796 #2391) +#1751 := (not #1115) +#2399 := (and #1751 #2395) +#2403 := (or #1115 #2399) +#2938 := (iff #2403 #2937) +#2935 := (iff #2399 #2934) +#2932 := (iff #2395 #2931) +#2929 := (iff #2391 #2928) +#2926 := (iff #2387 #2925) +#2923 := (iff #2383 #2922) +#2920 := (iff #2379 #2919) +#2917 := (iff #2375 #2916) +#2914 := (iff #2371 #2913) +#2911 := (iff #2367 #2908) +#2905 := (and #106 #2542 #2582 #2902 #1608 #1619 #1628) +#2909 := (iff #2905 #2908) +#2910 := [rewrite]: #2909 +#2906 := (iff #2367 #2905) +#2903 := (iff #2342 #2902) +#2900 := (iff #2338 #2897) +#2894 := (and #181 #189 #2108 #1375 #2891 #1528 #1541 #1549) +#2898 := (iff #2894 #2897) +#2899 := [rewrite]: #2898 +#2895 := (iff #2338 #2894) +#2892 := (iff #2318 #2891) +#2889 := (iff #2314 #2888) +#2886 := (iff #2310 #2885) +#2883 := (iff #2306 #2882) +#2880 := (iff #2302 #2879) +#2877 := (iff #2298 #2876) +#2874 := (iff #2294 #2873) +#2871 := (iff #2290 #2870) +#2868 := (iff #2286 #2867) +#2865 := (iff #2282 #2864) +#2862 := (iff #2278 #2861) +#2859 := (iff #2274 #2856) +#2819 := (and #2249 #2813) +#2850 := (and #2819 #2847) +#2853 := (and #1438 #2850) +#2857 := (iff #2853 #2856) +#2858 := [rewrite]: #2857 +#2854 := (iff #2274 #2853) +#2851 := (iff #2269 #2850) +#2848 := (iff #2265 #2847) +#2845 := (iff #2262 #2844) +#2842 := (iff #2245 #2841) +#2839 := (iff #2242 #2838) +#2836 := (= #2241 #2835) +#2837 := [rewrite]: #2836 +#2840 := [monotonicity #2837]: #2839 +#2843 := [monotonicity #2840]: #2842 +#2846 := [monotonicity #2843]: #2845 +#2849 := [quant-intro #2846]: #2848 +#2832 := (iff #2259 #2819) +#2824 := (not #2819) +#2827 := (not #2824) +#2830 := (iff #2827 #2819) +#2831 := [rewrite]: #2830 +#2828 := (iff #2259 #2827) +#2825 := (iff #2253 #2824) +#2822 := (iff #2252 #2819) +#2816 := (and #2813 #2249) +#2820 := (iff #2816 #2819) +#2821 := [rewrite]: #2820 +#2817 := (iff #2252 #2816) +#2814 := (iff #2251 #2813) +#2811 := (iff #2250 #2810) +#2812 := [rewrite]: #2811 +#2815 := [monotonicity #2812]: #2814 +#2818 := [monotonicity #2815]: #2817 +#2823 := [trans #2818 #2821]: #2822 +#2826 := [monotonicity #2823]: #2825 +#2829 := [monotonicity #2826]: #2828 +#2833 := [trans #2829 #2831]: #2832 +#2852 := [monotonicity #2833 #2849]: #2851 +#2855 := [monotonicity #2852]: #2854 +#2860 := [trans #2855 #2858]: #2859 +#2808 := (iff #2223 #2807) +#2805 := (iff #2222 #2804) +#2802 := (iff #2214 #2799) +#2789 := (+ #2209 #2212) +#2790 := (+ #2208 #2789) +#2793 := (>= #2790 0::int) +#2800 := (iff #2793 #2799) +#2801 := [rewrite]: #2800 +#2794 := (iff #2214 #2793) +#2791 := (= #2213 #2790) +#2792 := [rewrite]: #2791 +#2795 := [monotonicity #2792]: #2794 +#2803 := [trans #2795 #2801]: #2802 +#2787 := (iff #2221 #2786) +#2784 := (iff #2220 #2783) +#2785 := [rewrite]: #2784 +#2788 := [monotonicity #2785]: #2787 +#2806 := [monotonicity #2788 #2803]: #2805 +#2809 := [monotonicity #2806]: #2808 +#2863 := [monotonicity #2809 #2860]: #2862 +#2866 := [monotonicity #2863]: #2865 +#2781 := (iff #2193 #2780) +#2778 := (iff #2192 #2777) +#2775 := (iff #2186 #2772) +#2764 := (+ #2183 #2184) +#2767 := (>= #2764 0::int) +#2773 := (iff #2767 #2772) +#2774 := [rewrite]: #2773 +#2768 := (iff #2186 #2767) +#2765 := (= #2185 #2764) +#2766 := [rewrite]: #2765 +#2769 := [monotonicity #2766]: #2768 +#2776 := [trans #2769 #2774]: #2775 +#2762 := (iff #2191 #2761) +#2759 := (iff #2190 #2758) +#2760 := [rewrite]: #2759 +#2763 := [monotonicity #2760]: #2762 +#2779 := [monotonicity #2763 #2776]: #2778 +#2782 := [monotonicity #2779]: #2781 +#2869 := [monotonicity #2782 #2866]: #2868 +#2872 := [monotonicity #2869]: #2871 +#2875 := [monotonicity #2872]: #2874 +#2756 := (iff #2162 #210) +#2757 := [rewrite]: #2756 +#2878 := [monotonicity #2757 #2875]: #2877 +#2881 := [monotonicity #2878]: #2880 +#2884 := [monotonicity #2881]: #2883 +#2754 := (iff #2148 #2753) +#2751 := (iff #2147 #2750) +#2748 := (iff #2144 #2747) +#2749 := [rewrite]: #2748 +#2752 := [monotonicity #2749]: #2751 +#2755 := [monotonicity #2752]: #2754 +#2887 := [monotonicity #2755 #2884]: #2886 +#2890 := [monotonicity #2887]: #2889 +#2745 := (iff #2129 #2744) +#2742 := (iff #2128 #2739) +#2731 := (+ #2125 #2126) +#2734 := (>= #2731 0::int) +#2740 := (iff #2734 #2739) +#2741 := [rewrite]: #2740 +#2735 := (iff #2128 #2734) +#2732 := (= #2127 #2731) +#2733 := [rewrite]: #2732 +#2736 := [monotonicity #2733]: #2735 +#2743 := [trans #2736 #2741]: #2742 +#2746 := [monotonicity #2743]: #2745 +#2893 := [monotonicity #2746 #2890]: #2892 +#2729 := (iff #2097 #189) +#2730 := [rewrite]: #2729 +#2896 := [monotonicity #2730 #2893]: #2895 +#2901 := [trans #2896 #2899]: #2900 +#2727 := (iff #2091 #2724) +#2721 := (and #140 #145 #506 #509 #2718 #2088) +#2725 := (iff #2721 #2724) +#2726 := [rewrite]: #2725 +#2722 := (iff #2091 #2721) +#2719 := (iff #2081 #2718) +#2716 := (iff #2077 #2715) +#2713 := (iff #2073 #2710) +#2707 := (or #2704 #2069) +#2711 := (iff #2707 #2710) +#2712 := [rewrite]: #2711 +#2708 := (iff #2073 #2707) +#2705 := (iff #2054 #2704) +#2702 := (iff #2053 #2701) +#2699 := (iff #2042 #2696) +#2687 := (+ #2037 #2040) +#2688 := (+ #2036 #2687) +#2691 := (>= #2688 0::int) +#2697 := (iff #2691 #2696) +#2698 := [rewrite]: #2697 +#2692 := (iff #2042 #2691) +#2689 := (= #2041 #2688) +#2690 := [rewrite]: #2689 +#2693 := [monotonicity #2690]: #2692 +#2700 := [trans #2693 #2698]: #2699 +#2685 := (iff #2052 #2684) +#2682 := (iff #2051 #2681) +#2683 := [rewrite]: #2682 +#2686 := [monotonicity #2683]: #2685 +#2703 := [monotonicity #2686 #2700]: #2702 +#2706 := [monotonicity #2703]: #2705 +#2709 := [monotonicity #2706]: #2708 +#2714 := [trans #2709 #2712]: #2713 +#2679 := (iff #2027 #2678) +#2676 := (iff #2024 #2675) +#2673 := (iff #2019 #2672) +#2670 := (iff #2016 #2667) +#2657 := (+ #2011 #2014) +#2658 := (+ #1251 #2657) +#2661 := (= #2658 0::int) +#2668 := (iff #2661 #2667) +#2669 := [rewrite]: #2668 +#2662 := (iff #2016 #2661) +#2659 := (= #2015 #2658) +#2660 := [rewrite]: #2659 +#2663 := [monotonicity #2660]: #2662 +#2671 := [trans #2663 #2669]: #2670 +#2655 := (iff #2018 #2654) +#2652 := (iff #2017 #2649) +#2641 := (+ #1251 #2011) +#2644 := (>= #2641 0::int) +#2650 := (iff #2644 #2649) +#2651 := [rewrite]: #2650 +#2645 := (iff #2017 #2644) +#2642 := (= #2012 #2641) +#2643 := [rewrite]: #2642 +#2646 := [monotonicity #2643]: #2645 +#2653 := [trans #2646 #2651]: #2652 +#2656 := [monotonicity #2653]: #2655 +#2674 := [monotonicity #2656 #2671]: #2673 +#2677 := [monotonicity #2674]: #2676 +#2680 := [quant-intro #2677]: #2679 +#2717 := [monotonicity #2680 #2714]: #2716 +#2639 := (iff #2003 #2636) +#2602 := (and #1984 #2596) +#2633 := (and #2602 #2630) +#2637 := (iff #2633 #2636) +#2638 := [rewrite]: #2637 +#2634 := (iff #2003 #2633) +#2631 := (iff #1999 #2630) +#2628 := (iff #1996 #2627) +#2625 := (iff #1980 #2624) +#2622 := (iff #1977 #2621) +#2619 := (= #1976 #2618) +#2620 := [rewrite]: #2619 +#2623 := [monotonicity #2620]: #2622 +#2626 := [monotonicity #2623]: #2625 +#2629 := [monotonicity #2626]: #2628 +#2632 := [quant-intro #2629]: #2631 +#2615 := (iff #1993 #2602) +#2607 := (not #2602) +#2610 := (not #2607) +#2613 := (iff #2610 #2602) +#2614 := [rewrite]: #2613 +#2611 := (iff #1993 #2610) +#2608 := (iff #1988 #2607) +#2605 := (iff #1987 #2602) +#2599 := (and #2596 #1984) +#2603 := (iff #2599 #2602) +#2604 := [rewrite]: #2603 +#2600 := (iff #1987 #2599) +#2597 := (iff #1986 #2596) +#2594 := (iff #1985 #2593) +#2595 := [rewrite]: #2594 +#2598 := [monotonicity #2595]: #2597 +#2601 := [monotonicity #2598]: #2600 +#2606 := [trans #2601 #2604]: #2605 +#2609 := [monotonicity #2606]: #2608 +#2612 := [monotonicity #2609]: #2611 +#2616 := [trans #2612 #2614]: #2615 +#2635 := [monotonicity #2616 #2632]: #2634 +#2640 := [trans #2635 #2638]: #2639 +#2720 := [monotonicity #2640 #2717]: #2719 +#2591 := (iff #1967 #509) +#2592 := [rewrite]: #2591 +#2589 := (iff #1964 #506) +#2590 := [rewrite]: #2589 +#2587 := (iff #1961 #145) +#2588 := [rewrite]: #2587 +#2585 := (iff #1958 #140) +#2586 := [rewrite]: #2585 +#2723 := [monotonicity #2586 #2588 #2590 #2592 #2720]: #2722 +#2728 := [trans #2723 #2726]: #2727 +#2904 := [monotonicity #2728 #2901]: #2903 +#2583 := (iff #1952 #2582) +#2580 := (iff #1949 #2579) +#2577 := (iff #1944 #2576) +#2574 := (iff #1938 #2573) +#2571 := (iff #1937 #2568) +#2561 := (+ #1206 #1935) +#2564 := (>= #2561 0::int) +#2569 := (iff #2564 #2568) +#2570 := [rewrite]: #2569 +#2565 := (iff #1937 #2564) +#2562 := (= #1936 #2561) +#2563 := [rewrite]: #2562 +#2566 := [monotonicity #2563]: #2565 +#2572 := [trans #2566 #2570]: #2571 +#2575 := [monotonicity #2572]: #2574 +#2559 := (iff #1942 #2556) +#2545 := (+ #1935 #1940) +#2546 := (+ #1206 #2545) +#2549 := (= #2546 0::int) +#2557 := (iff #2549 #2556) +#2558 := [rewrite]: #2557 +#2550 := (iff #1942 #2549) +#2547 := (= #1941 #2546) +#2548 := [rewrite]: #2547 +#2551 := [monotonicity #2548]: #2550 +#2560 := [trans #2551 #2558]: #2559 +#2578 := [monotonicity #2560 #2575]: #2577 +#2581 := [monotonicity #2578]: #2580 +#2584 := [quant-intro #2581]: #2583 +#2543 := (iff #1926 #2542) +#2540 := (iff #1923 #2539) +#2537 := (iff #1918 #2536) +#2534 := (iff #1913 #2531) +#2521 := (+ #1909 #1911) +#2522 := (+ #1168 #2521) +#2525 := (= #2522 0::int) +#2532 := (iff #2525 #2531) +#2533 := [rewrite]: #2532 +#2526 := (iff #1913 #2525) +#2523 := (= #1912 #2522) +#2524 := [rewrite]: #2523 +#2527 := [monotonicity #2524]: #2526 +#2535 := [trans #2527 #2533]: #2534 +#2519 := (iff #1916 #2518) +#2516 := (iff #1915 #2513) +#2505 := (+ #1168 #1911) +#2508 := (>= #2505 0::int) +#2514 := (iff #2508 #2513) +#2515 := [rewrite]: #2514 +#2509 := (iff #1915 #2508) +#2506 := (= #1914 #2505) +#2507 := [rewrite]: #2506 +#2510 := [monotonicity #2507]: #2509 +#2517 := [trans #2510 #2515]: #2516 +#2520 := [monotonicity #2517]: #2519 +#2538 := [monotonicity #2520 #2535]: #2537 +#2541 := [monotonicity #2538]: #2540 +#2544 := [quant-intro #2541]: #2543 +#2503 := (iff #1902 #106) +#2504 := [rewrite]: #2503 +#2907 := [monotonicity #2504 #2544 #2584 #2904]: #2906 +#2912 := [trans #2907 #2910]: #2911 +#2501 := (iff #1897 #2498) +#2464 := (and #1878 #2458) +#2495 := (and #2464 #2492) +#2499 := (iff #2495 #2498) +#2500 := [rewrite]: #2499 +#2496 := (iff #1897 #2495) +#2493 := (iff #1893 #2492) +#2490 := (iff #1890 #2489) +#2487 := (iff #1874 #2486) +#2484 := (iff #1870 #2483) +#2481 := (= #1869 #2480) +#2482 := [rewrite]: #2481 +#2485 := [monotonicity #2482]: #2484 +#2488 := [monotonicity #2485]: #2487 +#2491 := [monotonicity #2488]: #2490 +#2494 := [quant-intro #2491]: #2493 +#2477 := (iff #1887 #2464) +#2469 := (not #2464) +#2472 := (not #2469) +#2475 := (iff #2472 #2464) +#2476 := [rewrite]: #2475 +#2473 := (iff #1887 #2472) +#2470 := (iff #1882 #2469) +#2467 := (iff #1881 #2464) +#2461 := (and #2458 #1878) +#2465 := (iff #2461 #2464) +#2466 := [rewrite]: #2465 +#2462 := (iff #1881 #2461) +#2459 := (iff #1880 #2458) +#2456 := (iff #1879 #2455) +#2457 := [rewrite]: #2456 +#2460 := [monotonicity #2457]: #2459 +#2463 := [monotonicity #2460]: #2462 +#2468 := [trans #2463 #2466]: #2467 +#2471 := [monotonicity #2468]: #2470 +#2474 := [monotonicity #2471]: #2473 +#2478 := [trans #2474 #2476]: #2477 +#2497 := [monotonicity #2478 #2494]: #2496 +#2502 := [trans #2497 #2500]: #2501 +#2915 := [monotonicity #2502 #2912]: #2914 +#2918 := [monotonicity #2915]: #2917 +#2453 := (iff #1851 #2452) +#2450 := (iff #1850 #2449) +#2447 := (iff #1842 #2446) +#2444 := (= #1841 #2443) +#2445 := [rewrite]: #2444 +#2448 := [monotonicity #2445]: #2447 +#2440 := (iff #1849 #2439) +#2437 := (iff #1848 #2436) +#2438 := [rewrite]: #2437 +#2441 := [monotonicity #2438]: #2440 +#2451 := [monotonicity #2441 #2448]: #2450 +#2454 := [monotonicity #2451]: #2453 +#2921 := [monotonicity #2454 #2918]: #2920 +#2924 := [monotonicity #2921]: #2923 +#2434 := (iff #1821 #2433) +#2431 := (iff #1820 #2430) +#2428 := (iff #1814 #2425) +#2417 := (+ #1811 #1812) +#2420 := (>= #2417 0::int) +#2426 := (iff #2420 #2425) +#2427 := [rewrite]: #2426 +#2421 := (iff #1814 #2420) +#2418 := (= #1813 #2417) +#2419 := [rewrite]: #2418 +#2422 := [monotonicity #2419]: #2421 +#2429 := [trans #2422 #2427]: #2428 +#2415 := (iff #1819 #2414) +#2412 := (iff #1818 #2411) +#2413 := [rewrite]: #2412 +#2416 := [monotonicity #2413]: #2415 +#2432 := [monotonicity #2416 #2429]: #2431 +#2435 := [monotonicity #2432]: #2434 +#2927 := [monotonicity #2435 #2924]: #2926 +#2930 := [monotonicity #2927]: #2929 +#2933 := [monotonicity #2930]: #2932 +#2409 := (iff #1751 #78) +#2410 := [rewrite]: #2409 +#2936 := [monotonicity #2410 #2933]: #2935 +#2939 := [monotonicity #2936]: #2938 +#1725 := (not #1689) +#2404 := (~ #1725 #2403) +#2400 := (not #1686) +#2401 := (~ #2400 #2399) +#2396 := (not #1683) +#2397 := (~ #2396 #2395) +#2392 := (not #1680) +#2393 := (~ #2392 #2391) +#2388 := (not #1677) +#2389 := (~ #2388 #2387) +#2384 := (not #1674) +#2385 := (~ #2384 #2383) +#2380 := (not #1671) +#2381 := (~ #2380 #2379) +#2376 := (not #1668) +#2377 := (~ #2376 #2375) +#2372 := (not #1665) +#2373 := (~ #2372 #2371) +#2368 := (not #1660) +#2369 := (~ #2368 #2367) +#2364 := (not #1631) +#2365 := (~ #2364 #1628) +#2362 := (~ #1628 #1628) +#2360 := (~ #1625 #1625) +#2361 := [refl]: #2360 +#2363 := [nnf-pos #2361]: #2362 +#2366 := [nnf-neg #2363]: #2365 +#2357 := (not #1622) +#2358 := (~ #2357 #1619) +#2355 := (~ #1619 #1619) +#2353 := (~ #1616 #1616) +#2354 := [refl]: #2353 +#2356 := [nnf-pos #2354]: #2355 +#2359 := [nnf-neg #2356]: #2358 +#2350 := (not #1611) +#2351 := (~ #2350 #1608) +#2348 := (~ #1608 #1608) +#2346 := (~ #1605 #1605) +#2347 := [refl]: #2346 +#2349 := [nnf-pos #2347]: #2348 +#2352 := [nnf-neg #2349]: #2351 +#2343 := (not #1588) +#2344 := (~ #2343 #2342) +#2339 := (not #1583) +#2340 := (~ #2339 #2338) +#2336 := (~ #1549 #1549) +#2337 := [refl]: #2336 +#2333 := (not #1544) +#2334 := (~ #2333 #1541) +#2331 := (~ #1541 #1541) +#2329 := (~ #1538 #1538) +#2330 := [refl]: #2329 +#2332 := [nnf-pos #2330]: #2331 +#2335 := [nnf-neg #2332]: #2334 +#2326 := (not #1531) +#2327 := (~ #2326 #1528) +#2324 := (~ #1528 #1528) +#2322 := (~ #1525 #1525) +#2323 := [refl]: #2322 +#2325 := [nnf-pos #2323]: #2324 +#2328 := [nnf-neg #2325]: #2327 +#2319 := (not #1514) +#2320 := (~ #2319 #2318) +#2315 := (not #1511) +#2316 := (~ #2315 #2314) +#2311 := (not #1508) +#2312 := (~ #2311 #2310) +#2307 := (not #1505) +#2308 := (~ #2307 #2306) +#2303 := (not #1502) +#2304 := (~ #2303 #2302) +#2299 := (not #1499) +#2300 := (~ #2299 #2298) +#2295 := (not #1496) +#2296 := (~ #2295 #2294) +#2291 := (not #1493) +#2292 := (~ #2291 #2290) +#2287 := (not #1490) +#2288 := (~ #2287 #2286) +#2283 := (not #1487) +#2284 := (~ #2283 #2282) +#2279 := (not #1484) +#2280 := (~ #2279 #2278) +#2275 := (not #1481) +#2276 := (~ #2275 #2274) +#2256 := (not #1478) +#2272 := (~ #2256 #2269) +#2246 := (exists (vars (?x76 T2)) #2245) +#2254 := (or #2253 #2246) +#2255 := (not #2254) +#2270 := (~ #2255 #2269) +#2266 := (not #2246) +#2267 := (~ #2266 #2265) +#2263 := (~ #2262 #2262) +#2264 := [refl]: #2263 +#2268 := [nnf-neg #2264]: #2267 +#2260 := (~ #2259 #2259) +#2261 := [refl]: #2260 +#2271 := [nnf-neg #2261 #2268]: #2270 +#2257 := (~ #2256 #2255) +#2258 := [sk]: #2257 +#2273 := [trans #2258 #2271]: #2272 +#2232 := (not #1441) +#2233 := (~ #2232 #1438) +#2230 := (~ #1438 #1438) +#2228 := (~ #1435 #1435) +#2229 := [refl]: #2228 +#2231 := [nnf-pos #2229]: #2230 +#2234 := [nnf-neg #2231]: #2233 +#2277 := [nnf-neg #2234 #2273]: #2276 +#2224 := (~ #1441 #2223) +#2225 := [sk]: #2224 +#2281 := [nnf-neg #2225 #2277]: #2280 +#2202 := (not #1417) +#2203 := (~ #2202 #1414) +#2200 := (~ #1414 #1414) +#2198 := (~ #1411 #1411) +#2199 := [refl]: #2198 +#2201 := [nnf-pos #2199]: #2200 +#2204 := [nnf-neg #2201]: #2203 +#2285 := [nnf-neg #2204 #2281]: #2284 +#2194 := (~ #1417 #2193) +#2195 := [sk]: #2194 +#2289 := [nnf-neg #2195 #2285]: #2288 +#2177 := (not #1403) +#2178 := (~ #2177 #1400) +#2175 := (~ #1400 #1400) +#2173 := (~ #1397 #1397) +#2174 := [refl]: #2173 +#2176 := [nnf-pos #2174]: #2175 +#2179 := [nnf-neg #2176]: #2178 +#2293 := [nnf-neg #2179 #2289]: #2292 +#2169 := (~ #1403 #2168) +#2170 := [sk]: #2169 +#2297 := [nnf-neg #2170 #2293]: #2296 +#2163 := (~ #2162 #2162) +#2164 := [refl]: #2163 +#2301 := [nnf-neg #2164 #2297]: #2300 +#2160 := (~ #1394 #1394) +#2161 := [refl]: #2160 +#2305 := [nnf-neg #2161 #2301]: #2304 +#2157 := (not #846) +#2158 := (~ #2157 #710) +#2155 := (~ #710 #710) +#2153 := (~ #705 #705) +#2154 := [refl]: #2153 +#2156 := [nnf-pos #2154]: #2155 +#2159 := [nnf-neg #2156]: #2158 +#2309 := [nnf-neg #2159 #2305]: #2308 +#2149 := (~ #846 #2148) +#2150 := [sk]: #2149 +#2313 := [nnf-neg #2150 #2309]: #2312 +#2138 := (not #1389) +#2139 := (~ #2138 #1386) +#2136 := (~ #1386 #1386) +#2134 := (~ #1381 #1381) +#2135 := [refl]: #2134 +#2137 := [nnf-pos #2135]: #2136 +#2140 := [nnf-neg #2137]: #2139 +#2317 := [nnf-neg #2140 #2313]: #2316 +#2130 := (~ #1389 #2129) +#2131 := [sk]: #2130 +#2321 := [nnf-neg #2131 #2317]: #2320 +#2120 := (not #1378) +#2121 := (~ #2120 #1375) +#2118 := (~ #1375 #1375) +#2116 := (~ #1370 #1370) +#2117 := [refl]: #2116 +#2119 := [nnf-pos #2117]: #2118 +#2122 := [nnf-neg #2119]: #2121 +#2113 := (not #1559) +#2114 := (~ #2113 #2108) +#2109 := (~ #1328 #2108) +#2110 := [sk]: #2109 +#2115 := [nnf-neg #2110]: #2114 +#2098 := (~ #2097 #2097) +#2099 := [refl]: #2098 +#2095 := (~ #181 #181) +#2096 := [refl]: #2095 +#2341 := [nnf-neg #2096 #2099 #2115 #2122 #2321 #2328 #2335 #2337]: #2340 +#2092 := (not #1346) +#2093 := (~ #2092 #2091) +#2089 := (~ #1559 #2088) +#2086 := (~ #2085 #2085) +#2087 := [refl]: #2086 +#2090 := [nnf-neg #2087]: #2089 +#2082 := (not #1322) +#2083 := (~ #2082 #2081) +#2078 := (not #1319) +#2079 := (~ #2078 #2077) +#2074 := (not #1316) +#2075 := (~ #2074 #2073) +#2070 := (not #1311) +#2071 := (~ #2070 #2069) +#2066 := (not #1303) +#2067 := (~ #2066 #1300) +#2064 := (~ #1300 #1300) +#2062 := (~ #1297 #1297) +#2063 := [refl]: #2062 +#2065 := [nnf-pos #2063]: #2064 +#2068 := [nnf-neg #2065]: #2067 +#2060 := (~ #2059 #2059) +#2061 := [refl]: #2060 +#2072 := [nnf-neg #2061 #2068]: #2071 +#2055 := (~ #1303 #2054) +#2056 := [sk]: #2055 +#2076 := [nnf-neg #2056 #2072]: #2075 +#2030 := (not #1285) +#2031 := (~ #2030 #2027) +#2028 := (~ #1282 #2027) +#2025 := (~ #1279 #2024) +#2020 := (~ #1276 #2019) +#2021 := [sk]: #2020 +#2008 := (~ #1260 #1260) +#2009 := [refl]: #2008 +#2026 := [monotonicity #2009 #2021]: #2025 +#2029 := [nnf-pos #2026]: #2028 +#2032 := [nnf-neg #2029]: #2031 +#2080 := [nnf-neg #2032 #2076]: #2079 +#2006 := (~ #1285 #2003) +#1981 := (exists (vars (?x50 T2)) #1980) +#1989 := (or #1988 #1981) +#1990 := (not #1989) +#2004 := (~ #1990 #2003) +#2000 := (not #1981) +#2001 := (~ #2000 #1999) +#1997 := (~ #1996 #1996) +#1998 := [refl]: #1997 +#2002 := [nnf-neg #1998]: #2001 +#1994 := (~ #1993 #1993) +#1995 := [refl]: #1994 +#2005 := [nnf-neg #1995 #2002]: #2004 +#1991 := (~ #1285 #1990) +#1992 := [sk]: #1991 +#2007 := [trans #1992 #2005]: #2006 +#2084 := [nnf-neg #2007 #2080]: #2083 +#1968 := (~ #1967 #1967) +#1969 := [refl]: #1968 +#1965 := (~ #1964 #1964) +#1966 := [refl]: #1965 +#1962 := (~ #1961 #1961) +#1963 := [refl]: #1962 +#1959 := (~ #1958 #1958) +#1960 := [refl]: #1959 +#2094 := [nnf-neg #1960 #1963 #1966 #1969 #2084 #2090]: #2093 +#2345 := [nnf-neg #2094 #2341]: #2344 +#1955 := (not #1248) +#1956 := (~ #1955 #1952) +#1953 := (~ #1245 #1952) +#1950 := (~ #1242 #1949) +#1945 := (~ #1239 #1944) +#1946 := [sk]: #1945 +#1932 := (~ #1215 #1215) +#1933 := [refl]: #1932 +#1951 := [monotonicity #1933 #1946]: #1950 +#1954 := [nnf-pos #1951]: #1953 +#1957 := [nnf-neg #1954]: #1956 +#1929 := (not #1639) +#1930 := (~ #1929 #1926) +#1927 := (~ #1203 #1926) +#1924 := (~ #1200 #1923) +#1919 := (~ #1197 #1918) +#1920 := [sk]: #1919 +#1905 := (~ #1177 #1177) +#1906 := [refl]: #1905 +#1925 := [monotonicity #1906 #1920]: #1924 +#1928 := [nnf-pos #1925]: #1927 +#1931 := [nnf-neg #1928]: #1930 +#1903 := (~ #1902 #1902) +#1904 := [refl]: #1903 +#2370 := [nnf-neg #1904 #1931 #1957 #2345 #2352 #2359 #2366]: #2369 +#1900 := (~ #1639 #1897) +#1875 := (exists (vars (?x38 T2)) #1874) +#1883 := (or #1882 #1875) +#1884 := (not #1883) +#1898 := (~ #1884 #1897) +#1894 := (not #1875) +#1895 := (~ #1894 #1893) +#1891 := (~ #1890 #1890) +#1892 := [refl]: #1891 +#1896 := [nnf-neg #1892]: #1895 +#1888 := (~ #1887 #1887) +#1889 := [refl]: #1888 +#1899 := [nnf-neg #1889 #1896]: #1898 +#1885 := (~ #1639 #1884) +#1886 := [sk]: #1885 +#1901 := [trans #1886 #1899]: #1900 +#2374 := [nnf-neg #1901 #2370]: #2373 +#1860 := (not #1165) +#1861 := (~ #1860 #1162) +#1858 := (~ #1162 #1162) +#1856 := (~ #1159 #1159) +#1857 := [refl]: #1856 +#1859 := [nnf-pos #1857]: #1858 +#1862 := [nnf-neg #1859]: #1861 +#2378 := [nnf-neg #1862 #2374]: #2377 +#1852 := (~ #1165 #1851) +#1853 := [sk]: #1852 +#2382 := [nnf-neg #1853 #2378]: #2381 +#1830 := (not #1139) +#1831 := (~ #1830 #1136) +#1828 := (~ #1136 #1136) +#1826 := (~ #1133 #1133) +#1827 := [refl]: #1826 +#1829 := [nnf-pos #1827]: #1828 +#1832 := [nnf-neg #1829]: #1831 +#2386 := [nnf-neg #1832 #2382]: #2385 +#1822 := (~ #1139 #1821) +#1823 := [sk]: #1822 +#2390 := [nnf-neg #1823 #2386]: #2389 +#1805 := (not #1124) +#1806 := (~ #1805 #1121) +#1803 := (~ #1121 #1121) +#1801 := (~ #1120 #1120) +#1802 := [refl]: #1801 +#1804 := [nnf-pos #1802]: #1803 +#1807 := [nnf-neg #1804]: #1806 +#2394 := [nnf-neg #1807 #2390]: #2393 +#1797 := (~ #1124 #1796) +#1798 := [sk]: #1797 +#2398 := [nnf-neg #1798 #2394]: #2397 +#1752 := (~ #1751 #1751) +#1792 := [refl]: #1752 +#2402 := [nnf-neg #1792 #2398]: #2401 +#1790 := (~ #1115 #1115) +#1791 := [refl]: #1790 +#2405 := [nnf-neg #1791 #2402]: #2404 +#1726 := [not-or-elim #1722]: #1725 +#2406 := [mp~ #1726 #2405]: #2403 +#2407 := [mp #2406 #2939]: #2937 +#3581 := [mp #2407 #3580]: #3578 +#4510 := [mp #3581 #4509]: #4507 +#10108 := [unit-resolution #4510 #5109]: #4504 +#3836 := (or #4501 #4495) +#3679 := [def-axiom]: #3836 +#10111 := [unit-resolution #3679 #10108]: #4495 +#10112 := (or #4498 #4492) +#3753 := (* -1::int #1794) +#3720 := (+ uf_9 #3753) +#3722 := (<= #3720 0::int) +#3827 := (= uf_9 #1794) +#3801 := (= uf_11 ?x27!0) +#3650 := (not #3801) +#3649 := (= #1794 0::int) +#4542 := (not #3649) +#4541 := [hypothesis]: #1796 +#4593 := (or #4542 #1795) +#4594 := [th-lemma]: #4593 +#4595 := [unit-resolution #4594 #4541]: #4542 +#3660 := (or #3659 #3649 #3650) +#3816 := (= ?x27!0 uf_11) +#3651 := (not #3816) +#3652 := (or #3651 #3649) +#3661 := (or #3659 #3652) +#4532 := (iff #3661 #3660) +#3674 := (or #3649 #3650) +#4533 := (or #3659 #3674) +#4536 := (iff #4533 #3660) +#4537 := [rewrite]: #4536 +#4534 := (iff #3661 #4533) +#3672 := (iff #3652 #3674) +#4518 := (or #3650 #3649) +#3658 := (iff #4518 #3674) +#3655 := [rewrite]: #3658 +#3673 := (iff #3652 #4518) +#3653 := (iff #3651 #3650) +#3799 := (iff #3816 #3801) +#3802 := [rewrite]: #3799 +#4517 := [monotonicity #3802]: #3653 +#3665 := [monotonicity #4517]: #3673 +#3656 := [trans #3665 #3655]: #3672 +#4535 := [monotonicity #3656]: #4534 +#4538 := [trans #4535 #4537]: #4532 +#3657 := [quant-inst]: #3661 +#4539 := [mp #3657 #4538]: #3660 +#4596 := [unit-resolution #4539 #4516 #4595]: #3650 +#3784 := (or #3801 #3827) +#4132 := (forall (vars (?x25 T2)) (:pat #4131) #419) +#4135 := (iff #424 #4132) +#4133 := (iff #419 #419) +#4134 := [refl]: #4133 +#4136 := [quant-intro #4134]: #4135 +#1749 := (~ #424 #424) +#1787 := (~ #419 #419) +#1788 := [refl]: #1787 +#1750 := [nnf-pos #1788]: #1749 +#1724 := [not-or-elim #1722]: #424 +#1789 := [mp~ #1724 #1750]: #424 +#4137 := [mp #1789 #4136]: #4132 +#3787 := (not #4132) +#3788 := (or #3787 #3801 #3827) +#3819 := (or #3816 #3827) +#3789 := (or #3787 #3819) +#3751 := (iff #3789 #3788) +#3791 := (or #3787 #3784) +#3742 := (iff #3791 #3788) +#3749 := [rewrite]: #3742 +#3748 := (iff #3789 #3791) +#3786 := (iff #3819 #3784) +#3800 := [monotonicity #3802]: #3786 +#3750 := [monotonicity #3800]: #3748 +#3752 := [trans #3750 #3749]: #3751 +#3790 := [quant-inst]: #3789 +#3743 := [mp #3790 #3752]: #3788 +#4597 := [unit-resolution #3743 #4137]: #3784 +#4598 := [unit-resolution #4597 #4596]: #3827 +#4599 := (not #3827) +#4600 := (or #4599 #3722) +#4601 := [th-lemma]: #4600 +#4581 := [unit-resolution #4601 #4598]: #3722 +#4540 := (<= #1794 0::int) +#4582 := (or #4540 #1795) +#4583 := [th-lemma]: #4582 +#4584 := [unit-resolution #4583 #4541]: #4540 +#349 := (<= uf_9 0::int) +#350 := (not #349) +#54 := (< 0::int uf_9) +#351 := (iff #54 #350) +#352 := [rewrite]: #351 +#345 := [asserted]: #54 +#353 := [mp #345 #352]: #350 +#4585 := [th-lemma #353 #4584 #4581]: false +#4580 := [lemma #4585]: #1795 +#3831 := (or #4498 #1796 #4492) +#3832 := [def-axiom]: #3831 +#10113 := [unit-resolution #3832 #4580]: #10112 +#10114 := [unit-resolution #10113 #10111]: #4492 +#3855 := (or #4489 #4483) +#3856 := [def-axiom]: #3855 +#10107 := [unit-resolution #3856 #10114]: #4483 +#3850 := (or #4486 #1948 #4480) +#3851 := [def-axiom]: #3850 +#10115 := [unit-resolution #3851 #10107]: #4483 +#10116 := [unit-resolution #10115 #10110]: #4480 +#3876 := (or #4477 #4471) +#3877 := [def-axiom]: #3876 +#10117 := [unit-resolution #3877 #10116]: #4471 +#3872 := (or #4474 #2982 #4468) +#3873 := [def-axiom]: #3872 +#10118 := [unit-resolution #3873 #10117 #10109]: #4468 +#3860 := (or #4465 #4459) +#3861 := [def-axiom]: #3860 +#10119 := [unit-resolution #3861 #10118]: #4459 +#10121 := (or #4462 #4456) +#4588 := [hypothesis]: #4176 +#4058 := (or #4173 #2458) +#4059 := [def-axiom]: #4058 +#4725 := [unit-resolution #4059 #4588]: #2458 +#4673 := (= uf_9 #1866) +#4816 := (not #4673) +#3725 := (or #4173 #1878) +#4057 := [def-axiom]: #3725 +#4726 := [unit-resolution #4057 #4588]: #1878 +#4826 := (or #4816 #1877) +#4827 := [th-lemma]: #4826 +#4828 := [unit-resolution #4827 #4726]: #4816 +#4847 := (or #4673 #2455) +#4817 := [hypothesis]: #4816 +#4818 := [hypothesis]: #2458 +#4730 := (or #3787 #2455 #4673) +#4674 := (or #1879 #4673) +#4731 := (or #3787 #4674) +#4717 := (iff #4731 #4730) +#4727 := (or #2455 #4673) +#4733 := (or #3787 #4727) +#4715 := (iff #4733 #4730) +#4716 := [rewrite]: #4715 +#4713 := (iff #4731 #4733) +#4728 := (iff #4674 #4727) +#4729 := [monotonicity #2457]: #4728 +#4714 := [monotonicity #4729]: #4713 +#4712 := [trans #4714 #4716]: #4717 +#4732 := [quant-inst]: #4731 +#4718 := [mp #4732 #4712]: #4730 +#4819 := [unit-resolution #4718 #4137 #4818 #4817]: false +#4849 := [lemma #4819]: #4847 +#4829 := [unit-resolution #4849 #4828 #4725]: false +#4830 := [lemma #4829]: #4173 +#3894 := (or #4462 #4176 #4456) +#3904 := [def-axiom]: #3894 +#10122 := [unit-resolution #3904 #4830]: #10121 +#10123 := [unit-resolution #10122 #10119]: #4456 +#3889 := (or #4453 #4447) +#3848 := [def-axiom]: #3889 +#10335 := [unit-resolution #3848 #10123]: #4447 +#3682 := (not #2696) +#3925 := (or #4453 #106) +#3921 := [def-axiom]: #3925 +#10124 := [unit-resolution #3921 #10123]: #106 +#8213 := (= #161 #105) +#4974 := [hypothesis]: #4289 +#3741 := (or #4286 #509) +#4023 := [def-axiom]: #3741 +#4975 := [unit-resolution #4023 #4974]: #509 +#8228 := [symm #4975]: #142 +#8026 := [monotonicity #8228]: #8213 +#4825 := [trans #8026 #10124]: #162 +#3701 := (or #4262 #2059) +#3702 := [def-axiom]: #3701 +#7196 := [unit-resolution #3702 #4825]: #4262 +#4028 := (or #4286 #4280) +#4017 := [def-axiom]: #4028 +#8815 := [unit-resolution #4017 #4974]: #4280 +#10558 := (or #4240 #614) +#8833 := (?x47!7 ?x49!8) +#8906 := (uf_4 uf_19 #8833) +#8925 := (* -1::int #8906) +#8828 := (uf_4 uf_14 #8833) +#9957 := (+ #8828 #8925) +#9963 := (>= #9957 0::int) +#9956 := (= #8828 #8906) +#10507 := (= #8906 #8828) +#6339 := [hypothesis]: #509 +#10506 := [symm #6339]: #142 +#10508 := [monotonicity #10506]: #10507 +#10509 := [symm #10508]: #9956 +#10510 := (not #9956) +#10505 := (or #10510 #9963) +#10511 := [th-lemma]: #10505 +#10512 := [unit-resolution #10511 #10509]: #9963 +#8834 := (* -1::int #8828) +#8675 := (uf_4 uf_14 ?x49!8) +#8835 := (+ #8675 #8834) +#8836 := (<= #8835 0::int) +#8878 := (not #8836) +#8859 := (up_6 uf_15 #8833) +#8860 := (not #8859) +#8837 := (uf_1 #8833 ?x49!8) +#8838 := (uf_10 #8837) +#8854 := (* -1::int #8838) +#8855 := (+ #8834 #8854) +#8856 := (+ #8675 #8855) +#8857 := (= #8856 0::int) +#8858 := (not #8857) +#8843 := (or #8836 #8858 #8860) +#8846 := (not #8843) +#8810 := (* -1::int #8675) +#8823 := (+ uf_9 #8810) +#8811 := (<= #8823 0::int) +#9028 := (not #8811) +#10513 := [hypothesis]: #4243 +#3711 := (or #4240 #1984) +#3716 := [def-axiom]: #3711 +#10514 := [unit-resolution #3716 #10513]: #1984 +#9024 := (+ #1971 #8810) +#9021 := (>= #9024 0::int) +#9023 := (= #1971 #8675) +#10515 := (= #8675 #1971) +#10516 := [monotonicity #6339]: #10515 +#10517 := [symm #10516]: #9023 +#10518 := (not #9023) +#10519 := (or #10518 #9021) +#10520 := [th-lemma]: #10519 +#10521 := [unit-resolution #10520 #10517]: #9021 +#9020 := (not #9021) +#9029 := (or #9028 #9020 #1983) +#9025 := [hypothesis]: #1984 +#9022 := [hypothesis]: #8811 +#9026 := [hypothesis]: #9021 +#9027 := [th-lemma #9026 #9022 #9025]: false +#8827 := [lemma #9027]: #9029 +#10522 := [unit-resolution #8827 #10521 #10514]: #9028 +#10532 := (or #8811 #8846) +#4052 := (or #4240 #2596) +#3712 := [def-axiom]: #4052 +#10523 := [unit-resolution #3712 #10513]: #2596 +#3914 := (or #4453 #4213) +#3882 := [def-axiom]: #3914 +#10531 := [unit-resolution #3882 #10123]: #4213 +#8851 := (or #4218 #2593 #8811 #8846) +#8861 := (or #8860 #8858 #8836) +#8862 := (not #8861) +#8842 := (or #1985 #8811 #8862) +#8864 := (or #4218 #8842) +#8870 := (iff #8864 #8851) +#8848 := (or #2593 #8811 #8846) +#8866 := (or #4218 #8848) +#8863 := (iff #8866 #8851) +#8869 := [rewrite]: #8863 +#8867 := (iff #8864 #8866) +#8849 := (iff #8842 #8848) +#8841 := (iff #8862 #8846) +#8844 := (iff #8861 #8843) +#8845 := [rewrite]: #8844 +#8847 := [monotonicity #8845]: #8841 +#8850 := [monotonicity #2595 #8847]: #8849 +#8868 := [monotonicity #8850]: #8867 +#8871 := [trans #8868 #8869]: #8870 +#8865 := [quant-inst]: #8864 +#8872 := [mp #8865 #8871]: #8851 +#10533 := [unit-resolution #8872 #10531 #10523]: #10532 +#10534 := [unit-resolution #10533 #10522]: #8846 +#8876 := (or #8843 #8878) +#8879 := [def-axiom]: #8876 +#10535 := [unit-resolution #8879 #10534]: #8878 +#8920 := (+ #1971 #8925) +#8937 := (<= #8920 0::int) +#8982 := (+ #8854 #8925) +#8983 := (+ #1971 #8982) +#9001 := (= #8983 0::int) +#9173 := (<= #8983 0::int) +#9960 := (<= #9957 0::int) +#10536 := (or #10510 #9960) +#10537 := [th-lemma]: #10536 +#10538 := [unit-resolution #10537 #10509]: #9960 +#8873 := (<= #8856 0::int) +#8880 := (or #8843 #8857) +#8881 := [def-axiom]: #8880 +#10539 := [unit-resolution #8881 #10534]: #8857 +#10540 := (or #8858 #8873) +#10541 := [th-lemma]: #10540 +#10542 := [unit-resolution #10541 #10539]: #8873 +#9019 := (<= #9024 0::int) +#10543 := (or #10518 #9019) +#10544 := [th-lemma]: #10543 +#10545 := [unit-resolution #10544 #10517]: #9019 +#10185 := (not #9960) +#10187 := (not #8873) +#10186 := (not #9019) +#10188 := (or #9173 #10186 #10187 #10185) +#10148 := [hypothesis]: #9960 +#10149 := [hypothesis]: #8873 +#10151 := [hypothesis]: #9019 +#10152 := (not #9173) +#10153 := [hypothesis]: #10152 +#10154 := [th-lemma #10153 #10151 #10149 #10148]: false +#10189 := [lemma #10154]: #10188 +#10546 := [unit-resolution #10189 #10545 #10542 #10538]: #9173 +#9157 := (>= #8983 0::int) +#8877 := (>= #8856 0::int) +#10547 := (or #8858 #8877) +#10548 := [th-lemma]: #10547 +#10549 := [unit-resolution #10548 #10539]: #8877 +#10528 := (not #9963) +#10096 := (not #8877) +#10529 := (or #9157 #9020 #10096 #10528) +#10524 := [hypothesis]: #9963 +#10027 := [hypothesis]: #8877 +#10525 := (not #9157) +#10526 := [hypothesis]: #10525 +#10527 := [th-lemma #10526 #9026 #10027 #10524]: false +#10530 := [lemma #10527]: #10529 +#10550 := [unit-resolution #10530 #10521 #10549 #10512]: #9157 +#10551 := (or #9001 #10152 #10525) +#10552 := [th-lemma]: #10551 +#10553 := [unit-resolution #10552 #10550 #10546]: #9001 +#9000 := (not #9001) +#9007 := (or #8937 #9000) +#4053 := (or #4240 #4232) +#3696 := [def-axiom]: #4053 +#10554 := [unit-resolution #3696 #10513]: #4232 +#9111 := (or #4237 #8937 #9000) +#8904 := (+ #1972 #8838) +#8907 := (+ #8906 #8904) +#8908 := (= #8907 0::int) +#8909 := (not #8908) +#8910 := (+ #8906 #1972) +#8914 := (>= #8910 0::int) +#8915 := (or #8914 #8909) +#9120 := (or #4237 #8915) +#9170 := (iff #9120 #9111) +#9167 := (or #4237 #9007) +#9113 := (iff #9167 #9111) +#9169 := [rewrite]: #9113 +#9168 := (iff #9120 #9167) +#9008 := (iff #8915 #9007) +#9005 := (iff #8909 #9000) +#9004 := (iff #8908 #9001) +#8975 := (+ #8838 #8906) +#8976 := (+ #1972 #8975) +#8979 := (= #8976 0::int) +#9002 := (iff #8979 #9001) +#9003 := [rewrite]: #9002 +#8980 := (iff #8908 #8979) +#8977 := (= #8907 #8976) +#8978 := [rewrite]: #8977 +#8981 := [monotonicity #8978]: #8980 +#8999 := [trans #8981 #9003]: #9004 +#9006 := [monotonicity #8999]: #9005 +#8946 := (iff #8914 #8937) +#8916 := (+ #1972 #8906) +#8922 := (>= #8916 0::int) +#8938 := (iff #8922 #8937) +#8945 := [rewrite]: #8938 +#8923 := (iff #8914 #8922) +#8918 := (= #8910 #8916) +#8921 := [rewrite]: #8918 +#8924 := [monotonicity #8921]: #8923 +#8947 := [trans #8924 #8945]: #8946 +#9009 := [monotonicity #8947 #9006]: #9008 +#9112 := [monotonicity #9009]: #9168 +#9171 := [trans #9112 #9169]: #9170 +#9121 := [quant-inst]: #9120 +#9172 := [mp #9121 #9171]: #9111 +#10555 := [unit-resolution #9172 #10554]: #9007 +#10556 := [unit-resolution #10555 #10553]: #8937 +#10557 := [th-lemma #10521 #10556 #10535 #10512]: false +#10559 := [lemma #10557]: #10558 +#8829 := [unit-resolution #10559 #4975]: #4240 +#4030 := (or #4283 #4243 #4277) +#4034 := [def-axiom]: #4030 +#8830 := [unit-resolution #4034 #8829 #8815]: #4277 +#3761 := (or #4274 #4268) +#3654 := [def-axiom]: #3761 +#8831 := [unit-resolution #3654 #8830]: #4268 +#4036 := (or #4271 #4265 #3250) +#3758 := [def-axiom]: #4036 +#8832 := [unit-resolution #3758 #8831 #7196]: #3250 +#4045 := (or #3245 #3682) +#4047 := [def-axiom]: #4045 +#8875 := [unit-resolution #4047 #8832]: #3682 +#3852 := (or #4453 #4188) +#3907 := [def-axiom]: #3852 +#10131 := [unit-resolution #3907 #10123]: #4188 +#4042 := (or #3245 #2046) +#4043 := [def-axiom]: #4042 +#8882 := [unit-resolution #4043 #8832]: #2046 +#4038 := (or #3245 #2050) +#4044 := [def-axiom]: #4038 +#8883 := [unit-resolution #4044 #8832]: #2050 +#4959 := (or #4286 #2045 #4193 #2049 #2696) +#4978 := (uf_4 uf_14 ?x53!11) +#4972 := (= #2035 #4978) +#4976 := (= #4978 #2035) +#4971 := [monotonicity #4975]: #4976 +#4977 := [symm #4971]: #4972 +#4979 := (* -1::int #4978) +#6252 := (+ #2035 #4979) +#6267 := (<= #6252 0::int) +#6377 := (not #6267) +#6280 := [hypothesis]: #3682 +#6333 := [hypothesis]: #2050 +#6336 := [hypothesis]: #4188 +#6338 := [hypothesis]: #2046 +#4027 := (or #4286 #4222) +#4024 := [def-axiom]: #4027 +#4930 := [unit-resolution #4024 #4974]: #4222 +#6383 := (or #6377 #2045 #4227 #4193 #2049 #2696 #614) +#5295 := (uf_4 uf_14 ?x54!10) +#5296 := (* -1::int #5295) +#5291 := (+ uf_9 #5296) +#5297 := (<= #5291 0::int) +#5298 := (up_6 uf_15 ?x54!10) +#5736 := (not #5298) +#5668 := (+ #4979 #5295) +#5669 := (+ #2040 #5668) +#5661 := (>= #5669 0::int) +#6283 := (not #5661) +#6285 := (+ #2037 #5296) +#6297 := (>= #6285 0::int) +#6284 := (= #2037 #5295) +#6298 := (= #5295 #2037) +#6296 := [monotonicity #6339]: #6298 +#6299 := [symm #6296]: #6284 +#6300 := (not #6284) +#6301 := (or #6300 #6297) +#6330 := [th-lemma]: #6301 +#6331 := [unit-resolution #6330 #6299]: #6297 +#6281 := [hypothesis]: #6267 +#6378 := (not #6297) +#6379 := (or #6283 #6377 #2696 #6378) +#6279 := [hypothesis]: #6297 +#6276 := [hypothesis]: #5661 +#6282 := [th-lemma #6276 #6281 #6280 #6279]: false +#6380 := [lemma #6282]: #6379 +#6332 := [unit-resolution #6380 #6281 #6280 #6331]: #6283 +#6337 := (or #5736 #5661) +#5758 := (or #4193 #2049 #5736 #5661) +#5694 := (+ #5295 #4979) +#5695 := (+ #2040 #5694) +#5735 := (>= #5695 0::int) +#5667 := (or #5736 #2049 #5735) +#5763 := (or #4193 #5667) +#6028 := (iff #5763 #5758) +#5759 := (or #2049 #5736 #5661) +#5765 := (or #4193 #5759) +#5998 := (iff #5765 #5758) +#5999 := [rewrite]: #5998 +#5766 := (iff #5763 #5765) +#5762 := (iff #5667 #5759) +#5687 := (or #5736 #2049 #5661) +#5760 := (iff #5687 #5759) +#5761 := [rewrite]: #5760 +#5690 := (iff #5667 #5687) +#5688 := (iff #5735 #5661) +#5670 := (= #5695 #5669) +#5671 := [rewrite]: #5670 +#5689 := [monotonicity #5671]: #5688 +#5691 := [monotonicity #5689]: #5690 +#5757 := [trans #5691 #5761]: #5762 +#5767 := [monotonicity #5757]: #5766 +#6029 := [trans #5767 #5999]: #6028 +#5764 := [quant-inst]: #5763 +#6030 := [mp #5764 #6029]: #5758 +#6266 := [unit-resolution #6030 #6336 #6333]: #6337 +#6278 := [unit-resolution #6266 #6332]: #5736 +#5300 := (or #5297 #5298) +#6257 := [hypothesis]: #4222 +#5326 := (or #4227 #5297 #5298) +#5299 := (or #5298 #5297) +#5327 := (or #4227 #5299) +#5333 := (iff #5327 #5326) +#5329 := (or #4227 #5300) +#5331 := (iff #5329 #5326) +#5332 := [rewrite]: #5331 +#5324 := (iff #5327 #5329) +#5301 := (iff #5299 #5300) +#5325 := [rewrite]: #5301 +#5330 := [monotonicity #5325]: #5324 +#5334 := [trans #5330 #5332]: #5333 +#5328 := [quant-inst]: #5327 +#5382 := [mp #5328 #5334]: #5326 +#6381 := [unit-resolution #5382 #6257]: #5300 +#6376 := [unit-resolution #6381 #6278]: #5297 +#6382 := [th-lemma #6331 #6376 #6338]: false +#6384 := [lemma #6382]: #6383 +#4955 := [unit-resolution #6384 #4930 #6338 #6336 #6333 #6280 #4975]: #6377 +#4956 := (not #4972) +#4957 := (or #4956 #6267) +#4958 := [th-lemma]: #4957 +#4929 := [unit-resolution #4958 #4955 #4977]: false +#4954 := [lemma #4929]: #4959 +#8884 := [unit-resolution #4954 #8883 #8882 #10131 #4974 #8875]: false +#8887 := [lemma #8884]: #4286 +#3923 := (or #4450 #4289 #4444) +#3924 := [def-axiom]: #3923 +#10456 := [unit-resolution #3924 #8887 #10335]: #4444 +#3945 := (or #4441 #189) +#3931 := [def-axiom]: #3945 +#10469 := [unit-resolution #3931 #10456]: #189 +#10470 := [symm #10469]: #7202 +#13610 := (= #11533 #188) +#13435 := (= #10571 uf_22) +#10572 := (= uf_22 #10571) +#13 := (uf_3 #12) +#309 := (= #11 #13) +#4071 := (forall (vars (?x2 T2) (?x3 T2)) (:pat #4070) #309) +#313 := (forall (vars (?x2 T2) (?x3 T2)) #309) +#4074 := (iff #313 #4071) +#4072 := (iff #309 #309) +#4073 := [refl]: #4072 +#4075 := [quant-intro #4073]: #4074 +#1730 := (~ #313 #313) +#1762 := (~ #309 #309) +#1763 := [refl]: #1762 +#1728 := [nnf-pos #1763]: #1730 #14 := (= #13 #11) #15 := (forall (vars (?x2 T2) (?x3 T2)) #14) -#322 := (iff #15 #321) -#319 := (iff #14 #317) -#320 := [rewrite]: #319 -#323 := [quant-intro #320]: #322 -#316 := [asserted]: #15 -#326 := [mp #316 #323]: #321 -#1877 := [mp~ #326 #1841]: #321 -#4202 := [mp #1877 #4201]: #4197 -#8139 := (not #4197) -#12947 := (or #8139 #10449) -#12948 := [quant-inst]: #12947 -#13195 := [unit-resolution #12948 #4202]: #10449 -#13203 := [monotonicity #13195]: #12385 -#13213 := [symm #13203]: #13212 -#13222 := (= #2260 #11132) -#188 := (uf_4 uf_14 uf_22) -#13623 := (= #188 #11132) -#13621 := (= #11132 #188) -#13610 := (= #10448 uf_22) -#10707 := (= #9695 uf_22) -#9696 := (= uf_22 #9695) -#9727 := (or #8139 #9696) -#9731 := [quant-inst]: #9727 -#10706 := [unit-resolution #9731 #4202]: #9696 -#10708 := [symm #10706]: #10707 -#13609 := (= #10448 #9695) -#10319 := (= ?x63!14 #9695) -decl uf_15 :: T4 -#113 := uf_15 -#9518 := (uf_6 uf_15 ?x63!14) -#9519 := (= uf_8 #9518) -decl uf_7 :: (-> T4 T2 T5 T4) -#194 := (uf_7 uf_15 uf_22 uf_8) -#3894 := (uf_6 #194 uf_22) -#3895 := (= uf_8 #3894) -#10330 := (ite #10319 #3895 #9519) -#10323 := (uf_7 uf_15 #9695 #3894) -#10324 := (uf_6 #10323 ?x63!14) -#10327 := (= uf_8 #10324) -#10333 := (iff #10327 #10330) +#314 := (iff #15 #313) +#311 := (iff #14 #309) +#312 := [rewrite]: #311 +#315 := [quant-intro #312]: #314 +#308 := [asserted]: #15 +#318 := [mp #308 #315]: #313 +#1764 := [mp~ #318 #1728]: #313 +#4076 := [mp #1764 #4075]: #4071 +#7845 := (not #4071) +#10578 := (or #7845 #10572) +#10579 := [quant-inst]: #10578 +#13434 := [unit-resolution #10579 #4076]: #10572 +#13436 := [symm #13434]: #13435 +#13611 := [monotonicity #13436]: #13610 +#13613 := [trans #13611 #10470]: #13612 +#27317 := [monotonicity #13613 #27305]: #27316 +#27319 := [symm #27317]: #27318 +#27321 := [monotonicity #27319]: #27320 +#27315 := [hypothesis]: #16890 +#27322 := [mp #27315 #27321]: #27198 +#27164 := (= #10571 #19932) +#25982 := (up_6 uf_15 #19932) +#27170 := (or #25982 #27164) +#27175 := (iff #27162 #27170) #30 := (:var 1 T5) #20 := (:var 2 T2) #29 := (:var 3 T4) #31 := (uf_7 #29 #20 #30) -#32 := (uf_6 #31 #11) -#4216 := (pattern #32) -#36 := (uf_6 #29 #11) -#335 := (= uf_8 #36) -#35 := (= #30 uf_8) +#32 := (up_6 #31 #11) +#4090 := (pattern #32) +#35 := (up_6 #29 #11) +#34 := (= #30 uf_8) #24 := (= #11 #20) -#338 := (ite #24 #35 #335) -#34 := (= #32 uf_8) -#341 := (iff #34 #338) -#4217 := (forall (vars (?x10 T4) (?x11 T2) (?x12 T5) (?x13 T2)) (:pat #4216) #341) -#344 := (forall (vars (?x10 T4) (?x11 T2) (?x12 T5) (?x13 T2)) #341) -#4220 := (iff #344 #4217) -#4218 := (iff #341 #341) -#4219 := [refl]: #4218 -#4221 := [quant-intro #4219]: #4220 -#1848 := (~ #344 #344) -#1884 := (~ #341 #341) -#1885 := [refl]: #1884 -#1849 := [nnf-pos #1885]: #1848 -#37 := (= #36 uf_8) -#38 := (ite #24 #35 #37) -#39 := (iff #34 #38) -#40 := (forall (vars (?x10 T4) (?x11 T2) (?x12 T5) (?x13 T2)) #39) -#345 := (iff #40 #344) -#342 := (iff #39 #341) -#339 := (iff #38 #338) -#336 := (iff #37 #335) -#337 := [rewrite]: #336 -#340 := [monotonicity #337]: #339 -#343 := [monotonicity #340]: #342 -#346 := [quant-intro #343]: #345 -#333 := [asserted]: #40 -#349 := [mp #333 #346]: #344 -#1886 := [mp~ #349 #1849]: #344 -#4222 := [mp #1886 #4221]: #4217 -#4987 := (not #4217) -#13028 := (or #4987 #10333) -#4958 := (= #3894 uf_8) -#10322 := (ite #10319 #4958 #9519) -#10325 := (= #10324 uf_8) -#10326 := (iff #10325 #10322) -#13031 := (or #4987 #10326) -#13033 := (iff #13031 #13028) -#13035 := (iff #13028 #13028) -#13036 := [rewrite]: #13035 -#10334 := (iff #10326 #10333) -#10331 := (iff #10322 #10330) -#4970 := (iff #4958 #3895) -#4971 := [rewrite]: #4970 -#10332 := [monotonicity #4971]: #10331 -#10328 := (iff #10325 #10327) -#10329 := [rewrite]: #10328 -#10335 := [monotonicity #10329 #10332]: #10334 -#13034 := [monotonicity #10335]: #13033 -#13037 := [trans #13034 #13036]: #13033 -#13032 := [quant-inst]: #13031 -#13051 := [mp #13032 #13037]: #13028 -#13579 := [unit-resolution #13051 #4222]: #10333 -#13595 := (= #2257 #10324) -#13584 := (= #10324 #2257) -#13582 := (= #10323 uf_23) -#7680 := (= #194 uf_23) -#195 := (= uf_23 #194) -#4549 := (or #2877 #4546) -#4552 := (not #4549) -#1480 := (* -1::int #202) -#1481 := (+ #110 #1480) -#1479 := (>= #1481 0::int) -#4444 := (forall (vars (?x61 T2)) (:pat #4305 #4426) #1479) -#4449 := (not #4444) -#4555 := (or #4449 #4552) -#4558 := (not #4555) -decl ?x61!13 :: T2 -#2238 := ?x61!13 -#2241 := (uf_4 uf_14 ?x61!13) -#2856 := (* -1::int #2241) -#2239 := (uf_24 ?x61!13) -#2857 := (+ #2239 #2856) -#2858 := (<= #2857 0::int) -#2863 := (not #2858) -#4561 := (or #2863 #4558) -#4564 := (not #4561) -#196 := (uf_1 uf_22 #11) -#4427 := (pattern #196) -#197 := (uf_10 #196) -#1623 := (+ #197 #1480) -#1624 := (+ #188 #1623) -#1625 := (= #1624 0::int) -#1449 := (* -1::int #197) -#1455 := (* -1::int #188) -#1456 := (+ #1455 #1449) -#1457 := (+ #110 #1456) -#1458 := (<= #1457 0::int) -#1450 := (+ uf_9 #1449) -#1451 := (<= #1450 0::int) -#3425 := (or #1451 #1458 #1625) -#4436 := (forall (vars (?x59 T2)) (:pat #4427 #4305 #4426) #3425) -#4441 := (not #4436) -#3405 := (or #1451 #1458) -#3406 := (not #3405) -#3409 := (or #759 #3406) -#4428 := (forall (vars (?x60 T2)) (:pat #4305 #4426 #4427) #3409) -#4433 := (not #4428) -decl ?x48!12 :: T2 -#2214 := ?x48!12 -#2220 := (uf_6 uf_15 ?x48!12) -#2221 := (= uf_8 #2220) -#2215 := (uf_4 uf_14 ?x48!12) -#2216 := (* -1::int #2215) -#2217 := (+ uf_9 #2216) -#2218 := (<= #2217 0::int) -#1655 := (+ uf_9 #1455) -#1656 := (<= #1655 0::int) -#114 := (uf_6 uf_15 #11) -#4347 := (pattern #114) -#1638 := (+ #110 #1455) -#1637 := (>= #1638 0::int) -#478 := (= uf_8 #114) -#1644 := (or #478 #1637) -#4418 := (forall (vars (?x58 T2)) (:pat #4347 #4305) #1644) -#4423 := (not #4418) -#185 := (uf_6 uf_15 uf_22) -#728 := (= uf_8 #185) -#981 := (not #195) -#4567 := (or #981 #728 #4423 #1656 #2218 #2221 #4433 #4441 #4564) -#4570 := (not #4567) -decl ?x53!11 :: T2 -#2148 := ?x53!11 -decl ?x54!10 :: T2 -#2147 := ?x54!10 -#2153 := (uf_1 ?x54!10 ?x53!11) -#2154 := (uf_10 #2153) -#2161 := (* -1::int #2154) -decl uf_19 :: T3 -#146 := uf_19 -#2151 := (uf_4 uf_19 ?x54!10) -#2157 := (* -1::int #2151) -#2813 := (+ #2157 #2161) -#2149 := (uf_4 uf_19 ?x53!11) -#2814 := (+ #2149 #2813) -#2815 := (<= #2814 0::int) -#2162 := (+ uf_9 #2161) -#2163 := (<= #2162 0::int) -#2158 := (+ uf_9 #2157) -#2159 := (<= #2158 0::int) -#3369 := (or #2159 #2163 #2815) -#3374 := (not #3369) -#154 := (uf_4 uf_19 #10) -#1357 := (* -1::int #154) -#151 := (uf_4 uf_19 #11) -#1358 := (+ #151 #1357) -#1364 := (+ #91 #1358) -#1387 := (>= #1364 0::int) -#1344 := (* -1::int #151) -#1345 := (+ uf_9 #1344) -#1346 := (<= #1345 0::int) -#3337 := (or #1237 #1346 #1387) -#4380 := (forall (vars (?x53 T2) (?x54 T2)) (:pat #4281) #3337) -#4385 := (not #4380) -#166 := (uf_4 uf_19 uf_11) -#167 := (= #166 0::int) -#4388 := (or #167 #4385) -#4391 := (not #4388) -#4394 := (or #4391 #3374) -#4397 := (not #4394) -#4356 := (pattern #151) -decl ?x50!9 :: (-> T2 T2) -#2124 := (?x50!9 #11) -#2127 := (uf_1 #2124 #11) -#2128 := (uf_10 #2127) -#2783 := (* -1::int #2128) -#2125 := (uf_4 uf_19 #2124) -#2766 := (* -1::int #2125) -#2784 := (+ #2766 #2783) -#2785 := (+ #151 #2784) -#2786 := (= #2785 0::int) -#3307 := (not #2786) -#2767 := (+ #151 #2766) -#2768 := (<= #2767 0::int) -#3308 := (or #2768 #3307) -#3309 := (not #3308) -#68 := (= #11 uf_11) -#3315 := (or #68 #1346 #3309) -#4372 := (forall (vars (?x49 T2)) (:pat #4356) #3315) -#4377 := (not #4372) -#4400 := (or #4377 #4397) -#4403 := (not #4400) -decl ?x49!8 :: T2 -#2084 := ?x49!8 -#2088 := (uf_1 #11 ?x49!8) -#4357 := (pattern #2088) -#2089 := (uf_10 #2088) -#2085 := (uf_4 uf_19 ?x49!8) -#2086 := (* -1::int #2085) -#2736 := (+ #2086 #2089) -#2737 := (+ #151 #2736) -#2740 := (= #2737 0::int) -#3271 := (not #2740) -#2087 := (+ #151 #2086) -#2092 := (>= #2087 0::int) -#3272 := (or #2092 #3271) -#4358 := (forall (vars (?x50 T2)) (:pat #4356 #4357) #3272) -#4363 := (not #4358) -#2712 := (= uf_11 ?x49!8) -#2096 := (+ uf_9 #2086) -#2097 := (<= #2096 0::int) -#4366 := (or #2097 #2712 #4363) -#4369 := (not #4366) -#4406 := (or #4369 #4403) -#4409 := (not #4406) -#1299 := (* -1::int #110) -#1300 := (+ uf_9 #1299) -#1301 := (<= #1300 0::int) -#3257 := (or #478 #1301) -#4348 := (forall (vars (?x48 T2)) (:pat #4347 #4305) #3257) -#4353 := (not #4348) -#569 := (= uf_14 uf_19) -#674 := (not #569) -decl uf_16 :: T4 -#141 := uf_16 -#566 := (= uf_15 uf_16) -#692 := (not #566) -decl uf_21 :: T3 -#149 := uf_21 -decl uf_20 :: T3 -#148 := uf_20 -#150 := (= uf_20 uf_21) -#665 := (not #150) -decl uf_18 :: T2 -#144 := uf_18 -decl uf_17 :: T2 -#143 := uf_17 -#145 := (= uf_17 uf_18) -#683 := (not #145) -#4412 := (or #683 #665 #692 #674 #4353 #4409) -#108 := (uf_4 uf_14 uf_11) -#109 := (= #108 0::int) -#4415 := (not #4412) -#4573 := (or #4415 #4570) -#4576 := (not #4573) -decl ?x47!7 :: (-> T2 T2) -#2047 := (?x47!7 #11) -#2048 := (uf_4 uf_14 #2047) -#2671 := (* -1::int #2048) -#2686 := (+ #110 #2671) -#2687 := (<= #2686 0::int) -#2052 := (uf_1 #2047 #11) -#2053 := (uf_10 #2052) -#2672 := (* -1::int #2053) -#2673 := (+ #2671 #2672) -#2674 := (+ #110 #2673) -#2675 := (= #2674 0::int) -#3241 := (not #2675) -#2056 := (uf_6 uf_15 #2047) -#2057 := (= uf_8 #2056) -#3240 := (not #2057) -#3242 := (or #3240 #3241 #2687) -#3243 := (not #3242) -#3249 := (or #68 #1301 #3243) -#4339 := (forall (vars (?x46 T2)) (:pat #4305) #3249) -#4344 := (not #4339) -decl uf_12 :: (-> T2 int) -#69 := (uf_12 #11) -#4257 := (pattern #69) -decl ?x38!6 :: (-> T2 T2) -#2020 := (?x38!6 #11) -#2024 := (uf_12 #2020) -#2630 := (* -1::int #2024) -#2021 := (uf_1 #2020 #11) -#2022 := (uf_10 #2021) -#2647 := (* -1::int #2022) -#2648 := (+ #2647 #2630) -#2649 := (+ #69 #2648) -#2650 := (= #2649 0::int) -#3213 := (not #2650) -#2631 := (+ #69 #2630) -#2632 := (<= #2631 0::int) -decl up_13 :: (-> T2 bool) -#2030 := (up_13 #2020) -#3212 := (not #2030) -#3214 := (or #3212 #2632 #3213) -#3215 := (not #3214) -#1261 := (* -1::int #69) -#1262 := (+ uf_9 #1261) -#1263 := (<= #1262 0::int) -#3221 := (or #68 #1263 #3215) -#4331 := (forall (vars (?x37 T2)) (:pat #4257) #3221) -#4336 := (not #4331) -#117 := (uf_6 uf_15 #10) -#4322 := (pattern #114 #117) -#120 := (uf_4 uf_14 #10) -#1313 := (* -1::int #120) -#1314 := (+ #110 #1313) -#1317 := (>= #1314 0::int) -#484 := (= uf_8 #117) -#3178 := (not #484) -#3193 := (or #478 #3178 #1317) -#4323 := (forall (vars (?x42 T2) (?x43 T2)) (:pat #4322) #3193) -#4328 := (not #4323) -#1315 := (+ #91 #1314) -#1710 := (>= #1315 0::int) -#481 := (not #478) -#3170 := (or #481 #1237 #1710) -#4314 := (forall (vars (?x44 T2) (?x45 T2)) (:pat #4281) #3170) -#4319 := (not #4314) -#1738 := (>= #110 0::int) -#4306 := (forall (vars (?x41 T2)) (:pat #4305) #1738) -#4311 := (not #4306) -#1749 := (not #109) -#4579 := (or #1749 #4311 #4319 #4328 #4336 #4344 #4576) -#4582 := (not #4579) -decl ?x37!5 :: T2 -#1976 := ?x37!5 -#1977 := (uf_1 #11 ?x37!5) -#4290 := (pattern #1977) -#77 := (up_13 #11) -#4250 := (pattern #77) -#1979 := (uf_12 ?x37!5) -#1980 := (* -1::int #1979) -#1978 := (uf_10 #1977) -#2598 := (+ #1978 #1980) -#2599 := (+ #69 #2598) -#2602 := (= #2599 0::int) -#3131 := (not #2602) -#1984 := (+ #69 #1980) -#1985 := (>= #1984 0::int) -#78 := (not #77) -#3132 := (or #78 #1985 #3131) -#4291 := (forall (vars (?x38 T2)) (:pat #4250 #4257 #4290) #3132) -#4296 := (not #4291) -#2574 := (= uf_11 ?x37!5) -#1989 := (+ uf_9 #1980) -#1990 := (<= #1989 0::int) -#4299 := (or #1990 #2574 #4296) -#5019 := (= uf_9 #1979) -#5185 := (not #5019) -#1991 := (not #1990) -#4302 := (not #4299) -#5183 := [hypothesis]: #4302 -#4176 := (or #4299 #1991) -#3850 := [def-axiom]: #4176 -#5184 := [unit-resolution #3850 #5183]: #1991 -#5186 := (or #5185 #1990) -#5193 := [th-lemma]: #5186 -#5194 := [unit-resolution #5193 #5184]: #5185 -#2577 := (not #2574) -#3851 := (or #4299 #2577) -#4183 := [def-axiom]: #3851 -#5192 := [unit-resolution #4183 #5183]: #2577 -#437 := (= uf_9 #69) -#443 := (or #68 #437) -#4258 := (forall (vars (?x25 T2)) (:pat #4257) #443) -#448 := (forall (vars (?x25 T2)) #443) -#4261 := (iff #448 #4258) -#4259 := (iff #443 #443) -#4260 := [refl]: #4259 -#4262 := [quant-intro #4260]: #4261 -#1862 := (~ #448 #448) -#1900 := (~ #443 #443) -#1901 := [refl]: #1900 -#1863 := [nnf-pos #1901]: #1862 -#70 := (= #69 0::int) -#73 := (not #68) -#1807 := (or #73 #70) -#1810 := (forall (vars (?x24 T2)) #1807) -#1813 := (not #1810) -#1741 := (forall (vars (?x41 T2)) #1738) -#1744 := (not #1741) -#487 := (and #481 #484) -#493 := (not #487) -#1727 := (or #493 #1317) -#1732 := (forall (vars (?x42 T2) (?x43 T2)) #1727) -#1735 := (not #1732) -#1238 := (not #1237) -#1702 := (and #478 #1238) -#1707 := (not #1702) -#1713 := (or #1707 #1710) -#1716 := (forall (vars (?x44 T2) (?x45 T2)) #1713) -#1719 := (not #1716) -#1649 := (forall (vars (?x58 T2)) #1644) -#1652 := (not #1649) -#1459 := (not #1458) -#1452 := (not #1451) -#1462 := (and #1452 #1459) -#1620 := (not #1462) -#1628 := (or #1620 #1625) -#1631 := (forall (vars (?x59 T2)) #1628) -#1634 := (not #1631) -#1558 := (= #1536 0::int) -#1561 := (not #1504) -#1570 := (and #773 #1561 #1558) -#1575 := (exists (vars (?x76 T2)) #1570) -#1547 := (+ uf_9 #1480) -#1548 := (<= #1547 0::int) -#1549 := (not #1548) -#1552 := (and #73 #1549) -#1555 := (not #1552) -#1578 := (or #1555 #1575) -#1581 := (forall (vars (?x75 T2)) #1578) -#1526 := (and #773 #1238) -#1531 := (not #1526) -#1538 := (or #1531 #1534) -#1541 := (forall (vars (?x71 T2) (?x72 T2)) #1538) -#1544 := (not #1541) -#1584 := (or #1544 #1581) -#1587 := (and #1541 #1584) -#796 := (and #779 #793) -#802 := (not #796) -#1512 := (or #802 #1504) -#1517 := (forall (vars (?x67 T2) (?x68 T2)) #1512) -#1520 := (not #1517) -#1590 := (or #1520 #1587) -#1593 := (and #1517 #1590) -#1498 := (forall (vars (?x65 T2)) #1495) -#1501 := (not #1498) -#1596 := (or #1501 #1593) -#1599 := (and #1498 #1596) -#1602 := (or #1492 #1599) -#1605 := (and #217 #1602) -#785 := (forall (vars (?x63 T2)) #780) -#939 := (not #785) -#1608 := (or #939 #1605) -#1611 := (and #785 #1608) -#1484 := (forall (vars (?x61 T2)) #1479) -#1487 := (not #1484) -#1614 := (or #1487 #1611) -#1617 := (and #1484 #1614) -#1468 := (or #759 #1462) -#1473 := (forall (vars (?x60 T2)) #1468) -#1476 := (not #1473) -#1302 := (not #1301) -#1421 := (and #481 #1302) -#1426 := (exists (vars (?x48 T2)) #1421) -#1667 := (not #1426) -#1691 := (or #981 #728 #1667 #1476 #1617 #1634 #1652 #1656) -#1347 := (not #1346) -#1381 := (and #1238 #1347) -#1384 := (not #1381) -#1390 := (or #1384 #1387) -#1393 := (forall (vars (?x53 T2) (?x54 T2)) #1390) -#1396 := (not #1393) -#1404 := (or #167 #1396) -#1409 := (and #1393 #1404) -#1362 := (= #1364 0::int) -#1356 := (>= #1358 0::int) -#1359 := (not #1356) -#1366 := (and #1359 #1362) -#1369 := (exists (vars (?x50 T2)) #1366) -#1350 := (and #73 #1347) -#1353 := (not #1350) -#1372 := (or #1353 #1369) -#1375 := (forall (vars (?x49 T2)) #1372) -#1378 := (not #1375) -#1412 := (or #1378 #1409) -#1415 := (and #1375 #1412) -#1444 := (or #683 #665 #692 #674 #1415 #1426) -#1696 := (and #1444 #1691) -#1318 := (not #1317) -#1311 := (= #1315 0::int) -#1327 := (and #478 #1311 #1318) -#1332 := (exists (vars (?x47 T2)) #1327) -#1305 := (and #73 #1302) -#1308 := (not #1305) -#1335 := (or #1308 #1332) -#1338 := (forall (vars (?x46 T2)) #1335) -#1341 := (not #1338) -#86 := (uf_12 #10) -#1223 := (* -1::int #86) -#1250 := (+ #1223 #91) -#1251 := (+ #69 #1250) -#1273 := (= #1251 0::int) -#1224 := (+ #69 #1223) -#1222 := (>= #1224 0::int) -#1276 := (not #1222) -#1285 := (and #77 #1276 #1273) -#1290 := (exists (vars (?x38 T2)) #1285) -#1264 := (not #1263) -#1267 := (and #73 #1264) -#1270 := (not #1267) -#1293 := (or #1270 #1290) -#1296 := (forall (vars (?x37 T2)) #1293) -#1752 := (not #1296) -#1773 := (or #1749 #1752 #1341 #1696 #1719 #1735 #1744) -#1778 := (and #1296 #1773) -#1248 := (>= #1251 0::int) -#1241 := (and #77 #1238) -#1244 := (not #1241) -#1252 := (or #1244 #1248) -#1255 := (forall (vars (?x33 T2) (?x34 T2)) #1252) -#1258 := (not #1255) -#1781 := (or #1258 #1778) -#1784 := (and #1255 #1781) -#84 := (up_13 #10) -#85 := (and #78 #84) -#454 := (not #85) -#1226 := (or #454 #1222) -#1229 := (forall (vars (?x29 T2) (?x30 T2)) #1226) -#1232 := (not #1229) -#1787 := (or #1232 #1784) -#1790 := (and #1229 #1787) -#1213 := (>= #69 0::int) -#1214 := (forall (vars (?x27 T2)) #1213) -#1217 := (not #1214) -#1793 := (or #1217 #1790) -#1796 := (and #1214 #1793) -#80 := (uf_12 uf_11) -#81 := (= #80 0::int) -#1208 := (not #81) -#1799 := (or #1208 #1796) -#1802 := (and #81 #1799) -#1177 := (not #448) -#79 := (forall (vars (?x26 T2)) #78) -#1168 := (not #79) -#1825 := (or #1168 #1177 #1802 #1813) -#1830 := (not #1825) -#1 := true -#242 := (implies false true) -#229 := (+ #202 #91) -#236 := (= #224 #229) -#213 := (= #212 uf_8) -#237 := (and #213 #236) -#235 := (< #202 #224) -#238 := (and #235 #237) -#239 := (exists (vars (?x76 T2)) #238) -#233 := (< #202 uf_9) -#234 := (and #73 #233) -#240 := (implies #234 #239) -#241 := (forall (vars (?x75 T2)) #240) -#243 := (implies #241 #242) -#244 := (and #241 #243) -#230 := (<= #224 #229) -#92 := (< #91 uf_9) -#228 := (and #213 #92) -#231 := (implies #228 #230) -#232 := (forall (vars (?x71 T2) (?x72 T2)) #231) -#245 := (implies #232 #244) -#246 := (and #232 #245) -#225 := (<= #224 #202) -#222 := (= #221 uf_8) -#220 := (not #213) -#223 := (and #220 #222) -#226 := (implies #223 #225) -#227 := (forall (vars (?x67 T2) (?x68 T2)) #226) -#247 := (implies #227 #246) -#248 := (and #227 #247) -#218 := (<= 0::int #202) -#219 := (forall (vars (?x65 T2)) #218) -#249 := (implies #219 #248) -#250 := (and #219 #249) -#251 := (implies #217 #250) -#252 := (and #217 #251) -#253 := (implies true #252) -#254 := (implies true #253) -#207 := (= #202 #110) -#214 := (implies #213 #207) -#215 := (forall (vars (?x63 T2)) #214) -#255 := (implies #215 #254) -#256 := (and #215 #255) -#210 := (<= #202 #110) -#211 := (forall (vars (?x61 T2)) #210) -#257 := (implies #211 #256) -#258 := (and #211 #257) -#199 := (+ #188 #197) -#200 := (< #199 #110) -#198 := (< #197 uf_9) -#201 := (and #198 #200) -#206 := (not #201) -#208 := (implies #206 #207) -#209 := (forall (vars (?x60 T2)) #208) -#259 := (implies #209 #258) -#203 := (= #202 #199) -#204 := (implies #201 #203) -#205 := (forall (vars (?x59 T2)) #204) -#260 := (implies #205 #259) -#261 := (implies #195 #260) -#190 := (<= #188 #110) -#115 := (= #114 uf_8) -#116 := (not #115) -#191 := (implies #116 #190) -#192 := (forall (vars (?x58 T2)) #191) -#262 := (implies #192 #261) -#189 := (< #188 uf_9) -#263 := (implies #189 #262) -#186 := (= #185 uf_8) -#187 := (not #186) -#264 := (implies #187 #263) -#129 := (< #110 uf_9) -#138 := (and #116 #129) -#139 := (exists (vars (?x48 T2)) #138) -#265 := (implies #139 #264) -#266 := (implies true #265) -#267 := (implies true #266) -#168 := (implies #167 true) -#169 := (and #167 #168) -#156 := (+ #151 #91) -#163 := (<= #154 #156) -#152 := (< #151 uf_9) -#162 := (and #152 #92) -#164 := (implies #162 #163) -#165 := (forall (vars (?x53 T2) (?x54 T2)) #164) -#170 := (implies #165 #169) -#171 := (and #165 #170) -#157 := (= #154 #156) -#155 := (< #151 #154) -#158 := (and #155 #157) -#159 := (exists (vars (?x50 T2)) #158) -#153 := (and #73 #152) -#160 := (implies #153 #159) -#161 := (forall (vars (?x49 T2)) #160) -#172 := (implies #161 #171) -#173 := (and #161 #172) -#174 := (implies true #173) -#175 := (implies #150 #174) -#147 := (= uf_19 uf_14) -#176 := (implies #147 #175) -#177 := (implies #145 #176) -#142 := (= uf_16 uf_15) -#178 := (implies #142 #177) -#179 := (implies true #178) -#180 := (implies true #179) -#140 := (not #139) -#181 := (implies #140 #180) -#182 := (implies true #181) -#183 := (implies true #182) -#268 := (and #183 #267) -#269 := (implies true #268) -#125 := (+ #110 #91) -#132 := (= #120 #125) -#133 := (and #115 #132) -#131 := (< #110 #120) -#134 := (and #131 #133) -#135 := (exists (vars (?x47 T2)) #134) -#130 := (and #73 #129) -#136 := (implies #130 #135) -#137 := (forall (vars (?x46 T2)) #136) -#270 := (implies #137 #269) -#126 := (<= #120 #125) -#124 := (and #115 #92) -#127 := (implies #124 #126) -#128 := (forall (vars (?x44 T2) (?x45 T2)) #127) -#271 := (implies #128 #270) -#121 := (<= #120 #110) -#118 := (= #117 uf_8) -#119 := (and #116 #118) -#122 := (implies #119 #121) -#123 := (forall (vars (?x42 T2) (?x43 T2)) #122) -#272 := (implies #123 #271) -#111 := (<= 0::int #110) -#112 := (forall (vars (?x41 T2)) #111) -#273 := (implies #112 #272) -#274 := (implies #109 #273) -#275 := (implies true #274) -#276 := (implies true #275) -#94 := (+ #69 #91) -#101 := (= #86 #94) -#102 := (and #77 #101) -#100 := (< #69 #86) -#103 := (and #100 #102) -#104 := (exists (vars (?x38 T2)) #103) -#98 := (< #69 uf_9) -#99 := (and #73 #98) -#105 := (implies #99 #104) -#106 := (forall (vars (?x37 T2)) #105) -#277 := (implies #106 #276) -#278 := (and #106 #277) -#95 := (<= #86 #94) -#93 := (and #77 #92) -#96 := (implies #93 #95) -#97 := (forall (vars (?x33 T2) (?x34 T2)) #96) -#279 := (implies #97 #278) -#280 := (and #97 #279) -#87 := (<= #86 #69) -#88 := (implies #85 #87) -#89 := (forall (vars (?x29 T2) (?x30 T2)) #88) -#281 := (implies #89 #280) -#282 := (and #89 #281) -#82 := (<= 0::int #69) -#83 := (forall (vars (?x27 T2)) #82) -#283 := (implies #83 #282) -#284 := (and #83 #283) -#285 := (implies #81 #284) -#286 := (and #81 #285) -#287 := (implies true #286) -#288 := (implies #79 #287) -#74 := (= #69 uf_9) -#75 := (implies #73 #74) -#76 := (forall (vars (?x25 T2)) #75) -#289 := (implies #76 #288) -#71 := (implies #68 #70) -#72 := (forall (vars (?x24 T2)) #71) -#290 := (implies #72 #289) -#291 := (implies true #290) -#292 := (implies true #291) -#293 := (not #292) -#1833 := (iff #293 #1830) -#819 := (+ #91 #202) -#837 := (= #224 #819) -#840 := (and #773 #837) -#843 := (and #235 #840) -#846 := (exists (vars (?x76 T2)) #843) -#852 := (not #234) -#853 := (or #852 #846) -#858 := (forall (vars (?x75 T2)) #853) -#822 := (<= #224 #819) -#814 := (and #92 #773) -#828 := (not #814) -#829 := (or #828 #822) -#834 := (forall (vars (?x71 T2) (?x72 T2)) #829) -#880 := (not #834) -#881 := (or #880 #858) -#886 := (and #834 #881) -#803 := (or #225 #802) -#808 := (forall (vars (?x67 T2) (?x68 T2)) #803) -#892 := (not #808) -#893 := (or #892 #886) -#898 := (and #808 #893) -#904 := (not #219) -#905 := (or #904 #898) -#910 := (and #219 #905) -#788 := (= 0::int #216) -#916 := (not #788) -#917 := (or #916 #910) -#922 := (and #788 #917) -#940 := (or #939 #922) -#945 := (and #785 #940) -#951 := (not #211) -#952 := (or #951 #945) -#957 := (and #211 #952) -#765 := (or #201 #759) -#770 := (forall (vars (?x60 T2)) #765) -#963 := (not #770) -#964 := (or #963 #957) -#745 := (= #199 #202) -#751 := (or #206 #745) -#756 := (forall (vars (?x59 T2)) #751) -#972 := (not #756) -#973 := (or #972 #964) -#982 := (or #981 #973) -#737 := (or #190 #478) -#742 := (forall (vars (?x58 T2)) #737) -#990 := (not #742) -#991 := (or #990 #982) -#999 := (not #189) -#1000 := (or #999 #991) -#1008 := (or #728 #1000) -#555 := (and #129 #481) -#560 := (exists (vars (?x48 T2)) #555) -#563 := (not #560) -#1016 := (or #563 #1008) -#614 := (= 0::int #166) -#572 := (+ #91 #151) -#599 := (<= #154 #572) -#596 := (and #92 #152) -#605 := (not #596) -#606 := (or #605 #599) -#611 := (forall (vars (?x53 T2) (?x54 T2)) #606) -#634 := (not #611) -#635 := (or #634 #614) -#640 := (and #611 #635) -#575 := (= #154 #572) -#578 := (and #155 #575) -#581 := (exists (vars (?x50 T2)) #578) -#587 := (not #153) -#588 := (or #587 #581) -#593 := (forall (vars (?x49 T2)) #588) -#646 := (not #593) -#647 := (or #646 #640) -#652 := (and #593 #647) -#666 := (or #665 #652) -#675 := (or #674 #666) -#684 := (or #683 #675) -#693 := (or #692 #684) -#712 := (or #560 #693) -#1032 := (and #712 #1016) -#510 := (+ #91 #110) -#528 := (= #120 #510) -#531 := (and #478 #528) -#534 := (and #131 #531) -#537 := (exists (vars (?x47 T2)) #534) -#543 := (not #130) -#544 := (or #543 #537) -#549 := (forall (vars (?x46 T2)) #544) -#1045 := (not #549) -#1046 := (or #1045 #1032) -#513 := (<= #120 #510) -#505 := (and #92 #478) -#519 := (not #505) -#520 := (or #519 #513) -#525 := (forall (vars (?x44 T2) (?x45 T2)) #520) -#1054 := (not #525) -#1055 := (or #1054 #1046) -#494 := (or #121 #493) -#499 := (forall (vars (?x42 T2) (?x43 T2)) #494) -#1063 := (not #499) -#1064 := (or #1063 #1055) -#1072 := (not #112) -#1073 := (or #1072 #1064) -#475 := (= 0::int #108) -#1081 := (not #475) -#1082 := (or #1081 #1073) -#468 := (not #99) -#469 := (or #468 #104) -#472 := (forall (vars (?x37 T2)) #469) -#1101 := (not #472) -#1102 := (or #1101 #1082) -#1107 := (and #472 #1102) -#461 := (not #93) -#462 := (or #461 #95) -#465 := (forall (vars (?x33 T2) (?x34 T2)) #462) -#1113 := (not #465) -#1114 := (or #1113 #1107) -#1119 := (and #465 #1114) -#455 := (or #454 #87) -#458 := (forall (vars (?x29 T2) (?x30 T2)) #455) -#1125 := (not #458) -#1126 := (or #1125 #1119) -#1131 := (and #458 #1126) -#1137 := (not #83) -#1138 := (or #1137 #1131) -#1143 := (and #83 #1138) -#451 := (= 0::int #80) -#1149 := (not #451) -#1150 := (or #1149 #1143) -#1155 := (and #451 #1150) -#1169 := (or #1168 #1155) -#1178 := (or #1177 #1169) -#423 := (= 0::int #69) -#429 := (or #73 #423) -#434 := (forall (vars (?x24 T2)) #429) -#1186 := (not #434) -#1187 := (or #1186 #1178) -#1203 := (not #1187) -#1831 := (iff #1203 #1830) -#1828 := (iff #1187 #1825) -#1816 := (or #1168 #1802) -#1819 := (or #1177 #1816) -#1822 := (or #1813 #1819) -#1826 := (iff #1822 #1825) -#1827 := [rewrite]: #1826 -#1823 := (iff #1187 #1822) -#1820 := (iff #1178 #1819) -#1817 := (iff #1169 #1816) -#1803 := (iff #1155 #1802) -#1800 := (iff #1150 #1799) -#1797 := (iff #1143 #1796) -#1794 := (iff #1138 #1793) -#1791 := (iff #1131 #1790) -#1788 := (iff #1126 #1787) -#1785 := (iff #1119 #1784) -#1782 := (iff #1114 #1781) -#1779 := (iff #1107 #1778) -#1776 := (iff #1102 #1773) -#1755 := (or #1341 #1696) -#1758 := (or #1719 #1755) -#1761 := (or #1735 #1758) -#1764 := (or #1744 #1761) -#1767 := (or #1749 #1764) -#1770 := (or #1752 #1767) -#1774 := (iff #1770 #1773) -#1775 := [rewrite]: #1774 -#1771 := (iff #1102 #1770) -#1768 := (iff #1082 #1767) -#1765 := (iff #1073 #1764) -#1762 := (iff #1064 #1761) -#1759 := (iff #1055 #1758) -#1756 := (iff #1046 #1755) -#1697 := (iff #1032 #1696) -#1694 := (iff #1016 #1691) -#1670 := (or #1476 #1617) -#1673 := (or #1634 #1670) -#1676 := (or #981 #1673) -#1679 := (or #1652 #1676) -#1682 := (or #1656 #1679) -#1685 := (or #728 #1682) -#1688 := (or #1667 #1685) -#1692 := (iff #1688 #1691) -#1693 := [rewrite]: #1692 -#1689 := (iff #1016 #1688) -#1686 := (iff #1008 #1685) -#1683 := (iff #1000 #1682) -#1680 := (iff #991 #1679) -#1677 := (iff #982 #1676) -#1674 := (iff #973 #1673) -#1671 := (iff #964 #1670) -#1618 := (iff #957 #1617) -#1615 := (iff #952 #1614) -#1612 := (iff #945 #1611) -#1609 := (iff #940 #1608) -#1606 := (iff #922 #1605) -#1603 := (iff #917 #1602) -#1600 := (iff #910 #1599) -#1597 := (iff #905 #1596) -#1594 := (iff #898 #1593) -#1591 := (iff #893 #1590) -#1588 := (iff #886 #1587) -#1585 := (iff #881 #1584) -#1582 := (iff #858 #1581) -#1579 := (iff #853 #1578) -#1576 := (iff #846 #1575) -#1573 := (iff #843 #1570) -#1564 := (and #773 #1558) -#1567 := (and #1561 #1564) -#1571 := (iff #1567 #1570) -#1572 := [rewrite]: #1571 -#1568 := (iff #843 #1567) -#1565 := (iff #840 #1564) -#1559 := (iff #837 #1558) -#1560 := [rewrite]: #1559 -#1566 := [monotonicity #1560]: #1565 -#1562 := (iff #235 #1561) -#1563 := [rewrite]: #1562 -#1569 := [monotonicity #1563 #1566]: #1568 -#1574 := [trans #1569 #1572]: #1573 -#1577 := [quant-intro #1574]: #1576 -#1556 := (iff #852 #1555) -#1553 := (iff #234 #1552) -#1550 := (iff #233 #1549) -#1551 := [rewrite]: #1550 -#1554 := [monotonicity #1551]: #1553 -#1557 := [monotonicity #1554]: #1556 -#1580 := [monotonicity #1557 #1577]: #1579 -#1583 := [quant-intro #1580]: #1582 -#1545 := (iff #880 #1544) -#1542 := (iff #834 #1541) -#1539 := (iff #829 #1538) -#1535 := (iff #822 #1534) -#1537 := [rewrite]: #1535 -#1532 := (iff #828 #1531) -#1529 := (iff #814 #1526) -#1523 := (and #1238 #773) -#1527 := (iff #1523 #1526) -#1528 := [rewrite]: #1527 -#1524 := (iff #814 #1523) -#1239 := (iff #92 #1238) -#1240 := [rewrite]: #1239 -#1525 := [monotonicity #1240]: #1524 -#1530 := [trans #1525 #1528]: #1529 -#1533 := [monotonicity #1530]: #1532 -#1540 := [monotonicity #1533 #1537]: #1539 -#1543 := [quant-intro #1540]: #1542 -#1546 := [monotonicity #1543]: #1545 -#1586 := [monotonicity #1546 #1583]: #1585 -#1589 := [monotonicity #1543 #1586]: #1588 -#1521 := (iff #892 #1520) -#1518 := (iff #808 #1517) -#1515 := (iff #803 #1512) -#1509 := (or #1504 #802) -#1513 := (iff #1509 #1512) -#1514 := [rewrite]: #1513 -#1510 := (iff #803 #1509) -#1507 := (iff #225 #1504) -#1508 := [rewrite]: #1507 -#1511 := [monotonicity #1508]: #1510 -#1516 := [trans #1511 #1514]: #1515 -#1519 := [quant-intro #1516]: #1518 -#1522 := [monotonicity #1519]: #1521 -#1592 := [monotonicity #1522 #1589]: #1591 -#1595 := [monotonicity #1519 #1592]: #1594 -#1502 := (iff #904 #1501) -#1499 := (iff #219 #1498) -#1496 := (iff #218 #1495) -#1497 := [rewrite]: #1496 -#1500 := [quant-intro #1497]: #1499 -#1503 := [monotonicity #1500]: #1502 -#1598 := [monotonicity #1503 #1595]: #1597 -#1601 := [monotonicity #1500 #1598]: #1600 -#1493 := (iff #916 #1492) -#1490 := (iff #788 #217) -#1491 := [rewrite]: #1490 -#1494 := [monotonicity #1491]: #1493 -#1604 := [monotonicity #1494 #1601]: #1603 -#1607 := [monotonicity #1491 #1604]: #1606 -#1610 := [monotonicity #1607]: #1609 -#1613 := [monotonicity #1610]: #1612 -#1488 := (iff #951 #1487) -#1485 := (iff #211 #1484) -#1482 := (iff #210 #1479) -#1483 := [rewrite]: #1482 -#1486 := [quant-intro #1483]: #1485 -#1489 := [monotonicity #1486]: #1488 -#1616 := [monotonicity #1489 #1613]: #1615 -#1619 := [monotonicity #1486 #1616]: #1618 -#1477 := (iff #963 #1476) -#1474 := (iff #770 #1473) -#1471 := (iff #765 #1468) -#1465 := (or #1462 #759) -#1469 := (iff #1465 #1468) -#1470 := [rewrite]: #1469 -#1466 := (iff #765 #1465) -#1463 := (iff #201 #1462) -#1460 := (iff #200 #1459) -#1461 := [rewrite]: #1460 -#1453 := (iff #198 #1452) -#1454 := [rewrite]: #1453 -#1464 := [monotonicity #1454 #1461]: #1463 -#1467 := [monotonicity #1464]: #1466 -#1472 := [trans #1467 #1470]: #1471 -#1475 := [quant-intro #1472]: #1474 -#1478 := [monotonicity #1475]: #1477 -#1672 := [monotonicity #1478 #1619]: #1671 -#1635 := (iff #972 #1634) -#1632 := (iff #756 #1631) -#1629 := (iff #751 #1628) -#1626 := (iff #745 #1625) -#1627 := [rewrite]: #1626 -#1621 := (iff #206 #1620) -#1622 := [monotonicity #1464]: #1621 -#1630 := [monotonicity #1622 #1627]: #1629 -#1633 := [quant-intro #1630]: #1632 -#1636 := [monotonicity #1633]: #1635 -#1675 := [monotonicity #1636 #1672]: #1674 -#1678 := [monotonicity #1675]: #1677 -#1653 := (iff #990 #1652) -#1650 := (iff #742 #1649) -#1647 := (iff #737 #1644) -#1641 := (or #1637 #478) -#1645 := (iff #1641 #1644) -#1646 := [rewrite]: #1645 -#1642 := (iff #737 #1641) -#1639 := (iff #190 #1637) -#1640 := [rewrite]: #1639 -#1643 := [monotonicity #1640]: #1642 -#1648 := [trans #1643 #1646]: #1647 -#1651 := [quant-intro #1648]: #1650 -#1654 := [monotonicity #1651]: #1653 -#1681 := [monotonicity #1654 #1678]: #1680 -#1665 := (iff #999 #1656) -#1657 := (not #1656) -#1660 := (not #1657) -#1663 := (iff #1660 #1656) -#1664 := [rewrite]: #1663 -#1661 := (iff #999 #1660) -#1658 := (iff #189 #1657) -#1659 := [rewrite]: #1658 -#1662 := [monotonicity #1659]: #1661 -#1666 := [trans #1662 #1664]: #1665 -#1684 := [monotonicity #1666 #1681]: #1683 -#1687 := [monotonicity #1684]: #1686 -#1668 := (iff #563 #1667) -#1427 := (iff #560 #1426) -#1424 := (iff #555 #1421) -#1418 := (and #1302 #481) -#1422 := (iff #1418 #1421) -#1423 := [rewrite]: #1422 -#1419 := (iff #555 #1418) -#1303 := (iff #129 #1302) -#1304 := [rewrite]: #1303 -#1420 := [monotonicity #1304]: #1419 -#1425 := [trans #1420 #1423]: #1424 -#1428 := [quant-intro #1425]: #1427 -#1669 := [monotonicity #1428]: #1668 -#1690 := [monotonicity #1669 #1687]: #1689 -#1695 := [trans #1690 #1693]: #1694 -#1447 := (iff #712 #1444) -#1429 := (or #665 #1415) -#1432 := (or #674 #1429) -#1435 := (or #683 #1432) -#1438 := (or #692 #1435) -#1441 := (or #1426 #1438) -#1445 := (iff #1441 #1444) -#1446 := [rewrite]: #1445 -#1442 := (iff #712 #1441) -#1439 := (iff #693 #1438) -#1436 := (iff #684 #1435) -#1433 := (iff #675 #1432) -#1430 := (iff #666 #1429) -#1416 := (iff #652 #1415) -#1413 := (iff #647 #1412) -#1410 := (iff #640 #1409) -#1407 := (iff #635 #1404) -#1401 := (or #1396 #167) -#1405 := (iff #1401 #1404) -#1406 := [rewrite]: #1405 -#1402 := (iff #635 #1401) -#1399 := (iff #614 #167) -#1400 := [rewrite]: #1399 -#1397 := (iff #634 #1396) -#1394 := (iff #611 #1393) -#1391 := (iff #606 #1390) -#1388 := (iff #599 #1387) -#1389 := [rewrite]: #1388 -#1385 := (iff #605 #1384) -#1382 := (iff #596 #1381) -#1348 := (iff #152 #1347) -#1349 := [rewrite]: #1348 -#1383 := [monotonicity #1240 #1349]: #1382 -#1386 := [monotonicity #1383]: #1385 -#1392 := [monotonicity #1386 #1389]: #1391 -#1395 := [quant-intro #1392]: #1394 -#1398 := [monotonicity #1395]: #1397 -#1403 := [monotonicity #1398 #1400]: #1402 -#1408 := [trans #1403 #1406]: #1407 -#1411 := [monotonicity #1395 #1408]: #1410 -#1379 := (iff #646 #1378) -#1376 := (iff #593 #1375) -#1373 := (iff #588 #1372) -#1370 := (iff #581 #1369) -#1367 := (iff #578 #1366) -#1363 := (iff #575 #1362) -#1365 := [rewrite]: #1363 -#1360 := (iff #155 #1359) -#1361 := [rewrite]: #1360 -#1368 := [monotonicity #1361 #1365]: #1367 -#1371 := [quant-intro #1368]: #1370 -#1354 := (iff #587 #1353) -#1351 := (iff #153 #1350) -#1352 := [monotonicity #1349]: #1351 -#1355 := [monotonicity #1352]: #1354 -#1374 := [monotonicity #1355 #1371]: #1373 -#1377 := [quant-intro #1374]: #1376 -#1380 := [monotonicity #1377]: #1379 -#1414 := [monotonicity #1380 #1411]: #1413 -#1417 := [monotonicity #1377 #1414]: #1416 -#1431 := [monotonicity #1417]: #1430 -#1434 := [monotonicity #1431]: #1433 -#1437 := [monotonicity #1434]: #1436 -#1440 := [monotonicity #1437]: #1439 -#1443 := [monotonicity #1428 #1440]: #1442 -#1448 := [trans #1443 #1446]: #1447 -#1698 := [monotonicity #1448 #1695]: #1697 -#1342 := (iff #1045 #1341) -#1339 := (iff #549 #1338) -#1336 := (iff #544 #1335) -#1333 := (iff #537 #1332) -#1330 := (iff #534 #1327) -#1321 := (and #478 #1311) -#1324 := (and #1318 #1321) -#1328 := (iff #1324 #1327) -#1329 := [rewrite]: #1328 -#1325 := (iff #534 #1324) -#1322 := (iff #531 #1321) -#1312 := (iff #528 #1311) -#1316 := [rewrite]: #1312 -#1323 := [monotonicity #1316]: #1322 -#1319 := (iff #131 #1318) -#1320 := [rewrite]: #1319 -#1326 := [monotonicity #1320 #1323]: #1325 -#1331 := [trans #1326 #1329]: #1330 -#1334 := [quant-intro #1331]: #1333 -#1309 := (iff #543 #1308) -#1306 := (iff #130 #1305) -#1307 := [monotonicity #1304]: #1306 -#1310 := [monotonicity #1307]: #1309 -#1337 := [monotonicity #1310 #1334]: #1336 -#1340 := [quant-intro #1337]: #1339 -#1343 := [monotonicity #1340]: #1342 -#1757 := [monotonicity #1343 #1698]: #1756 -#1720 := (iff #1054 #1719) -#1717 := (iff #525 #1716) -#1714 := (iff #520 #1713) -#1711 := (iff #513 #1710) -#1712 := [rewrite]: #1711 -#1708 := (iff #519 #1707) -#1705 := (iff #505 #1702) -#1699 := (and #1238 #478) -#1703 := (iff #1699 #1702) -#1704 := [rewrite]: #1703 -#1700 := (iff #505 #1699) -#1701 := [monotonicity #1240]: #1700 -#1706 := [trans #1701 #1704]: #1705 -#1709 := [monotonicity #1706]: #1708 -#1715 := [monotonicity #1709 #1712]: #1714 -#1718 := [quant-intro #1715]: #1717 -#1721 := [monotonicity #1718]: #1720 -#1760 := [monotonicity #1721 #1757]: #1759 -#1736 := (iff #1063 #1735) -#1733 := (iff #499 #1732) -#1730 := (iff #494 #1727) -#1724 := (or #1317 #493) -#1728 := (iff #1724 #1727) -#1729 := [rewrite]: #1728 -#1725 := (iff #494 #1724) -#1722 := (iff #121 #1317) -#1723 := [rewrite]: #1722 -#1726 := [monotonicity #1723]: #1725 -#1731 := [trans #1726 #1729]: #1730 -#1734 := [quant-intro #1731]: #1733 -#1737 := [monotonicity #1734]: #1736 -#1763 := [monotonicity #1737 #1760]: #1762 -#1745 := (iff #1072 #1744) -#1742 := (iff #112 #1741) -#1739 := (iff #111 #1738) -#1740 := [rewrite]: #1739 -#1743 := [quant-intro #1740]: #1742 -#1746 := [monotonicity #1743]: #1745 -#1766 := [monotonicity #1746 #1763]: #1765 -#1750 := (iff #1081 #1749) -#1747 := (iff #475 #109) -#1748 := [rewrite]: #1747 -#1751 := [monotonicity #1748]: #1750 -#1769 := [monotonicity #1751 #1766]: #1768 -#1753 := (iff #1101 #1752) -#1297 := (iff #472 #1296) -#1294 := (iff #469 #1293) -#1291 := (iff #104 #1290) -#1288 := (iff #103 #1285) -#1279 := (and #77 #1273) -#1282 := (and #1276 #1279) -#1286 := (iff #1282 #1285) -#1287 := [rewrite]: #1286 -#1283 := (iff #103 #1282) -#1280 := (iff #102 #1279) -#1274 := (iff #101 #1273) -#1275 := [rewrite]: #1274 -#1281 := [monotonicity #1275]: #1280 -#1277 := (iff #100 #1276) -#1278 := [rewrite]: #1277 -#1284 := [monotonicity #1278 #1281]: #1283 -#1289 := [trans #1284 #1287]: #1288 -#1292 := [quant-intro #1289]: #1291 -#1271 := (iff #468 #1270) -#1268 := (iff #99 #1267) -#1265 := (iff #98 #1264) -#1266 := [rewrite]: #1265 -#1269 := [monotonicity #1266]: #1268 -#1272 := [monotonicity #1269]: #1271 -#1295 := [monotonicity #1272 #1292]: #1294 -#1298 := [quant-intro #1295]: #1297 -#1754 := [monotonicity #1298]: #1753 -#1772 := [monotonicity #1754 #1769]: #1771 -#1777 := [trans #1772 #1775]: #1776 -#1780 := [monotonicity #1298 #1777]: #1779 -#1259 := (iff #1113 #1258) -#1256 := (iff #465 #1255) -#1253 := (iff #462 #1252) -#1247 := (iff #95 #1248) -#1249 := [rewrite]: #1247 -#1245 := (iff #461 #1244) -#1242 := (iff #93 #1241) -#1243 := [monotonicity #1240]: #1242 -#1246 := [monotonicity #1243]: #1245 -#1254 := [monotonicity #1246 #1249]: #1253 -#1257 := [quant-intro #1254]: #1256 -#1260 := [monotonicity #1257]: #1259 -#1783 := [monotonicity #1260 #1780]: #1782 -#1786 := [monotonicity #1257 #1783]: #1785 -#1233 := (iff #1125 #1232) -#1230 := (iff #458 #1229) -#1227 := (iff #455 #1226) -#1221 := (iff #87 #1222) -#1225 := [rewrite]: #1221 -#1228 := [monotonicity #1225]: #1227 -#1231 := [quant-intro #1228]: #1230 -#1234 := [monotonicity #1231]: #1233 -#1789 := [monotonicity #1234 #1786]: #1788 -#1792 := [monotonicity #1231 #1789]: #1791 -#1218 := (iff #1137 #1217) -#1215 := (iff #83 #1214) -#1211 := (iff #82 #1213) -#1212 := [rewrite]: #1211 -#1216 := [quant-intro #1212]: #1215 -#1219 := [monotonicity #1216]: #1218 -#1795 := [monotonicity #1219 #1792]: #1794 -#1798 := [monotonicity #1216 #1795]: #1797 -#1209 := (iff #1149 #1208) -#1206 := (iff #451 #81) -#1207 := [rewrite]: #1206 -#1210 := [monotonicity #1207]: #1209 -#1801 := [monotonicity #1210 #1798]: #1800 -#1804 := [monotonicity #1207 #1801]: #1803 -#1818 := [monotonicity #1804]: #1817 -#1821 := [monotonicity #1818]: #1820 -#1814 := (iff #1186 #1813) -#1811 := (iff #434 #1810) -#1808 := (iff #429 #1807) -#1805 := (iff #423 #70) -#1806 := [rewrite]: #1805 -#1809 := [monotonicity #1806]: #1808 -#1812 := [quant-intro #1809]: #1811 -#1815 := [monotonicity #1812]: #1814 -#1824 := [monotonicity #1815 #1821]: #1823 -#1829 := [trans #1824 #1827]: #1828 -#1832 := [monotonicity #1829]: #1831 -#1204 := (iff #293 #1203) -#1201 := (iff #292 #1187) -#1192 := (implies true #1187) -#1195 := (iff #1192 #1187) -#1196 := [rewrite]: #1195 -#1199 := (iff #292 #1192) -#1197 := (iff #291 #1187) -#1193 := (iff #291 #1192) -#1190 := (iff #290 #1187) -#1183 := (implies #434 #1178) -#1188 := (iff #1183 #1187) -#1189 := [rewrite]: #1188 -#1184 := (iff #290 #1183) -#1181 := (iff #289 #1178) -#1174 := (implies #448 #1169) -#1179 := (iff #1174 #1178) -#1180 := [rewrite]: #1179 -#1175 := (iff #289 #1174) -#1172 := (iff #288 #1169) -#1165 := (implies #79 #1155) -#1170 := (iff #1165 #1169) -#1171 := [rewrite]: #1170 -#1166 := (iff #288 #1165) -#1163 := (iff #287 #1155) -#1158 := (implies true #1155) -#1161 := (iff #1158 #1155) -#1162 := [rewrite]: #1161 -#1159 := (iff #287 #1158) -#1156 := (iff #286 #1155) -#1153 := (iff #285 #1150) -#1146 := (implies #451 #1143) -#1151 := (iff #1146 #1150) -#1152 := [rewrite]: #1151 -#1147 := (iff #285 #1146) -#1144 := (iff #284 #1143) -#1141 := (iff #283 #1138) -#1134 := (implies #83 #1131) -#1139 := (iff #1134 #1138) -#1140 := [rewrite]: #1139 -#1135 := (iff #283 #1134) -#1132 := (iff #282 #1131) -#1129 := (iff #281 #1126) -#1122 := (implies #458 #1119) -#1127 := (iff #1122 #1126) -#1128 := [rewrite]: #1127 -#1123 := (iff #281 #1122) -#1120 := (iff #280 #1119) -#1117 := (iff #279 #1114) -#1110 := (implies #465 #1107) -#1115 := (iff #1110 #1114) -#1116 := [rewrite]: #1115 -#1111 := (iff #279 #1110) -#1108 := (iff #278 #1107) -#1105 := (iff #277 #1102) -#1098 := (implies #472 #1082) -#1103 := (iff #1098 #1102) -#1104 := [rewrite]: #1103 -#1099 := (iff #277 #1098) -#1096 := (iff #276 #1082) -#1087 := (implies true #1082) -#1090 := (iff #1087 #1082) -#1091 := [rewrite]: #1090 -#1094 := (iff #276 #1087) -#1092 := (iff #275 #1082) -#1088 := (iff #275 #1087) -#1085 := (iff #274 #1082) -#1078 := (implies #475 #1073) -#1083 := (iff #1078 #1082) -#1084 := [rewrite]: #1083 -#1079 := (iff #274 #1078) -#1076 := (iff #273 #1073) -#1069 := (implies #112 #1064) -#1074 := (iff #1069 #1073) -#1075 := [rewrite]: #1074 -#1070 := (iff #273 #1069) -#1067 := (iff #272 #1064) -#1060 := (implies #499 #1055) -#1065 := (iff #1060 #1064) -#1066 := [rewrite]: #1065 -#1061 := (iff #272 #1060) -#1058 := (iff #271 #1055) -#1051 := (implies #525 #1046) -#1056 := (iff #1051 #1055) -#1057 := [rewrite]: #1056 -#1052 := (iff #271 #1051) -#1049 := (iff #270 #1046) -#1042 := (implies #549 #1032) -#1047 := (iff #1042 #1046) -#1048 := [rewrite]: #1047 -#1043 := (iff #270 #1042) -#1040 := (iff #269 #1032) -#1035 := (implies true #1032) -#1038 := (iff #1035 #1032) -#1039 := [rewrite]: #1038 -#1036 := (iff #269 #1035) -#1033 := (iff #268 #1032) -#1030 := (iff #267 #1016) -#1021 := (implies true #1016) -#1024 := (iff #1021 #1016) -#1025 := [rewrite]: #1024 -#1028 := (iff #267 #1021) -#1026 := (iff #266 #1016) -#1022 := (iff #266 #1021) -#1019 := (iff #265 #1016) -#1013 := (implies #560 #1008) -#1017 := (iff #1013 #1016) -#1018 := [rewrite]: #1017 -#1014 := (iff #265 #1013) -#1011 := (iff #264 #1008) -#731 := (not #728) -#1005 := (implies #731 #1000) -#1009 := (iff #1005 #1008) -#1010 := [rewrite]: #1009 -#1006 := (iff #264 #1005) -#1003 := (iff #263 #1000) -#996 := (implies #189 #991) -#1001 := (iff #996 #1000) -#1002 := [rewrite]: #1001 -#997 := (iff #263 #996) -#994 := (iff #262 #991) -#987 := (implies #742 #982) -#992 := (iff #987 #991) -#993 := [rewrite]: #992 -#988 := (iff #262 #987) -#985 := (iff #261 #982) -#978 := (implies #195 #973) -#983 := (iff #978 #982) -#984 := [rewrite]: #983 -#979 := (iff #261 #978) -#976 := (iff #260 #973) -#969 := (implies #756 #964) -#974 := (iff #969 #973) -#975 := [rewrite]: #974 -#970 := (iff #260 #969) -#967 := (iff #259 #964) -#960 := (implies #770 #957) -#965 := (iff #960 #964) -#966 := [rewrite]: #965 -#961 := (iff #259 #960) -#958 := (iff #258 #957) -#955 := (iff #257 #952) -#948 := (implies #211 #945) -#953 := (iff #948 #952) -#954 := [rewrite]: #953 -#949 := (iff #257 #948) -#946 := (iff #256 #945) -#943 := (iff #255 #940) -#936 := (implies #785 #922) -#941 := (iff #936 #940) -#942 := [rewrite]: #941 -#937 := (iff #255 #936) -#934 := (iff #254 #922) -#925 := (implies true #922) -#928 := (iff #925 #922) -#929 := [rewrite]: #928 -#932 := (iff #254 #925) -#930 := (iff #253 #922) -#926 := (iff #253 #925) -#923 := (iff #252 #922) -#920 := (iff #251 #917) -#913 := (implies #788 #910) -#918 := (iff #913 #917) -#919 := [rewrite]: #918 -#914 := (iff #251 #913) -#911 := (iff #250 #910) -#908 := (iff #249 #905) -#901 := (implies #219 #898) -#906 := (iff #901 #905) -#907 := [rewrite]: #906 -#902 := (iff #249 #901) -#899 := (iff #248 #898) -#896 := (iff #247 #893) -#889 := (implies #808 #886) -#894 := (iff #889 #893) -#895 := [rewrite]: #894 -#890 := (iff #247 #889) -#887 := (iff #246 #886) -#884 := (iff #245 #881) -#877 := (implies #834 #858) -#882 := (iff #877 #881) -#883 := [rewrite]: #882 -#878 := (iff #245 #877) -#875 := (iff #244 #858) -#870 := (and #858 true) -#873 := (iff #870 #858) -#874 := [rewrite]: #873 -#871 := (iff #244 #870) -#868 := (iff #243 true) -#863 := (implies #858 true) -#866 := (iff #863 true) -#867 := [rewrite]: #866 -#864 := (iff #243 #863) -#861 := (iff #242 true) -#862 := [rewrite]: #861 -#859 := (iff #241 #858) -#856 := (iff #240 #853) -#849 := (implies #234 #846) -#854 := (iff #849 #853) -#855 := [rewrite]: #854 -#850 := (iff #240 #849) -#847 := (iff #239 #846) -#844 := (iff #238 #843) -#841 := (iff #237 #840) -#838 := (iff #236 #837) -#820 := (= #229 #819) -#821 := [rewrite]: #820 -#839 := [monotonicity #821]: #838 -#774 := (iff #213 #773) -#775 := [rewrite]: #774 -#842 := [monotonicity #775 #839]: #841 -#845 := [monotonicity #842]: #844 -#848 := [quant-intro #845]: #847 -#851 := [monotonicity #848]: #850 -#857 := [trans #851 #855]: #856 -#860 := [quant-intro #857]: #859 -#865 := [monotonicity #860 #862]: #864 -#869 := [trans #865 #867]: #868 -#872 := [monotonicity #860 #869]: #871 -#876 := [trans #872 #874]: #875 -#835 := (iff #232 #834) -#832 := (iff #231 #829) -#825 := (implies #814 #822) -#830 := (iff #825 #829) -#831 := [rewrite]: #830 -#826 := (iff #231 #825) -#823 := (iff #230 #822) -#824 := [monotonicity #821]: #823 -#817 := (iff #228 #814) -#811 := (and #773 #92) -#815 := (iff #811 #814) -#816 := [rewrite]: #815 -#812 := (iff #228 #811) -#813 := [monotonicity #775]: #812 -#818 := [trans #813 #816]: #817 -#827 := [monotonicity #818 #824]: #826 -#833 := [trans #827 #831]: #832 -#836 := [quant-intro #833]: #835 -#879 := [monotonicity #836 #876]: #878 -#885 := [trans #879 #883]: #884 -#888 := [monotonicity #836 #885]: #887 -#809 := (iff #227 #808) -#806 := (iff #226 #803) -#799 := (implies #796 #225) -#804 := (iff #799 #803) -#805 := [rewrite]: #804 -#800 := (iff #226 #799) -#797 := (iff #223 #796) -#794 := (iff #222 #793) -#795 := [rewrite]: #794 -#791 := (iff #220 #779) -#792 := [monotonicity #775]: #791 -#798 := [monotonicity #792 #795]: #797 -#801 := [monotonicity #798]: #800 -#807 := [trans #801 #805]: #806 -#810 := [quant-intro #807]: #809 -#891 := [monotonicity #810 #888]: #890 -#897 := [trans #891 #895]: #896 -#900 := [monotonicity #810 #897]: #899 -#903 := [monotonicity #900]: #902 -#909 := [trans #903 #907]: #908 -#912 := [monotonicity #909]: #911 -#789 := (iff #217 #788) -#790 := [rewrite]: #789 -#915 := [monotonicity #790 #912]: #914 -#921 := [trans #915 #919]: #920 -#924 := [monotonicity #790 #921]: #923 -#927 := [monotonicity #924]: #926 -#931 := [trans #927 #929]: #930 -#933 := [monotonicity #931]: #932 -#935 := [trans #933 #929]: #934 -#786 := (iff #215 #785) -#783 := (iff #214 #780) -#776 := (implies #773 #759) -#781 := (iff #776 #780) -#782 := [rewrite]: #781 -#777 := (iff #214 #776) -#760 := (iff #207 #759) -#761 := [rewrite]: #760 -#778 := [monotonicity #775 #761]: #777 -#784 := [trans #778 #782]: #783 -#787 := [quant-intro #784]: #786 -#938 := [monotonicity #787 #935]: #937 -#944 := [trans #938 #942]: #943 -#947 := [monotonicity #787 #944]: #946 -#950 := [monotonicity #947]: #949 -#956 := [trans #950 #954]: #955 -#959 := [monotonicity #956]: #958 -#771 := (iff #209 #770) -#768 := (iff #208 #765) -#762 := (implies #206 #759) -#766 := (iff #762 #765) -#767 := [rewrite]: #766 -#763 := (iff #208 #762) -#764 := [monotonicity #761]: #763 -#769 := [trans #764 #767]: #768 -#772 := [quant-intro #769]: #771 -#962 := [monotonicity #772 #959]: #961 -#968 := [trans #962 #966]: #967 -#757 := (iff #205 #756) -#754 := (iff #204 #751) -#748 := (implies #201 #745) -#752 := (iff #748 #751) -#753 := [rewrite]: #752 -#749 := (iff #204 #748) -#746 := (iff #203 #745) -#747 := [rewrite]: #746 -#750 := [monotonicity #747]: #749 -#755 := [trans #750 #753]: #754 -#758 := [quant-intro #755]: #757 -#971 := [monotonicity #758 #968]: #970 -#977 := [trans #971 #975]: #976 -#980 := [monotonicity #977]: #979 -#986 := [trans #980 #984]: #985 -#743 := (iff #192 #742) -#740 := (iff #191 #737) -#734 := (implies #481 #190) -#738 := (iff #734 #737) -#739 := [rewrite]: #738 -#735 := (iff #191 #734) -#482 := (iff #116 #481) -#479 := (iff #115 #478) -#480 := [rewrite]: #479 -#483 := [monotonicity #480]: #482 -#736 := [monotonicity #483]: #735 -#741 := [trans #736 #739]: #740 -#744 := [quant-intro #741]: #743 -#989 := [monotonicity #744 #986]: #988 -#995 := [trans #989 #993]: #994 -#998 := [monotonicity #995]: #997 -#1004 := [trans #998 #1002]: #1003 -#732 := (iff #187 #731) -#729 := (iff #186 #728) -#730 := [rewrite]: #729 -#733 := [monotonicity #730]: #732 -#1007 := [monotonicity #733 #1004]: #1006 -#1012 := [trans #1007 #1010]: #1011 -#561 := (iff #139 #560) -#558 := (iff #138 #555) -#552 := (and #481 #129) -#556 := (iff #552 #555) -#557 := [rewrite]: #556 -#553 := (iff #138 #552) -#554 := [monotonicity #483]: #553 -#559 := [trans #554 #557]: #558 -#562 := [quant-intro #559]: #561 -#1015 := [monotonicity #562 #1012]: #1014 -#1020 := [trans #1015 #1018]: #1019 -#1023 := [monotonicity #1020]: #1022 -#1027 := [trans #1023 #1025]: #1026 -#1029 := [monotonicity #1027]: #1028 -#1031 := [trans #1029 #1025]: #1030 -#726 := (iff #183 #712) -#717 := (implies true #712) -#720 := (iff #717 #712) -#721 := [rewrite]: #720 -#724 := (iff #183 #717) -#722 := (iff #182 #712) -#718 := (iff #182 #717) -#715 := (iff #181 #712) -#709 := (implies #563 #693) -#713 := (iff #709 #712) -#714 := [rewrite]: #713 -#710 := (iff #181 #709) -#707 := (iff #180 #693) -#698 := (implies true #693) -#701 := (iff #698 #693) -#702 := [rewrite]: #701 -#705 := (iff #180 #698) -#703 := (iff #179 #693) -#699 := (iff #179 #698) -#696 := (iff #178 #693) -#689 := (implies #566 #684) -#694 := (iff #689 #693) -#695 := [rewrite]: #694 -#690 := (iff #178 #689) -#687 := (iff #177 #684) -#680 := (implies #145 #675) -#685 := (iff #680 #684) -#686 := [rewrite]: #685 -#681 := (iff #177 #680) -#678 := (iff #176 #675) -#671 := (implies #569 #666) -#676 := (iff #671 #675) -#677 := [rewrite]: #676 -#672 := (iff #176 #671) -#669 := (iff #175 #666) -#662 := (implies #150 #652) -#667 := (iff #662 #666) -#668 := [rewrite]: #667 -#663 := (iff #175 #662) -#660 := (iff #174 #652) -#655 := (implies true #652) -#658 := (iff #655 #652) -#659 := [rewrite]: #658 -#656 := (iff #174 #655) -#653 := (iff #173 #652) -#650 := (iff #172 #647) -#643 := (implies #593 #640) -#648 := (iff #643 #647) -#649 := [rewrite]: #648 -#644 := (iff #172 #643) -#641 := (iff #171 #640) -#638 := (iff #170 #635) -#631 := (implies #611 #614) -#636 := (iff #631 #635) -#637 := [rewrite]: #636 -#632 := (iff #170 #631) -#629 := (iff #169 #614) -#624 := (and #614 true) -#627 := (iff #624 #614) -#628 := [rewrite]: #627 -#625 := (iff #169 #624) -#622 := (iff #168 true) -#617 := (implies #614 true) -#620 := (iff #617 true) -#621 := [rewrite]: #620 -#618 := (iff #168 #617) -#615 := (iff #167 #614) -#616 := [rewrite]: #615 -#619 := [monotonicity #616]: #618 -#623 := [trans #619 #621]: #622 -#626 := [monotonicity #616 #623]: #625 -#630 := [trans #626 #628]: #629 -#612 := (iff #165 #611) -#609 := (iff #164 #606) -#602 := (implies #596 #599) -#607 := (iff #602 #606) -#608 := [rewrite]: #607 -#603 := (iff #164 #602) -#600 := (iff #163 #599) -#573 := (= #156 #572) -#574 := [rewrite]: #573 -#601 := [monotonicity #574]: #600 -#597 := (iff #162 #596) -#598 := [rewrite]: #597 -#604 := [monotonicity #598 #601]: #603 -#610 := [trans #604 #608]: #609 -#613 := [quant-intro #610]: #612 -#633 := [monotonicity #613 #630]: #632 -#639 := [trans #633 #637]: #638 -#642 := [monotonicity #613 #639]: #641 -#594 := (iff #161 #593) -#591 := (iff #160 #588) -#584 := (implies #153 #581) -#589 := (iff #584 #588) -#590 := [rewrite]: #589 -#585 := (iff #160 #584) -#582 := (iff #159 #581) -#579 := (iff #158 #578) -#576 := (iff #157 #575) -#577 := [monotonicity #574]: #576 -#580 := [monotonicity #577]: #579 -#583 := [quant-intro #580]: #582 -#586 := [monotonicity #583]: #585 -#592 := [trans #586 #590]: #591 -#595 := [quant-intro #592]: #594 -#645 := [monotonicity #595 #642]: #644 -#651 := [trans #645 #649]: #650 -#654 := [monotonicity #595 #651]: #653 -#657 := [monotonicity #654]: #656 -#661 := [trans #657 #659]: #660 -#664 := [monotonicity #661]: #663 -#670 := [trans #664 #668]: #669 -#570 := (iff #147 #569) -#571 := [rewrite]: #570 -#673 := [monotonicity #571 #670]: #672 -#679 := [trans #673 #677]: #678 -#682 := [monotonicity #679]: #681 -#688 := [trans #682 #686]: #687 -#567 := (iff #142 #566) -#568 := [rewrite]: #567 -#691 := [monotonicity #568 #688]: #690 -#697 := [trans #691 #695]: #696 -#700 := [monotonicity #697]: #699 -#704 := [trans #700 #702]: #703 -#706 := [monotonicity #704]: #705 -#708 := [trans #706 #702]: #707 -#564 := (iff #140 #563) -#565 := [monotonicity #562]: #564 -#711 := [monotonicity #565 #708]: #710 -#716 := [trans #711 #714]: #715 -#719 := [monotonicity #716]: #718 -#723 := [trans #719 #721]: #722 -#725 := [monotonicity #723]: #724 -#727 := [trans #725 #721]: #726 -#1034 := [monotonicity #727 #1031]: #1033 -#1037 := [monotonicity #1034]: #1036 -#1041 := [trans #1037 #1039]: #1040 -#550 := (iff #137 #549) -#547 := (iff #136 #544) -#540 := (implies #130 #537) -#545 := (iff #540 #544) -#546 := [rewrite]: #545 -#541 := (iff #136 #540) -#538 := (iff #135 #537) -#535 := (iff #134 #534) -#532 := (iff #133 #531) -#529 := (iff #132 #528) -#511 := (= #125 #510) -#512 := [rewrite]: #511 -#530 := [monotonicity #512]: #529 -#533 := [monotonicity #480 #530]: #532 -#536 := [monotonicity #533]: #535 -#539 := [quant-intro #536]: #538 -#542 := [monotonicity #539]: #541 -#548 := [trans #542 #546]: #547 -#551 := [quant-intro #548]: #550 -#1044 := [monotonicity #551 #1041]: #1043 -#1050 := [trans #1044 #1048]: #1049 -#526 := (iff #128 #525) -#523 := (iff #127 #520) -#516 := (implies #505 #513) -#521 := (iff #516 #520) -#522 := [rewrite]: #521 -#517 := (iff #127 #516) -#514 := (iff #126 #513) -#515 := [monotonicity #512]: #514 -#508 := (iff #124 #505) -#502 := (and #478 #92) -#506 := (iff #502 #505) -#507 := [rewrite]: #506 -#503 := (iff #124 #502) -#504 := [monotonicity #480]: #503 -#509 := [trans #504 #507]: #508 -#518 := [monotonicity #509 #515]: #517 -#524 := [trans #518 #522]: #523 -#527 := [quant-intro #524]: #526 -#1053 := [monotonicity #527 #1050]: #1052 -#1059 := [trans #1053 #1057]: #1058 -#500 := (iff #123 #499) -#497 := (iff #122 #494) -#490 := (implies #487 #121) -#495 := (iff #490 #494) -#496 := [rewrite]: #495 -#491 := (iff #122 #490) -#488 := (iff #119 #487) -#485 := (iff #118 #484) -#486 := [rewrite]: #485 -#489 := [monotonicity #483 #486]: #488 -#492 := [monotonicity #489]: #491 -#498 := [trans #492 #496]: #497 -#501 := [quant-intro #498]: #500 -#1062 := [monotonicity #501 #1059]: #1061 -#1068 := [trans #1062 #1066]: #1067 -#1071 := [monotonicity #1068]: #1070 -#1077 := [trans #1071 #1075]: #1076 -#476 := (iff #109 #475) -#477 := [rewrite]: #476 -#1080 := [monotonicity #477 #1077]: #1079 -#1086 := [trans #1080 #1084]: #1085 -#1089 := [monotonicity #1086]: #1088 -#1093 := [trans #1089 #1091]: #1092 -#1095 := [monotonicity #1093]: #1094 -#1097 := [trans #1095 #1091]: #1096 -#473 := (iff #106 #472) -#470 := (iff #105 #469) -#471 := [rewrite]: #470 -#474 := [quant-intro #471]: #473 -#1100 := [monotonicity #474 #1097]: #1099 -#1106 := [trans #1100 #1104]: #1105 -#1109 := [monotonicity #474 #1106]: #1108 -#466 := (iff #97 #465) -#463 := (iff #96 #462) -#464 := [rewrite]: #463 -#467 := [quant-intro #464]: #466 -#1112 := [monotonicity #467 #1109]: #1111 -#1118 := [trans #1112 #1116]: #1117 -#1121 := [monotonicity #467 #1118]: #1120 -#459 := (iff #89 #458) -#456 := (iff #88 #455) -#457 := [rewrite]: #456 -#460 := [quant-intro #457]: #459 -#1124 := [monotonicity #460 #1121]: #1123 -#1130 := [trans #1124 #1128]: #1129 -#1133 := [monotonicity #460 #1130]: #1132 -#1136 := [monotonicity #1133]: #1135 -#1142 := [trans #1136 #1140]: #1141 -#1145 := [monotonicity #1142]: #1144 -#452 := (iff #81 #451) -#453 := [rewrite]: #452 -#1148 := [monotonicity #453 #1145]: #1147 -#1154 := [trans #1148 #1152]: #1153 -#1157 := [monotonicity #453 #1154]: #1156 -#1160 := [monotonicity #1157]: #1159 -#1164 := [trans #1160 #1162]: #1163 -#1167 := [monotonicity #1164]: #1166 -#1173 := [trans #1167 #1171]: #1172 -#449 := (iff #76 #448) -#446 := (iff #75 #443) -#440 := (implies #73 #437) -#444 := (iff #440 #443) -#445 := [rewrite]: #444 -#441 := (iff #75 #440) -#438 := (iff #74 #437) -#439 := [rewrite]: #438 -#442 := [monotonicity #439]: #441 -#447 := [trans #442 #445]: #446 -#450 := [quant-intro #447]: #449 -#1176 := [monotonicity #450 #1173]: #1175 -#1182 := [trans #1176 #1180]: #1181 -#435 := (iff #72 #434) -#432 := (iff #71 #429) -#426 := (implies #68 #423) -#430 := (iff #426 #429) -#431 := [rewrite]: #430 -#427 := (iff #71 #426) -#424 := (iff #70 #423) -#425 := [rewrite]: #424 -#428 := [monotonicity #425]: #427 -#433 := [trans #428 #431]: #432 -#436 := [quant-intro #433]: #435 -#1185 := [monotonicity #436 #1182]: #1184 -#1191 := [trans #1185 #1189]: #1190 -#1194 := [monotonicity #1191]: #1193 -#1198 := [trans #1194 #1196]: #1197 -#1200 := [monotonicity #1198]: #1199 -#1202 := [trans #1200 #1196]: #1201 -#1205 := [monotonicity #1202]: #1204 -#1834 := [trans #1205 #1832]: #1833 -#422 := [asserted]: #293 -#1835 := [mp #422 #1834]: #1830 -#1837 := [not-or-elim #1835]: #448 -#1902 := [mp~ #1837 #1863]: #448 -#4263 := [mp #1902 #4262]: #4258 -#4706 := (not #4258) -#5054 := (or #4706 #2574 #5019) -#1992 := (= ?x37!5 uf_11) -#5025 := (or #1992 #5019) -#5056 := (or #4706 #5025) -#5111 := (iff #5056 #5054) -#5048 := (or #2574 #5019) -#5057 := (or #4706 #5048) -#5087 := (iff #5057 #5054) -#5088 := [rewrite]: #5087 -#5059 := (iff #5056 #5057) -#5049 := (iff #5025 #5048) -#2575 := (iff #1992 #2574) -#2576 := [rewrite]: #2575 -#5053 := [monotonicity #2576]: #5049 -#5060 := [monotonicity #5053]: #5059 -#5120 := [trans #5060 #5088]: #5111 -#5047 := [quant-inst]: #5056 -#5121 := [mp #5047 #5120]: #5054 -#5195 := [unit-resolution #5121 #4263 #5192 #5194]: false -#5196 := [lemma #5195]: #4299 -#4585 := (or #4302 #4582) -#4588 := (not #4585) -#3123 := (or #78 #1237 #1248) -#4282 := (forall (vars (?x33 T2) (?x34 T2)) (:pat #4281) #3123) -#4287 := (not #4282) -#4591 := (or #4287 #4588) -#4594 := (not #4591) -decl ?x34!3 :: T2 -#1946 := ?x34!3 -#1953 := (uf_12 ?x34!3) -decl ?x33!4 :: T2 -#1947 := ?x33!4 -#1950 := (uf_12 ?x33!4) -#1951 := (* -1::int #1950) -#2561 := (+ #1951 #1953) -#1948 := (uf_1 ?x34!3 ?x33!4) -#1949 := (uf_10 #1948) -#2562 := (+ #1949 #2561) -#2565 := (>= #2562 0::int) -#1960 := (up_13 ?x34!3) -#3086 := (not #1960) -#1956 := (* -1::int #1949) -#1957 := (+ uf_9 #1956) -#1958 := (<= #1957 0::int) -#3101 := (or #1958 #3086 #2565) -#5147 := [hypothesis]: #1960 -#4251 := (forall (vars (?x26 T2)) (:pat #4250) #78) -#4254 := (iff #79 #4251) -#4252 := (iff #78 #78) -#4253 := [refl]: #4252 -#4255 := [quant-intro #4253]: #4254 -#1860 := (~ #79 #79) -#1897 := (~ #78 #78) -#1898 := [refl]: #1897 -#1861 := [nnf-pos #1898]: #1860 -#1836 := [not-or-elim #1835]: #79 -#1899 := [mp~ #1836 #1861]: #79 -#4256 := [mp #1899 #4255]: #4251 -#4844 := (not #4251) -#4845 := (or #4844 #3086) -#4846 := [quant-inst]: #4845 -#5148 := [unit-resolution #4846 #4256 #5147]: false -#5157 := [lemma #5148]: #3086 -#3862 := (or #3101 #1960) -#3866 := [def-axiom]: #3862 -#4921 := [unit-resolution #3866 #5157]: #3101 -#3106 := (not #3101) -#4597 := (or #3106 #4594) -#4600 := (not #4597) -#4272 := (pattern #77 #84) -#2527 := (not #84) -#3078 := (or #77 #2527 #1222) -#4273 := (forall (vars (?x29 T2) (?x30 T2)) (:pat #4272) #3078) -#4278 := (not #4273) -#4603 := (or #4278 #4600) -#4606 := (not #4603) -decl ?x30!1 :: T2 -#1921 := ?x30!1 -#1925 := (uf_12 ?x30!1) -#2542 := (* -1::int #1925) -decl ?x29!2 :: T2 -#1922 := ?x29!2 -#1923 := (uf_12 ?x29!2) -#2543 := (+ #1923 #2542) -#2544 := (<= #2543 0::int) -#1929 := (up_13 ?x30!1) -#1928 := (up_13 ?x29!2) -#1968 := (not #1928) -#2171 := (or #1968 #1929 #2544) -#2248 := (not #2171) -#4609 := (or #2248 #4606) -#4612 := (not #4609) -#4264 := (forall (vars (?x27 T2)) (:pat #4257) #1213) -#4269 := (not #4264) -#4615 := (or #4269 #4612) -#4618 := (not #4615) -decl ?x27!0 :: T2 -#1906 := ?x27!0 -#1907 := (uf_12 ?x27!0) -#1908 := (>= #1907 0::int) -#1909 := (not #1908) -#4621 := (or #1909 #4618) -#4624 := (not #4621) -#4627 := (or #1208 #4624) -#4630 := (not #4627) -#4637 := (forall (vars (?x24 T2)) (:pat #4257) #1807) -#4640 := (iff #1810 #4637) -#4638 := (iff #1807 #1807) -#4639 := [refl]: #4638 -#4641 := [quant-intro #4639]: #4640 -#2061 := (~ #1810 #1810) -#2287 := (~ #1807 #1807) -#2288 := [refl]: #2287 -#2062 := [nnf-pos #2288]: #2061 -#1840 := [not-or-elim #1835]: #1810 -#1967 := [mp~ #1840 #2062]: #1810 -#4642 := [mp #1967 #4641]: #4637 -#4660 := [hypothesis]: #1208 -#3800 := (not #4637) -#3794 := (or #3800 #81) -#3912 := (= uf_11 uf_11) -#3913 := (not #3912) -#3914 := (or #3913 #81) -#3784 := (or #3800 #3914) -#3782 := (iff #3784 #3794) -#3786 := (iff #3794 #3794) -#4657 := [rewrite]: #3786 -#3799 := (iff #3914 #81) -#3778 := (or false #81) -#3797 := (iff #3778 #81) -#3798 := [rewrite]: #3797 -#3776 := (iff #3914 #3778) -#3775 := (iff #3913 false) -#8605 := (not true) -#8608 := (iff #8605 false) -#8609 := [rewrite]: #8608 -#3783 := (iff #3913 #8605) -#3915 := (iff #3912 true) -#3787 := [rewrite]: #3915 -#3788 := [monotonicity #3787]: #3783 -#3777 := [trans #3788 #8609]: #3775 -#3779 := [monotonicity #3777]: #3776 -#3791 := [trans #3779 #3798]: #3799 -#3785 := [monotonicity #3791]: #3782 -#4658 := [trans #3785 #4657]: #3782 -#3781 := [quant-inst]: #3784 -#4659 := [mp #3781 #4658]: #3794 -#4661 := [unit-resolution #4659 #4660 #4642]: false -#4656 := [lemma #4661]: #81 -#4633 := (or #1208 #4630) -#3536 := (forall (vars (?x76 T2)) #3525) -#3543 := (not #3536) -#3521 := (forall (vars (?x71 T2) (?x72 T2)) #3516) -#3542 := (not #3521) -#3544 := (or #2367 #2934 #3542 #3543) -#3545 := (not #3544) -#3550 := (or #3499 #3545) -#3557 := (not #3550) -#3476 := (forall (vars (?x67 T2) (?x68 T2)) #3471) -#3556 := (not #3476) -#3558 := (or #3556 #3557) -#3559 := (not #3558) -#3564 := (or #3453 #3559) -#3570 := (not #3564) -#3571 := (or #1501 #3570) -#3572 := (not #3571) -#3577 := (or #2284 #3572) -#3583 := (not #3577) -#3584 := (or #1492 #3583) -#3585 := (not #3584) -#3590 := (or #1492 #3585) -#3596 := (not #3590) -#3597 := (or #939 #3596) -#3598 := (not #3597) -#3603 := (or #2877 #3598) -#3609 := (not #3603) -#3610 := (or #1487 #3609) -#3611 := (not #3610) -#3616 := (or #2863 #3611) -#3624 := (not #3616) -#3430 := (forall (vars (?x59 T2)) #3425) -#3623 := (not #3430) -#3412 := (forall (vars (?x60 T2)) #3409) -#3622 := (not #3412) -#3625 := (or #981 #728 #1652 #1656 #2218 #2221 #3622 #3623 #3624) -#3626 := (not #3625) -#3342 := (forall (vars (?x53 T2) (?x54 T2)) #3337) -#3348 := (not #3342) -#3349 := (or #167 #3348) -#3350 := (not #3349) -#3377 := (or #3350 #3374) -#3384 := (not #3377) -#3320 := (forall (vars (?x49 T2)) #3315) -#3383 := (not #3320) -#3385 := (or #3383 #3384) -#3386 := (not #3385) -#3283 := (forall (vars (?x50 T2)) #3272) -#3289 := (not #3283) -#3290 := (or #2097 #2712 #3289) -#3291 := (not #3290) -#3391 := (or #3291 #3386) -#3398 := (not #3391) -#3268 := (forall (vars (?x48 T2)) #3257) -#3397 := (not #3268) -#3399 := (or #683 #665 #692 #674 #3397 #3398) -#3400 := (not #3399) -#3631 := (or #3400 #3626) -#3641 := (not #3631) -#3254 := (forall (vars (?x46 T2)) #3249) -#3640 := (not #3254) -#3226 := (forall (vars (?x37 T2)) #3221) -#3639 := (not #3226) -#3198 := (forall (vars (?x42 T2) (?x43 T2)) #3193) -#3638 := (not #3198) -#3175 := (forall (vars (?x44 T2) (?x45 T2)) #3170) -#3637 := (not #3175) -#3642 := (or #1749 #1744 #3637 #3638 #3639 #3640 #3641) -#3643 := (not #3642) -#3143 := (forall (vars (?x38 T2)) #3132) -#3149 := (not #3143) -#3150 := (or #1990 #2574 #3149) -#3151 := (not #3150) -#3648 := (or #3151 #3643) -#3655 := (not #3648) -#3128 := (forall (vars (?x33 T2) (?x34 T2)) #3123) -#3654 := (not #3128) -#3656 := (or #3654 #3655) -#3657 := (not #3656) -#3662 := (or #3106 #3657) -#3669 := (not #3662) -#3083 := (forall (vars (?x29 T2) (?x30 T2)) #3078) -#3668 := (not #3083) -#3670 := (or #3668 #3669) -#3671 := (not #3670) -#3676 := (or #2248 #3671) -#3682 := (not #3676) -#3683 := (or #1217 #3682) -#3684 := (not #3683) -#3689 := (or #1909 #3684) -#3695 := (not #3689) -#3696 := (or #1208 #3695) -#3697 := (not #3696) -#3702 := (or #1208 #3697) -#4634 := (iff #3702 #4633) -#4631 := (iff #3697 #4630) -#4628 := (iff #3696 #4627) -#4625 := (iff #3695 #4624) -#4622 := (iff #3689 #4621) -#4619 := (iff #3684 #4618) -#4616 := (iff #3683 #4615) -#4613 := (iff #3682 #4612) -#4610 := (iff #3676 #4609) -#4607 := (iff #3671 #4606) -#4604 := (iff #3670 #4603) -#4601 := (iff #3669 #4600) -#4598 := (iff #3662 #4597) -#4595 := (iff #3657 #4594) -#4592 := (iff #3656 #4591) -#4589 := (iff #3655 #4588) -#4586 := (iff #3648 #4585) -#4583 := (iff #3643 #4582) -#4580 := (iff #3642 #4579) -#4577 := (iff #3641 #4576) -#4574 := (iff #3631 #4573) -#4571 := (iff #3626 #4570) -#4568 := (iff #3625 #4567) -#4565 := (iff #3624 #4564) -#4562 := (iff #3616 #4561) -#4559 := (iff #3611 #4558) -#4556 := (iff #3610 #4555) -#4553 := (iff #3609 #4552) -#4550 := (iff #3603 #4549) -#4547 := (iff #3598 #4546) -#4544 := (iff #3597 #4543) -#4541 := (iff #3596 #4540) -#4538 := (iff #3590 #4537) -#4535 := (iff #3585 #4534) -#4532 := (iff #3584 #4531) -#4529 := (iff #3583 #4528) -#4526 := (iff #3577 #4525) -#4523 := (iff #3572 #4522) -#4520 := (iff #3571 #4519) -#4517 := (iff #3570 #4516) -#4514 := (iff #3564 #4513) -#4511 := (iff #3559 #4510) -#4508 := (iff #3558 #4507) -#4505 := (iff #3557 #4504) -#4502 := (iff #3550 #4501) -#4499 := (iff #3545 #4498) -#4496 := (iff #3544 #4495) -#4493 := (iff #3543 #4492) -#4490 := (iff #3536 #4487) -#4488 := (iff #3525 #3525) -#4489 := [refl]: #4488 -#4491 := [quant-intro #4489]: #4490 -#4494 := [monotonicity #4491]: #4493 -#4484 := (iff #3542 #4483) -#4481 := (iff #3521 #4478) -#4479 := (iff #3516 #3516) -#4480 := [refl]: #4479 -#4482 := [quant-intro #4480]: #4481 -#4485 := [monotonicity #4482]: #4484 -#4497 := [monotonicity #4485 #4494]: #4496 -#4500 := [monotonicity #4497]: #4499 -#4503 := [monotonicity #4500]: #4502 -#4506 := [monotonicity #4503]: #4505 -#4476 := (iff #3556 #4475) -#4473 := (iff #3476 #4470) -#4471 := (iff #3471 #3471) -#4472 := [refl]: #4471 -#4474 := [quant-intro #4472]: #4473 -#4477 := [monotonicity #4474]: #4476 -#4509 := [monotonicity #4477 #4506]: #4508 -#4512 := [monotonicity #4509]: #4511 -#4515 := [monotonicity #4512]: #4514 -#4518 := [monotonicity #4515]: #4517 -#4467 := (iff #1501 #4466) -#4464 := (iff #1498 #4461) -#4462 := (iff #1495 #1495) -#4463 := [refl]: #4462 -#4465 := [quant-intro #4463]: #4464 -#4468 := [monotonicity #4465]: #4467 -#4521 := [monotonicity #4468 #4518]: #4520 -#4524 := [monotonicity #4521]: #4523 -#4527 := [monotonicity #4524]: #4526 -#4530 := [monotonicity #4527]: #4529 -#4533 := [monotonicity #4530]: #4532 -#4536 := [monotonicity #4533]: #4535 -#4539 := [monotonicity #4536]: #4538 -#4542 := [monotonicity #4539]: #4541 -#4459 := (iff #939 #4458) -#4456 := (iff #785 #4453) -#4454 := (iff #780 #780) -#4455 := [refl]: #4454 -#4457 := [quant-intro #4455]: #4456 -#4460 := [monotonicity #4457]: #4459 -#4545 := [monotonicity #4460 #4542]: #4544 -#4548 := [monotonicity #4545]: #4547 -#4551 := [monotonicity #4548]: #4550 -#4554 := [monotonicity #4551]: #4553 -#4450 := (iff #1487 #4449) -#4447 := (iff #1484 #4444) -#4445 := (iff #1479 #1479) -#4446 := [refl]: #4445 -#4448 := [quant-intro #4446]: #4447 -#4451 := [monotonicity #4448]: #4450 -#4557 := [monotonicity #4451 #4554]: #4556 -#4560 := [monotonicity #4557]: #4559 -#4563 := [monotonicity #4560]: #4562 -#4566 := [monotonicity #4563]: #4565 -#4442 := (iff #3623 #4441) -#4439 := (iff #3430 #4436) -#4437 := (iff #3425 #3425) -#4438 := [refl]: #4437 -#4440 := [quant-intro #4438]: #4439 -#4443 := [monotonicity #4440]: #4442 -#4434 := (iff #3622 #4433) -#4431 := (iff #3412 #4428) -#4429 := (iff #3409 #3409) -#4430 := [refl]: #4429 -#4432 := [quant-intro #4430]: #4431 -#4435 := [monotonicity #4432]: #4434 -#4424 := (iff #1652 #4423) -#4421 := (iff #1649 #4418) -#4419 := (iff #1644 #1644) -#4420 := [refl]: #4419 -#4422 := [quant-intro #4420]: #4421 -#4425 := [monotonicity #4422]: #4424 -#4569 := [monotonicity #4425 #4435 #4443 #4566]: #4568 -#4572 := [monotonicity #4569]: #4571 -#4416 := (iff #3400 #4415) -#4413 := (iff #3399 #4412) -#4410 := (iff #3398 #4409) -#4407 := (iff #3391 #4406) -#4404 := (iff #3386 #4403) -#4401 := (iff #3385 #4400) -#4398 := (iff #3384 #4397) -#4395 := (iff #3377 #4394) -#4392 := (iff #3350 #4391) -#4389 := (iff #3349 #4388) -#4386 := (iff #3348 #4385) -#4383 := (iff #3342 #4380) -#4381 := (iff #3337 #3337) -#4382 := [refl]: #4381 -#4384 := [quant-intro #4382]: #4383 -#4387 := [monotonicity #4384]: #4386 -#4390 := [monotonicity #4387]: #4389 -#4393 := [monotonicity #4390]: #4392 -#4396 := [monotonicity #4393]: #4395 -#4399 := [monotonicity #4396]: #4398 -#4378 := (iff #3383 #4377) -#4375 := (iff #3320 #4372) -#4373 := (iff #3315 #3315) -#4374 := [refl]: #4373 -#4376 := [quant-intro #4374]: #4375 -#4379 := [monotonicity #4376]: #4378 -#4402 := [monotonicity #4379 #4399]: #4401 -#4405 := [monotonicity #4402]: #4404 -#4370 := (iff #3291 #4369) -#4367 := (iff #3290 #4366) -#4364 := (iff #3289 #4363) -#4361 := (iff #3283 #4358) -#4359 := (iff #3272 #3272) -#4360 := [refl]: #4359 -#4362 := [quant-intro #4360]: #4361 -#4365 := [monotonicity #4362]: #4364 -#4368 := [monotonicity #4365]: #4367 -#4371 := [monotonicity #4368]: #4370 -#4408 := [monotonicity #4371 #4405]: #4407 -#4411 := [monotonicity #4408]: #4410 -#4354 := (iff #3397 #4353) -#4351 := (iff #3268 #4348) -#4349 := (iff #3257 #3257) -#4350 := [refl]: #4349 -#4352 := [quant-intro #4350]: #4351 -#4355 := [monotonicity #4352]: #4354 -#4414 := [monotonicity #4355 #4411]: #4413 -#4417 := [monotonicity #4414]: #4416 -#4575 := [monotonicity #4417 #4572]: #4574 -#4578 := [monotonicity #4575]: #4577 -#4345 := (iff #3640 #4344) -#4342 := (iff #3254 #4339) -#4340 := (iff #3249 #3249) -#4341 := [refl]: #4340 -#4343 := [quant-intro #4341]: #4342 -#4346 := [monotonicity #4343]: #4345 -#4337 := (iff #3639 #4336) -#4334 := (iff #3226 #4331) -#4332 := (iff #3221 #3221) -#4333 := [refl]: #4332 -#4335 := [quant-intro #4333]: #4334 -#4338 := [monotonicity #4335]: #4337 -#4329 := (iff #3638 #4328) -#4326 := (iff #3198 #4323) -#4324 := (iff #3193 #3193) -#4325 := [refl]: #4324 -#4327 := [quant-intro #4325]: #4326 -#4330 := [monotonicity #4327]: #4329 -#4320 := (iff #3637 #4319) -#4317 := (iff #3175 #4314) -#4315 := (iff #3170 #3170) -#4316 := [refl]: #4315 -#4318 := [quant-intro #4316]: #4317 -#4321 := [monotonicity #4318]: #4320 -#4312 := (iff #1744 #4311) -#4309 := (iff #1741 #4306) -#4307 := (iff #1738 #1738) -#4308 := [refl]: #4307 -#4310 := [quant-intro #4308]: #4309 -#4313 := [monotonicity #4310]: #4312 -#4581 := [monotonicity #4313 #4321 #4330 #4338 #4346 #4578]: #4580 -#4584 := [monotonicity #4581]: #4583 -#4303 := (iff #3151 #4302) -#4300 := (iff #3150 #4299) -#4297 := (iff #3149 #4296) -#4294 := (iff #3143 #4291) -#4292 := (iff #3132 #3132) -#4293 := [refl]: #4292 -#4295 := [quant-intro #4293]: #4294 -#4298 := [monotonicity #4295]: #4297 -#4301 := [monotonicity #4298]: #4300 -#4304 := [monotonicity #4301]: #4303 -#4587 := [monotonicity #4304 #4584]: #4586 -#4590 := [monotonicity #4587]: #4589 -#4288 := (iff #3654 #4287) -#4285 := (iff #3128 #4282) -#4283 := (iff #3123 #3123) -#4284 := [refl]: #4283 -#4286 := [quant-intro #4284]: #4285 -#4289 := [monotonicity #4286]: #4288 -#4593 := [monotonicity #4289 #4590]: #4592 -#4596 := [monotonicity #4593]: #4595 -#4599 := [monotonicity #4596]: #4598 -#4602 := [monotonicity #4599]: #4601 -#4279 := (iff #3668 #4278) -#4276 := (iff #3083 #4273) -#4274 := (iff #3078 #3078) -#4275 := [refl]: #4274 -#4277 := [quant-intro #4275]: #4276 -#4280 := [monotonicity #4277]: #4279 -#4605 := [monotonicity #4280 #4602]: #4604 -#4608 := [monotonicity #4605]: #4607 -#4611 := [monotonicity #4608]: #4610 -#4614 := [monotonicity #4611]: #4613 -#4270 := (iff #1217 #4269) -#4267 := (iff #1214 #4264) -#4265 := (iff #1213 #1213) -#4266 := [refl]: #4265 -#4268 := [quant-intro #4266]: #4267 -#4271 := [monotonicity #4268]: #4270 -#4617 := [monotonicity #4271 #4614]: #4616 -#4620 := [monotonicity #4617]: #4619 -#4623 := [monotonicity #4620]: #4622 -#4626 := [monotonicity #4623]: #4625 -#4629 := [monotonicity #4626]: #4628 -#4632 := [monotonicity #4629]: #4631 -#4635 := [monotonicity #4632]: #4634 -#2363 := (not #2362) -#2965 := (and #773 #2363 #2962) -#2968 := (not #2965) -#2971 := (forall (vars (?x76 T2)) #2968) -#2937 := (not #2934) -#2368 := (not #2367) -#2980 := (and #1541 #2368 #2937 #2971) -#2907 := (and #2336 #2338) -#2910 := (not #2907) -#2928 := (or #2910 #2923) -#2931 := (not #2928) -#2985 := (or #2931 #2980) -#2988 := (and #1517 #2985) -#2307 := (not #2306) -#2882 := (and #2304 #2307) -#2885 := (not #2882) -#2901 := (or #2885 #2896) -#2904 := (not #2901) -#2991 := (or #2904 #2988) -#2994 := (and #1498 #2991) -#2997 := (or #2284 #2994) -#3000 := (and #217 #2997) -#3003 := (or #1492 #3000) -#3006 := (and #785 #3003) -#3009 := (or #2877 #3006) -#3012 := (and #1484 #3009) -#3015 := (or #2863 #3012) -#2222 := (not #2221) -#2219 := (not #2218) -#3021 := (and #195 #731 #1473 #1631 #1649 #1657 #2219 #2222 #3015) -#2164 := (not #2163) -#2160 := (not #2159) -#2800 := (and #2160 #2164) -#2803 := (not #2800) -#2820 := (or #2803 #2815) -#2823 := (not #2820) -#2173 := (not #167) -#2183 := (and #2173 #1393) -#2829 := (or #2183 #2823) -#2773 := (not #2768) -#2791 := (and #2773 #2786) -#2794 := (or #1353 #2791) -#2797 := (forall (vars (?x49 T2)) #2794) -#2834 := (and #2797 #2829) -#2093 := (not #2092) -#2743 := (and #2093 #2740) -#2746 := (not #2743) -#2749 := (forall (vars (?x50 T2)) #2746) -#2715 := (not #2712) -#2098 := (not #2097) -#2755 := (and #2098 #2715 #2749) -#2837 := (or #2755 #2834) -#2199 := (not #1421) -#2202 := (forall (vars (?x48 T2)) #2199) -#2843 := (and #145 #150 #566 #569 #2202 #2837) -#3026 := (or #2843 #3021) -#2692 := (not #2687) -#2695 := (and #2057 #2675 #2692) -#2698 := (or #1308 #2695) -#2701 := (forall (vars (?x46 T2)) #2698) -#2637 := (not #2632) -#2655 := (and #2030 #2637 #2650) -#2658 := (or #1270 #2655) -#2661 := (forall (vars (?x37 T2)) #2658) -#3032 := (and #109 #1716 #1732 #1741 #2661 #2701 #3026) -#1986 := (not #1985) -#2605 := (and #77 #1986 #2602) -#2608 := (not #2605) -#2611 := (forall (vars (?x38 T2)) #2608) -#2617 := (and #1991 #2577 #2611) -#3037 := (or #2617 #3032) -#3040 := (and #1255 #3037) -#1959 := (not #1958) -#2555 := (and #1959 #1960) -#2558 := (not #2555) -#2568 := (or #2558 #2565) -#2571 := (not #2568) -#3043 := (or #2571 #3040) -#3046 := (and #1229 #3043) -#1930 := (not #1929) -#2530 := (and #1928 #1930) -#2533 := (not #2530) -#2549 := (or #2533 #2544) -#2552 := (not #2549) -#3049 := (or #2552 #3046) -#3052 := (and #1214 #3049) -#3055 := (or #1909 #3052) -#3058 := (and #81 #3055) -#3061 := (or #1208 #3058) -#3703 := (iff #3061 #3702) -#3700 := (iff #3058 #3697) -#3692 := (and #81 #3689) -#3698 := (iff #3692 #3697) -#3699 := [rewrite]: #3698 -#3693 := (iff #3058 #3692) -#3690 := (iff #3055 #3689) -#3687 := (iff #3052 #3684) -#3679 := (and #1214 #3676) -#3685 := (iff #3679 #3684) -#3686 := [rewrite]: #3685 -#3680 := (iff #3052 #3679) -#3677 := (iff #3049 #3676) -#3674 := (iff #3046 #3671) -#3665 := (and #3083 #3662) -#3672 := (iff #3665 #3671) -#3673 := [rewrite]: #3672 -#3666 := (iff #3046 #3665) -#3663 := (iff #3043 #3662) -#3660 := (iff #3040 #3657) -#3651 := (and #3128 #3648) -#3658 := (iff #3651 #3657) -#3659 := [rewrite]: #3658 -#3652 := (iff #3040 #3651) -#3649 := (iff #3037 #3648) -#3646 := (iff #3032 #3643) -#3634 := (and #109 #3175 #3198 #1741 #3226 #3254 #3631) -#3644 := (iff #3634 #3643) -#3645 := [rewrite]: #3644 -#3635 := (iff #3032 #3634) -#3632 := (iff #3026 #3631) -#3629 := (iff #3021 #3626) -#3619 := (and #195 #731 #3412 #3430 #1649 #1657 #2219 #2222 #3616) -#3627 := (iff #3619 #3626) -#3628 := [rewrite]: #3627 -#3620 := (iff #3021 #3619) -#3617 := (iff #3015 #3616) -#3614 := (iff #3012 #3611) -#3606 := (and #1484 #3603) -#3612 := (iff #3606 #3611) -#3613 := [rewrite]: #3612 -#3607 := (iff #3012 #3606) -#3604 := (iff #3009 #3603) -#3601 := (iff #3006 #3598) -#3593 := (and #785 #3590) -#3599 := (iff #3593 #3598) -#3600 := [rewrite]: #3599 -#3594 := (iff #3006 #3593) -#3591 := (iff #3003 #3590) -#3588 := (iff #3000 #3585) -#3580 := (and #217 #3577) -#3586 := (iff #3580 #3585) -#3587 := [rewrite]: #3586 -#3581 := (iff #3000 #3580) -#3578 := (iff #2997 #3577) -#3575 := (iff #2994 #3572) -#3567 := (and #1498 #3564) -#3573 := (iff #3567 #3572) -#3574 := [rewrite]: #3573 -#3568 := (iff #2994 #3567) -#3565 := (iff #2991 #3564) -#3562 := (iff #2988 #3559) -#3553 := (and #3476 #3550) -#3560 := (iff #3553 #3559) -#3561 := [rewrite]: #3560 -#3554 := (iff #2988 #3553) -#3551 := (iff #2985 #3550) -#3548 := (iff #2980 #3545) -#3539 := (and #3521 #2368 #2937 #3536) -#3546 := (iff #3539 #3545) -#3547 := [rewrite]: #3546 -#3540 := (iff #2980 #3539) -#3537 := (iff #2971 #3536) -#3534 := (iff #2968 #3525) -#3526 := (not #3525) -#3529 := (not #3526) -#3532 := (iff #3529 #3525) -#3533 := [rewrite]: #3532 -#3530 := (iff #2968 #3529) -#3527 := (iff #2965 #3526) -#3528 := [rewrite]: #3527 -#3531 := [monotonicity #3528]: #3530 -#3535 := [trans #3531 #3533]: #3534 -#3538 := [quant-intro #3535]: #3537 -#3522 := (iff #1541 #3521) -#3519 := (iff #1538 #3516) -#3502 := (or #779 #1237) -#3513 := (or #3502 #1534) -#3517 := (iff #3513 #3516) -#3518 := [rewrite]: #3517 -#3514 := (iff #1538 #3513) -#3511 := (iff #1531 #3502) -#3503 := (not #3502) -#3506 := (not #3503) -#3509 := (iff #3506 #3502) -#3510 := [rewrite]: #3509 -#3507 := (iff #1531 #3506) -#3504 := (iff #1526 #3503) -#3505 := [rewrite]: #3504 -#3508 := [monotonicity #3505]: #3507 -#3512 := [trans #3508 #3510]: #3511 -#3515 := [monotonicity #3512]: #3514 -#3520 := [trans #3515 #3518]: #3519 -#3523 := [quant-intro #3520]: #3522 -#3541 := [monotonicity #3523 #3538]: #3540 -#3549 := [trans #3541 #3547]: #3548 -#3500 := (iff #2931 #3499) -#3497 := (iff #2928 #3494) -#3480 := (or #2335 #3479) -#3491 := (or #3480 #2923) -#3495 := (iff #3491 #3494) -#3496 := [rewrite]: #3495 -#3492 := (iff #2928 #3491) -#3489 := (iff #2910 #3480) -#3481 := (not #3480) -#3484 := (not #3481) -#3487 := (iff #3484 #3480) -#3488 := [rewrite]: #3487 -#3485 := (iff #2910 #3484) -#3482 := (iff #2907 #3481) -#3483 := [rewrite]: #3482 -#3486 := [monotonicity #3483]: #3485 -#3490 := [trans #3486 #3488]: #3489 -#3493 := [monotonicity #3490]: #3492 -#3498 := [trans #3493 #3496]: #3497 -#3501 := [monotonicity #3498]: #3500 -#3552 := [monotonicity #3501 #3549]: #3551 -#3477 := (iff #1517 #3476) -#3474 := (iff #1512 #3471) -#3457 := (or #773 #3456) -#3468 := (or #3457 #1504) -#3472 := (iff #3468 #3471) -#3473 := [rewrite]: #3472 -#3469 := (iff #1512 #3468) -#3466 := (iff #802 #3457) -#3458 := (not #3457) -#3461 := (not #3458) -#3464 := (iff #3461 #3457) -#3465 := [rewrite]: #3464 -#3462 := (iff #802 #3461) -#3459 := (iff #796 #3458) -#3460 := [rewrite]: #3459 -#3463 := [monotonicity #3460]: #3462 -#3467 := [trans #3463 #3465]: #3466 -#3470 := [monotonicity #3467]: #3469 -#3475 := [trans #3470 #3473]: #3474 -#3478 := [quant-intro #3475]: #3477 -#3555 := [monotonicity #3478 #3552]: #3554 -#3563 := [trans #3555 #3561]: #3562 -#3454 := (iff #2904 #3453) -#3451 := (iff #2901 #3448) -#3434 := (or #3433 #2306) -#3445 := (or #3434 #2896) -#3449 := (iff #3445 #3448) -#3450 := [rewrite]: #3449 -#3446 := (iff #2901 #3445) -#3443 := (iff #2885 #3434) -#3435 := (not #3434) -#3438 := (not #3435) -#3441 := (iff #3438 #3434) -#3442 := [rewrite]: #3441 -#3439 := (iff #2885 #3438) -#3436 := (iff #2882 #3435) -#3437 := [rewrite]: #3436 -#3440 := [monotonicity #3437]: #3439 -#3444 := [trans #3440 #3442]: #3443 -#3447 := [monotonicity #3444]: #3446 -#3452 := [trans #3447 #3450]: #3451 -#3455 := [monotonicity #3452]: #3454 -#3566 := [monotonicity #3455 #3563]: #3565 -#3569 := [monotonicity #3566]: #3568 -#3576 := [trans #3569 #3574]: #3575 -#3579 := [monotonicity #3576]: #3578 -#3582 := [monotonicity #3579]: #3581 -#3589 := [trans #3582 #3587]: #3588 -#3592 := [monotonicity #3589]: #3591 -#3595 := [monotonicity #3592]: #3594 -#3602 := [trans #3595 #3600]: #3601 -#3605 := [monotonicity #3602]: #3604 -#3608 := [monotonicity #3605]: #3607 -#3615 := [trans #3608 #3613]: #3614 -#3618 := [monotonicity #3615]: #3617 -#3431 := (iff #1631 #3430) -#3428 := (iff #1628 #3425) -#3422 := (or #3405 #1625) -#3426 := (iff #3422 #3425) -#3427 := [rewrite]: #3426 -#3423 := (iff #1628 #3422) -#3420 := (iff #1620 #3405) -#3415 := (not #3406) -#3418 := (iff #3415 #3405) -#3419 := [rewrite]: #3418 -#3416 := (iff #1620 #3415) -#3407 := (iff #1462 #3406) -#3408 := [rewrite]: #3407 -#3417 := [monotonicity #3408]: #3416 -#3421 := [trans #3417 #3419]: #3420 -#3424 := [monotonicity #3421]: #3423 -#3429 := [trans #3424 #3427]: #3428 -#3432 := [quant-intro #3429]: #3431 -#3413 := (iff #1473 #3412) -#3410 := (iff #1468 #3409) -#3411 := [monotonicity #3408]: #3410 -#3414 := [quant-intro #3411]: #3413 -#3621 := [monotonicity #3414 #3432 #3618]: #3620 -#3630 := [trans #3621 #3628]: #3629 -#3403 := (iff #2843 #3400) -#3394 := (and #145 #150 #566 #569 #3268 #3391) -#3401 := (iff #3394 #3400) -#3402 := [rewrite]: #3401 -#3395 := (iff #2843 #3394) -#3392 := (iff #2837 #3391) -#3389 := (iff #2834 #3386) -#3380 := (and #3320 #3377) -#3387 := (iff #3380 #3386) -#3388 := [rewrite]: #3387 -#3381 := (iff #2834 #3380) -#3378 := (iff #2829 #3377) -#3375 := (iff #2823 #3374) -#3372 := (iff #2820 #3369) -#3355 := (or #2159 #2163) -#3366 := (or #3355 #2815) -#3370 := (iff #3366 #3369) -#3371 := [rewrite]: #3370 -#3367 := (iff #2820 #3366) -#3364 := (iff #2803 #3355) -#3356 := (not #3355) -#3359 := (not #3356) -#3362 := (iff #3359 #3355) -#3363 := [rewrite]: #3362 -#3360 := (iff #2803 #3359) -#3357 := (iff #2800 #3356) -#3358 := [rewrite]: #3357 -#3361 := [monotonicity #3358]: #3360 -#3365 := [trans #3361 #3363]: #3364 -#3368 := [monotonicity #3365]: #3367 -#3373 := [trans #3368 #3371]: #3372 -#3376 := [monotonicity #3373]: #3375 -#3353 := (iff #2183 #3350) -#3345 := (and #2173 #3342) -#3351 := (iff #3345 #3350) -#3352 := [rewrite]: #3351 -#3346 := (iff #2183 #3345) -#3343 := (iff #1393 #3342) -#3340 := (iff #1390 #3337) -#3323 := (or #1237 #1346) -#3334 := (or #3323 #1387) -#3338 := (iff #3334 #3337) -#3339 := [rewrite]: #3338 -#3335 := (iff #1390 #3334) -#3332 := (iff #1384 #3323) -#3324 := (not #3323) -#3327 := (not #3324) -#3330 := (iff #3327 #3323) -#3331 := [rewrite]: #3330 -#3328 := (iff #1384 #3327) -#3325 := (iff #1381 #3324) -#3326 := [rewrite]: #3325 -#3329 := [monotonicity #3326]: #3328 -#3333 := [trans #3329 #3331]: #3332 -#3336 := [monotonicity #3333]: #3335 -#3341 := [trans #3336 #3339]: #3340 -#3344 := [quant-intro #3341]: #3343 -#3347 := [monotonicity #3344]: #3346 -#3354 := [trans #3347 #3352]: #3353 -#3379 := [monotonicity #3354 #3376]: #3378 -#3321 := (iff #2797 #3320) -#3318 := (iff #2794 #3315) -#3296 := (or #68 #1346) -#3312 := (or #3296 #3309) -#3316 := (iff #3312 #3315) -#3317 := [rewrite]: #3316 -#3313 := (iff #2794 #3312) -#3310 := (iff #2791 #3309) -#3311 := [rewrite]: #3310 -#3305 := (iff #1353 #3296) -#3297 := (not #3296) -#3300 := (not #3297) -#3303 := (iff #3300 #3296) -#3304 := [rewrite]: #3303 -#3301 := (iff #1353 #3300) -#3298 := (iff #1350 #3297) -#3299 := [rewrite]: #3298 -#3302 := [monotonicity #3299]: #3301 -#3306 := [trans #3302 #3304]: #3305 -#3314 := [monotonicity #3306 #3311]: #3313 -#3319 := [trans #3314 #3317]: #3318 -#3322 := [quant-intro #3319]: #3321 -#3382 := [monotonicity #3322 #3379]: #3381 -#3390 := [trans #3382 #3388]: #3389 -#3294 := (iff #2755 #3291) -#3286 := (and #2098 #2715 #3283) -#3292 := (iff #3286 #3291) -#3293 := [rewrite]: #3292 -#3287 := (iff #2755 #3286) -#3284 := (iff #2749 #3283) -#3281 := (iff #2746 #3272) -#3273 := (not #3272) -#3276 := (not #3273) -#3279 := (iff #3276 #3272) -#3280 := [rewrite]: #3279 -#3277 := (iff #2746 #3276) -#3274 := (iff #2743 #3273) -#3275 := [rewrite]: #3274 -#3278 := [monotonicity #3275]: #3277 -#3282 := [trans #3278 #3280]: #3281 -#3285 := [quant-intro #3282]: #3284 -#3288 := [monotonicity #3285]: #3287 -#3295 := [trans #3288 #3293]: #3294 -#3393 := [monotonicity #3295 #3390]: #3392 -#3269 := (iff #2202 #3268) -#3266 := (iff #2199 #3257) -#3258 := (not #3257) -#3261 := (not #3258) -#3264 := (iff #3261 #3257) -#3265 := [rewrite]: #3264 -#3262 := (iff #2199 #3261) -#3259 := (iff #1421 #3258) -#3260 := [rewrite]: #3259 -#3263 := [monotonicity #3260]: #3262 -#3267 := [trans #3263 #3265]: #3266 -#3270 := [quant-intro #3267]: #3269 -#3396 := [monotonicity #3270 #3393]: #3395 -#3404 := [trans #3396 #3402]: #3403 -#3633 := [monotonicity #3404 #3630]: #3632 -#3255 := (iff #2701 #3254) -#3252 := (iff #2698 #3249) -#3229 := (or #68 #1301) -#3246 := (or #3229 #3243) -#3250 := (iff #3246 #3249) -#3251 := [rewrite]: #3250 -#3247 := (iff #2698 #3246) -#3244 := (iff #2695 #3243) -#3245 := [rewrite]: #3244 -#3238 := (iff #1308 #3229) -#3230 := (not #3229) -#3233 := (not #3230) -#3236 := (iff #3233 #3229) -#3237 := [rewrite]: #3236 -#3234 := (iff #1308 #3233) -#3231 := (iff #1305 #3230) -#3232 := [rewrite]: #3231 -#3235 := [monotonicity #3232]: #3234 -#3239 := [trans #3235 #3237]: #3238 -#3248 := [monotonicity #3239 #3245]: #3247 -#3253 := [trans #3248 #3251]: #3252 -#3256 := [quant-intro #3253]: #3255 -#3227 := (iff #2661 #3226) -#3224 := (iff #2658 #3221) -#3201 := (or #68 #1263) -#3218 := (or #3201 #3215) -#3222 := (iff #3218 #3221) -#3223 := [rewrite]: #3222 -#3219 := (iff #2658 #3218) -#3216 := (iff #2655 #3215) -#3217 := [rewrite]: #3216 -#3210 := (iff #1270 #3201) -#3202 := (not #3201) -#3205 := (not #3202) -#3208 := (iff #3205 #3201) -#3209 := [rewrite]: #3208 -#3206 := (iff #1270 #3205) -#3203 := (iff #1267 #3202) -#3204 := [rewrite]: #3203 -#3207 := [monotonicity #3204]: #3206 -#3211 := [trans #3207 #3209]: #3210 -#3220 := [monotonicity #3211 #3217]: #3219 -#3225 := [trans #3220 #3223]: #3224 -#3228 := [quant-intro #3225]: #3227 -#3199 := (iff #1732 #3198) -#3196 := (iff #1727 #3193) -#3179 := (or #478 #3178) -#3190 := (or #3179 #1317) -#3194 := (iff #3190 #3193) -#3195 := [rewrite]: #3194 -#3191 := (iff #1727 #3190) -#3188 := (iff #493 #3179) -#3180 := (not #3179) -#3183 := (not #3180) -#3186 := (iff #3183 #3179) -#3187 := [rewrite]: #3186 -#3184 := (iff #493 #3183) -#3181 := (iff #487 #3180) -#3182 := [rewrite]: #3181 -#3185 := [monotonicity #3182]: #3184 -#3189 := [trans #3185 #3187]: #3188 -#3192 := [monotonicity #3189]: #3191 -#3197 := [trans #3192 #3195]: #3196 -#3200 := [quant-intro #3197]: #3199 -#3176 := (iff #1716 #3175) -#3173 := (iff #1713 #3170) -#3156 := (or #481 #1237) -#3167 := (or #3156 #1710) -#3171 := (iff #3167 #3170) -#3172 := [rewrite]: #3171 -#3168 := (iff #1713 #3167) -#3165 := (iff #1707 #3156) -#3157 := (not #3156) -#3160 := (not #3157) -#3163 := (iff #3160 #3156) -#3164 := [rewrite]: #3163 -#3161 := (iff #1707 #3160) -#3158 := (iff #1702 #3157) -#3159 := [rewrite]: #3158 -#3162 := [monotonicity #3159]: #3161 -#3166 := [trans #3162 #3164]: #3165 -#3169 := [monotonicity #3166]: #3168 -#3174 := [trans #3169 #3172]: #3173 -#3177 := [quant-intro #3174]: #3176 -#3636 := [monotonicity #3177 #3200 #3228 #3256 #3633]: #3635 -#3647 := [trans #3636 #3645]: #3646 -#3154 := (iff #2617 #3151) -#3146 := (and #1991 #2577 #3143) -#3152 := (iff #3146 #3151) -#3153 := [rewrite]: #3152 -#3147 := (iff #2617 #3146) -#3144 := (iff #2611 #3143) -#3141 := (iff #2608 #3132) -#3133 := (not #3132) -#3136 := (not #3133) -#3139 := (iff #3136 #3132) -#3140 := [rewrite]: #3139 -#3137 := (iff #2608 #3136) -#3134 := (iff #2605 #3133) -#3135 := [rewrite]: #3134 -#3138 := [monotonicity #3135]: #3137 -#3142 := [trans #3138 #3140]: #3141 -#3145 := [quant-intro #3142]: #3144 -#3148 := [monotonicity #3145]: #3147 -#3155 := [trans #3148 #3153]: #3154 -#3650 := [monotonicity #3155 #3647]: #3649 -#3129 := (iff #1255 #3128) -#3126 := (iff #1252 #3123) -#3109 := (or #78 #1237) -#3120 := (or #3109 #1248) -#3124 := (iff #3120 #3123) -#3125 := [rewrite]: #3124 -#3121 := (iff #1252 #3120) -#3118 := (iff #1244 #3109) -#3110 := (not #3109) -#3113 := (not #3110) -#3116 := (iff #3113 #3109) -#3117 := [rewrite]: #3116 -#3114 := (iff #1244 #3113) -#3111 := (iff #1241 #3110) -#3112 := [rewrite]: #3111 -#3115 := [monotonicity #3112]: #3114 -#3119 := [trans #3115 #3117]: #3118 -#3122 := [monotonicity #3119]: #3121 -#3127 := [trans #3122 #3125]: #3126 -#3130 := [quant-intro #3127]: #3129 -#3653 := [monotonicity #3130 #3650]: #3652 -#3661 := [trans #3653 #3659]: #3660 -#3107 := (iff #2571 #3106) -#3104 := (iff #2568 #3101) -#3087 := (or #1958 #3086) -#3098 := (or #3087 #2565) -#3102 := (iff #3098 #3101) -#3103 := [rewrite]: #3102 -#3099 := (iff #2568 #3098) -#3096 := (iff #2558 #3087) -#3088 := (not #3087) -#3091 := (not #3088) -#3094 := (iff #3091 #3087) -#3095 := [rewrite]: #3094 -#3092 := (iff #2558 #3091) -#3089 := (iff #2555 #3088) -#3090 := [rewrite]: #3089 -#3093 := [monotonicity #3090]: #3092 -#3097 := [trans #3093 #3095]: #3096 -#3100 := [monotonicity #3097]: #3099 -#3105 := [trans #3100 #3103]: #3104 -#3108 := [monotonicity #3105]: #3107 -#3664 := [monotonicity #3108 #3661]: #3663 -#3084 := (iff #1229 #3083) -#3081 := (iff #1226 #3078) -#3064 := (or #77 #2527) -#3075 := (or #3064 #1222) -#3079 := (iff #3075 #3078) -#3080 := [rewrite]: #3079 -#3076 := (iff #1226 #3075) -#3073 := (iff #454 #3064) -#3065 := (not #3064) -#3068 := (not #3065) -#3071 := (iff #3068 #3064) -#3072 := [rewrite]: #3071 -#3069 := (iff #454 #3068) -#3066 := (iff #85 #3065) -#3067 := [rewrite]: #3066 -#3070 := [monotonicity #3067]: #3069 -#3074 := [trans #3070 #3072]: #3073 -#3077 := [monotonicity #3074]: #3076 -#3082 := [trans #3077 #3080]: #3081 -#3085 := [quant-intro #3082]: #3084 -#3667 := [monotonicity #3085 #3664]: #3666 -#3675 := [trans #3667 #3673]: #3674 -#2345 := (iff #2552 #2248) -#2137 := (iff #2549 #2171) -#1937 := (or #1968 #1929) -#2268 := (or #1937 #2544) -#2172 := (iff #2268 #2171) -#2136 := [rewrite]: #2172 -#2226 := (iff #2549 #2268) -#2035 := (iff #2533 #1937) -#1868 := (not #1937) -#2314 := (not #1868) -#1913 := (iff #2314 #1937) -#2034 := [rewrite]: #1913 -#2315 := (iff #2533 #2314) -#1869 := (iff #2530 #1868) -#1938 := [rewrite]: #1869 -#1912 := [monotonicity #1938]: #2315 -#2267 := [trans #1912 #2034]: #2035 -#2227 := [monotonicity #2267]: #2226 -#2247 := [trans #2227 #2136]: #2137 -#2346 := [monotonicity #2247]: #2345 -#3678 := [monotonicity #2346 #3675]: #3677 -#3681 := [monotonicity #3678]: #3680 -#3688 := [trans #3681 #3686]: #3687 -#3691 := [monotonicity #3688]: #3690 -#3694 := [monotonicity #3691]: #3693 -#3701 := [trans #3694 #3699]: #3700 -#3704 := [monotonicity #3701]: #3703 -#2360 := (+ #2359 #2357) -#2361 := (= #2360 0::int) -#2364 := (and #773 #2363 #2361) -#2381 := (not #2364) -#2384 := (forall (vars (?x76 T2)) #2381) -#2369 := (= ?x75!20 uf_11) -#2370 := (not #2369) -#2371 := (and #2370 #2368) -#2372 := (not #2371) -#2378 := (not #2372) -#2388 := (and #2378 #2384) -#2393 := (and #1541 #2388) -#2326 := (* -1::int #2325) -#2328 := (+ #2327 #2326) -#2331 := (+ #2330 #2328) -#2332 := (>= #2331 0::int) -#2339 := (and #2338 #2336) -#2340 := (not #2339) -#2341 := (or #2340 #2332) -#2342 := (not #2341) -#2397 := (or #2342 #2393) -#2401 := (and #1517 #2397) -#2299 := (* -1::int #2298) -#2301 := (+ #2300 #2299) -#2302 := (>= #2301 0::int) -#2308 := (and #2307 #2304) -#2309 := (not #2308) -#2310 := (or #2309 #2302) -#2311 := (not #2310) -#2405 := (or #2311 #2401) -#2409 := (and #1498 #2405) -#2413 := (or #2284 #2409) -#2278 := (not #1492) -#2417 := (and #2278 #2413) -#2421 := (or #1492 #2417) -#2425 := (and #785 #2421) -#2262 := (= #2261 #2260) -#2263 := (or #2262 #2259) -#2264 := (not #2263) -#2429 := (or #2264 #2425) -#2433 := (and #1484 #2429) -#2240 := (* -1::int #2239) -#2242 := (+ #2241 #2240) -#2243 := (>= #2242 0::int) -#2244 := (not #2243) -#2437 := (or #2244 #2433) -#2223 := (and #2222 #2219) -#2209 := (not #981) -#2457 := (and #2209 #731 #2223 #1473 #2437 #1631 #1649 #1657) -#2150 := (* -1::int #2149) -#2152 := (+ #2151 #2150) -#2155 := (+ #2154 #2152) -#2156 := (>= #2155 0::int) -#2165 := (and #2164 #2160) -#2166 := (not #2165) -#2167 := (or #2166 #2156) -#2168 := (not #2167) -#2187 := (or #2168 #2183) -#2126 := (+ #2125 #1344) -#2129 := (+ #2128 #2126) -#2130 := (= #2129 0::int) -#2131 := (>= #2126 0::int) -#2132 := (not #2131) -#2133 := (and #2132 #2130) -#2138 := (or #1353 #2133) -#2141 := (forall (vars (?x49 T2)) #2138) -#2191 := (and #2141 #2187) -#2090 := (+ #2089 #2087) -#2091 := (= #2090 0::int) -#2094 := (and #2093 #2091) -#2110 := (not #2094) -#2113 := (forall (vars (?x50 T2)) #2110) -#2099 := (= ?x49!8 uf_11) -#2100 := (not #2099) -#2101 := (and #2100 #2098) -#2102 := (not #2101) -#2107 := (not #2102) -#2117 := (and #2107 #2113) -#2195 := (or #2117 #2191) -#2081 := (not #674) -#2078 := (not #692) -#2075 := (not #665) -#2072 := (not #683) -#2205 := (and #2072 #2075 #2078 #2081 #2195 #2202) -#2461 := (or #2205 #2457) -#2049 := (+ #2048 #1299) -#2050 := (>= #2049 0::int) -#2051 := (not #2050) -#2054 := (+ #2053 #2049) -#2055 := (= #2054 0::int) -#2058 := (and #2057 #2055 #2051) -#2063 := (or #1308 #2058) -#2066 := (forall (vars (?x46 T2)) #2063) -#2023 := (+ #1261 #2022) -#2025 := (+ #2024 #2023) -#2026 := (= #2025 0::int) -#2027 := (+ #2024 #1261) -#2028 := (>= #2027 0::int) -#2029 := (not #2028) -#2031 := (and #2030 #2029 #2026) -#2036 := (or #1270 #2031) -#2039 := (forall (vars (?x37 T2)) #2036) -#2015 := (not #1749) -#2486 := (and #2015 #2039 #2066 #2461 #1716 #1732 #1741) -#1981 := (+ #1980 #1978) -#1982 := (+ #69 #1981) -#1983 := (= #1982 0::int) -#1987 := (and #77 #1986 #1983) -#2003 := (not #1987) -#2006 := (forall (vars (?x38 T2)) #2003) -#1993 := (not #1992) -#1994 := (and #1993 #1991) -#1995 := (not #1994) -#2000 := (not #1995) -#2010 := (and #2000 #2006) -#2490 := (or #2010 #2486) -#2494 := (and #1255 #2490) -#1952 := (+ #1951 #1949) -#1954 := (+ #1953 #1952) -#1955 := (>= #1954 0::int) -#1961 := (and #1960 #1959) -#1962 := (not #1961) -#1963 := (or #1962 #1955) -#1964 := (not #1963) -#2498 := (or #1964 #2494) -#2502 := (and #1229 #2498) -#1924 := (* -1::int #1923) -#1926 := (+ #1925 #1924) -#1927 := (>= #1926 0::int) -#1931 := (and #1930 #1928) -#1932 := (not #1931) -#1933 := (or #1932 #1927) -#1934 := (not #1933) -#2506 := (or #1934 #2502) -#2510 := (and #1214 #2506) -#2514 := (or #1909 #2510) -#1864 := (not #1208) -#2518 := (and #1864 #2514) -#2522 := (or #1208 #2518) -#3062 := (iff #2522 #3061) -#3059 := (iff #2518 #3058) -#3056 := (iff #2514 #3055) -#3053 := (iff #2510 #3052) -#3050 := (iff #2506 #3049) -#3047 := (iff #2502 #3046) -#3044 := (iff #2498 #3043) -#3041 := (iff #2494 #3040) -#3038 := (iff #2490 #3037) -#3035 := (iff #2486 #3032) -#3029 := (and #109 #2661 #2701 #3026 #1716 #1732 #1741) -#3033 := (iff #3029 #3032) -#3034 := [rewrite]: #3033 -#3030 := (iff #2486 #3029) -#3027 := (iff #2461 #3026) -#3024 := (iff #2457 #3021) -#3018 := (and #195 #731 #2223 #1473 #3015 #1631 #1649 #1657) -#3022 := (iff #3018 #3021) -#3023 := [rewrite]: #3022 -#3019 := (iff #2457 #3018) -#3016 := (iff #2437 #3015) -#3013 := (iff #2433 #3012) -#3010 := (iff #2429 #3009) -#3007 := (iff #2425 #3006) -#3004 := (iff #2421 #3003) -#3001 := (iff #2417 #3000) -#2998 := (iff #2413 #2997) -#2995 := (iff #2409 #2994) -#2992 := (iff #2405 #2991) -#2989 := (iff #2401 #2988) -#2986 := (iff #2397 #2985) -#2983 := (iff #2393 #2980) -#2943 := (and #2368 #2937) -#2974 := (and #2943 #2971) -#2977 := (and #1541 #2974) -#2981 := (iff #2977 #2980) -#2982 := [rewrite]: #2981 -#2978 := (iff #2393 #2977) -#2975 := (iff #2388 #2974) -#2972 := (iff #2384 #2971) -#2969 := (iff #2381 #2968) -#2966 := (iff #2364 #2965) -#2963 := (iff #2361 #2962) -#2960 := (= #2360 #2959) -#2961 := [rewrite]: #2960 -#2964 := [monotonicity #2961]: #2963 -#2967 := [monotonicity #2964]: #2966 -#2970 := [monotonicity #2967]: #2969 -#2973 := [quant-intro #2970]: #2972 -#2956 := (iff #2378 #2943) -#2948 := (not #2943) -#2951 := (not #2948) -#2954 := (iff #2951 #2943) -#2955 := [rewrite]: #2954 -#2952 := (iff #2378 #2951) -#2949 := (iff #2372 #2948) -#2946 := (iff #2371 #2943) -#2940 := (and #2937 #2368) -#2944 := (iff #2940 #2943) -#2945 := [rewrite]: #2944 -#2941 := (iff #2371 #2940) -#2938 := (iff #2370 #2937) -#2935 := (iff #2369 #2934) -#2936 := [rewrite]: #2935 -#2939 := [monotonicity #2936]: #2938 -#2942 := [monotonicity #2939]: #2941 -#2947 := [trans #2942 #2945]: #2946 -#2950 := [monotonicity #2947]: #2949 -#2953 := [monotonicity #2950]: #2952 -#2957 := [trans #2953 #2955]: #2956 -#2976 := [monotonicity #2957 #2973]: #2975 -#2979 := [monotonicity #2976]: #2978 -#2984 := [trans #2979 #2982]: #2983 -#2932 := (iff #2342 #2931) -#2929 := (iff #2341 #2928) -#2926 := (iff #2332 #2923) -#2913 := (+ #2327 #2330) -#2914 := (+ #2326 #2913) -#2917 := (>= #2914 0::int) -#2924 := (iff #2917 #2923) -#2925 := [rewrite]: #2924 -#2918 := (iff #2332 #2917) -#2915 := (= #2331 #2914) -#2916 := [rewrite]: #2915 -#2919 := [monotonicity #2916]: #2918 -#2927 := [trans #2919 #2925]: #2926 -#2911 := (iff #2340 #2910) -#2908 := (iff #2339 #2907) -#2909 := [rewrite]: #2908 -#2912 := [monotonicity #2909]: #2911 -#2930 := [monotonicity #2912 #2927]: #2929 -#2933 := [monotonicity #2930]: #2932 -#2987 := [monotonicity #2933 #2984]: #2986 -#2990 := [monotonicity #2987]: #2989 -#2905 := (iff #2311 #2904) -#2902 := (iff #2310 #2901) -#2899 := (iff #2302 #2896) -#2888 := (+ #2299 #2300) -#2891 := (>= #2888 0::int) -#2897 := (iff #2891 #2896) -#2898 := [rewrite]: #2897 -#2892 := (iff #2302 #2891) -#2889 := (= #2301 #2888) -#2890 := [rewrite]: #2889 -#2893 := [monotonicity #2890]: #2892 -#2900 := [trans #2893 #2898]: #2899 -#2886 := (iff #2309 #2885) -#2883 := (iff #2308 #2882) -#2884 := [rewrite]: #2883 -#2887 := [monotonicity #2884]: #2886 -#2903 := [monotonicity #2887 #2900]: #2902 -#2906 := [monotonicity #2903]: #2905 -#2993 := [monotonicity #2906 #2990]: #2992 -#2996 := [monotonicity #2993]: #2995 -#2999 := [monotonicity #2996]: #2998 -#2880 := (iff #2278 #217) -#2881 := [rewrite]: #2880 -#3002 := [monotonicity #2881 #2999]: #3001 -#3005 := [monotonicity #3002]: #3004 -#3008 := [monotonicity #3005]: #3007 -#2878 := (iff #2264 #2877) -#2875 := (iff #2263 #2872) -#2869 := (or #2866 #2259) -#2873 := (iff #2869 #2872) -#2874 := [rewrite]: #2873 -#2870 := (iff #2263 #2869) -#2867 := (iff #2262 #2866) -#2868 := [rewrite]: #2867 -#2871 := [monotonicity #2868]: #2870 -#2876 := [trans #2871 #2874]: #2875 -#2879 := [monotonicity #2876]: #2878 -#3011 := [monotonicity #2879 #3008]: #3010 -#3014 := [monotonicity #3011]: #3013 -#2864 := (iff #2244 #2863) -#2861 := (iff #2243 #2858) -#2850 := (+ #2240 #2241) -#2853 := (>= #2850 0::int) -#2859 := (iff #2853 #2858) -#2860 := [rewrite]: #2859 -#2854 := (iff #2243 #2853) -#2851 := (= #2242 #2850) -#2852 := [rewrite]: #2851 -#2855 := [monotonicity #2852]: #2854 -#2862 := [trans #2855 #2860]: #2861 -#2865 := [monotonicity #2862]: #2864 -#3017 := [monotonicity #2865 #3014]: #3016 -#2848 := (iff #2209 #195) -#2849 := [rewrite]: #2848 -#3020 := [monotonicity #2849 #3017]: #3019 -#3025 := [trans #3020 #3023]: #3024 -#2846 := (iff #2205 #2843) -#2840 := (and #145 #150 #566 #569 #2837 #2202) -#2844 := (iff #2840 #2843) -#2845 := [rewrite]: #2844 -#2841 := (iff #2205 #2840) -#2838 := (iff #2195 #2837) -#2835 := (iff #2191 #2834) -#2832 := (iff #2187 #2829) -#2826 := (or #2823 #2183) -#2830 := (iff #2826 #2829) -#2831 := [rewrite]: #2830 -#2827 := (iff #2187 #2826) -#2824 := (iff #2168 #2823) -#2821 := (iff #2167 #2820) -#2818 := (iff #2156 #2815) -#2806 := (+ #2151 #2154) -#2807 := (+ #2150 #2806) -#2810 := (>= #2807 0::int) -#2816 := (iff #2810 #2815) -#2817 := [rewrite]: #2816 -#2811 := (iff #2156 #2810) -#2808 := (= #2155 #2807) -#2809 := [rewrite]: #2808 -#2812 := [monotonicity #2809]: #2811 -#2819 := [trans #2812 #2817]: #2818 -#2804 := (iff #2166 #2803) -#2801 := (iff #2165 #2800) -#2802 := [rewrite]: #2801 -#2805 := [monotonicity #2802]: #2804 -#2822 := [monotonicity #2805 #2819]: #2821 -#2825 := [monotonicity #2822]: #2824 -#2828 := [monotonicity #2825]: #2827 -#2833 := [trans #2828 #2831]: #2832 -#2798 := (iff #2141 #2797) -#2795 := (iff #2138 #2794) -#2792 := (iff #2133 #2791) -#2789 := (iff #2130 #2786) -#2776 := (+ #2125 #2128) -#2777 := (+ #1344 #2776) -#2780 := (= #2777 0::int) -#2787 := (iff #2780 #2786) -#2788 := [rewrite]: #2787 -#2781 := (iff #2130 #2780) -#2778 := (= #2129 #2777) -#2779 := [rewrite]: #2778 -#2782 := [monotonicity #2779]: #2781 -#2790 := [trans #2782 #2788]: #2789 -#2774 := (iff #2132 #2773) -#2771 := (iff #2131 #2768) -#2760 := (+ #1344 #2125) -#2763 := (>= #2760 0::int) -#2769 := (iff #2763 #2768) -#2770 := [rewrite]: #2769 -#2764 := (iff #2131 #2763) -#2761 := (= #2126 #2760) -#2762 := [rewrite]: #2761 -#2765 := [monotonicity #2762]: #2764 -#2772 := [trans #2765 #2770]: #2771 -#2775 := [monotonicity #2772]: #2774 -#2793 := [monotonicity #2775 #2790]: #2792 -#2796 := [monotonicity #2793]: #2795 -#2799 := [quant-intro #2796]: #2798 -#2836 := [monotonicity #2799 #2833]: #2835 -#2758 := (iff #2117 #2755) -#2721 := (and #2098 #2715) -#2752 := (and #2721 #2749) -#2756 := (iff #2752 #2755) -#2757 := [rewrite]: #2756 -#2753 := (iff #2117 #2752) -#2750 := (iff #2113 #2749) -#2747 := (iff #2110 #2746) -#2744 := (iff #2094 #2743) -#2741 := (iff #2091 #2740) -#2738 := (= #2090 #2737) -#2739 := [rewrite]: #2738 -#2742 := [monotonicity #2739]: #2741 -#2745 := [monotonicity #2742]: #2744 -#2748 := [monotonicity #2745]: #2747 -#2751 := [quant-intro #2748]: #2750 -#2734 := (iff #2107 #2721) -#2726 := (not #2721) -#2729 := (not #2726) -#2732 := (iff #2729 #2721) -#2733 := [rewrite]: #2732 -#2730 := (iff #2107 #2729) -#2727 := (iff #2102 #2726) -#2724 := (iff #2101 #2721) -#2718 := (and #2715 #2098) -#2722 := (iff #2718 #2721) -#2723 := [rewrite]: #2722 -#2719 := (iff #2101 #2718) -#2716 := (iff #2100 #2715) -#2713 := (iff #2099 #2712) -#2714 := [rewrite]: #2713 -#2717 := [monotonicity #2714]: #2716 -#2720 := [monotonicity #2717]: #2719 -#2725 := [trans #2720 #2723]: #2724 -#2728 := [monotonicity #2725]: #2727 -#2731 := [monotonicity #2728]: #2730 -#2735 := [trans #2731 #2733]: #2734 -#2754 := [monotonicity #2735 #2751]: #2753 -#2759 := [trans #2754 #2757]: #2758 -#2839 := [monotonicity #2759 #2836]: #2838 -#2710 := (iff #2081 #569) -#2711 := [rewrite]: #2710 -#2708 := (iff #2078 #566) -#2709 := [rewrite]: #2708 -#2706 := (iff #2075 #150) -#2707 := [rewrite]: #2706 -#2704 := (iff #2072 #145) -#2705 := [rewrite]: #2704 -#2842 := [monotonicity #2705 #2707 #2709 #2711 #2839]: #2841 -#2847 := [trans #2842 #2845]: #2846 -#3028 := [monotonicity #2847 #3025]: #3027 -#2702 := (iff #2066 #2701) -#2699 := (iff #2063 #2698) -#2696 := (iff #2058 #2695) -#2693 := (iff #2051 #2692) -#2690 := (iff #2050 #2687) -#2680 := (+ #1299 #2048) -#2683 := (>= #2680 0::int) -#2688 := (iff #2683 #2687) -#2689 := [rewrite]: #2688 -#2684 := (iff #2050 #2683) -#2681 := (= #2049 #2680) -#2682 := [rewrite]: #2681 -#2685 := [monotonicity #2682]: #2684 -#2691 := [trans #2685 #2689]: #2690 -#2694 := [monotonicity #2691]: #2693 -#2678 := (iff #2055 #2675) -#2664 := (+ #2048 #2053) -#2665 := (+ #1299 #2664) -#2668 := (= #2665 0::int) -#2676 := (iff #2668 #2675) -#2677 := [rewrite]: #2676 -#2669 := (iff #2055 #2668) -#2666 := (= #2054 #2665) -#2667 := [rewrite]: #2666 -#2670 := [monotonicity #2667]: #2669 -#2679 := [trans #2670 #2677]: #2678 -#2697 := [monotonicity #2679 #2694]: #2696 -#2700 := [monotonicity #2697]: #2699 -#2703 := [quant-intro #2700]: #2702 -#2662 := (iff #2039 #2661) -#2659 := (iff #2036 #2658) -#2656 := (iff #2031 #2655) -#2653 := (iff #2026 #2650) -#2640 := (+ #2022 #2024) -#2641 := (+ #1261 #2640) -#2644 := (= #2641 0::int) -#2651 := (iff #2644 #2650) -#2652 := [rewrite]: #2651 -#2645 := (iff #2026 #2644) -#2642 := (= #2025 #2641) -#2643 := [rewrite]: #2642 -#2646 := [monotonicity #2643]: #2645 -#2654 := [trans #2646 #2652]: #2653 -#2638 := (iff #2029 #2637) -#2635 := (iff #2028 #2632) -#2624 := (+ #1261 #2024) -#2627 := (>= #2624 0::int) -#2633 := (iff #2627 #2632) -#2634 := [rewrite]: #2633 -#2628 := (iff #2028 #2627) -#2625 := (= #2027 #2624) -#2626 := [rewrite]: #2625 -#2629 := [monotonicity #2626]: #2628 -#2636 := [trans #2629 #2634]: #2635 -#2639 := [monotonicity #2636]: #2638 -#2657 := [monotonicity #2639 #2654]: #2656 -#2660 := [monotonicity #2657]: #2659 -#2663 := [quant-intro #2660]: #2662 -#2622 := (iff #2015 #109) -#2623 := [rewrite]: #2622 -#3031 := [monotonicity #2623 #2663 #2703 #3028]: #3030 -#3036 := [trans #3031 #3034]: #3035 -#2620 := (iff #2010 #2617) -#2583 := (and #1991 #2577) -#2614 := (and #2583 #2611) -#2618 := (iff #2614 #2617) -#2619 := [rewrite]: #2618 -#2615 := (iff #2010 #2614) -#2612 := (iff #2006 #2611) -#2609 := (iff #2003 #2608) -#2606 := (iff #1987 #2605) -#2603 := (iff #1983 #2602) -#2600 := (= #1982 #2599) -#2601 := [rewrite]: #2600 -#2604 := [monotonicity #2601]: #2603 -#2607 := [monotonicity #2604]: #2606 -#2610 := [monotonicity #2607]: #2609 -#2613 := [quant-intro #2610]: #2612 -#2596 := (iff #2000 #2583) -#2588 := (not #2583) -#2591 := (not #2588) -#2594 := (iff #2591 #2583) -#2595 := [rewrite]: #2594 -#2592 := (iff #2000 #2591) -#2589 := (iff #1995 #2588) -#2586 := (iff #1994 #2583) -#2580 := (and #2577 #1991) -#2584 := (iff #2580 #2583) -#2585 := [rewrite]: #2584 -#2581 := (iff #1994 #2580) -#2578 := (iff #1993 #2577) -#2579 := [monotonicity #2576]: #2578 -#2582 := [monotonicity #2579]: #2581 -#2587 := [trans #2582 #2585]: #2586 -#2590 := [monotonicity #2587]: #2589 -#2593 := [monotonicity #2590]: #2592 -#2597 := [trans #2593 #2595]: #2596 -#2616 := [monotonicity #2597 #2613]: #2615 -#2621 := [trans #2616 #2619]: #2620 -#3039 := [monotonicity #2621 #3036]: #3038 -#3042 := [monotonicity #3039]: #3041 -#2572 := (iff #1964 #2571) -#2569 := (iff #1963 #2568) -#2566 := (iff #1955 #2565) -#2563 := (= #1954 #2562) -#2564 := [rewrite]: #2563 -#2567 := [monotonicity #2564]: #2566 -#2559 := (iff #1962 #2558) -#2556 := (iff #1961 #2555) -#2557 := [rewrite]: #2556 -#2560 := [monotonicity #2557]: #2559 -#2570 := [monotonicity #2560 #2567]: #2569 -#2573 := [monotonicity #2570]: #2572 -#3045 := [monotonicity #2573 #3042]: #3044 -#3048 := [monotonicity #3045]: #3047 -#2553 := (iff #1934 #2552) -#2550 := (iff #1933 #2549) -#2547 := (iff #1927 #2544) -#2536 := (+ #1924 #1925) -#2539 := (>= #2536 0::int) -#2545 := (iff #2539 #2544) -#2546 := [rewrite]: #2545 -#2540 := (iff #1927 #2539) -#2537 := (= #1926 #2536) -#2538 := [rewrite]: #2537 -#2541 := [monotonicity #2538]: #2540 -#2548 := [trans #2541 #2546]: #2547 -#2534 := (iff #1932 #2533) -#2531 := (iff #1931 #2530) -#2532 := [rewrite]: #2531 -#2535 := [monotonicity #2532]: #2534 -#2551 := [monotonicity #2535 #2548]: #2550 -#2554 := [monotonicity #2551]: #2553 -#3051 := [monotonicity #2554 #3048]: #3050 -#3054 := [monotonicity #3051]: #3053 -#3057 := [monotonicity #3054]: #3056 -#2528 := (iff #1864 #81) -#2529 := [rewrite]: #2528 -#3060 := [monotonicity #2529 #3057]: #3059 -#3063 := [monotonicity #3060]: #3062 -#1838 := (not #1802) -#2523 := (~ #1838 #2522) -#2519 := (not #1799) -#2520 := (~ #2519 #2518) -#2515 := (not #1796) -#2516 := (~ #2515 #2514) -#2511 := (not #1793) -#2512 := (~ #2511 #2510) -#2507 := (not #1790) -#2508 := (~ #2507 #2506) -#2503 := (not #1787) -#2504 := (~ #2503 #2502) -#2499 := (not #1784) -#2500 := (~ #2499 #2498) -#2495 := (not #1781) -#2496 := (~ #2495 #2494) -#2491 := (not #1778) -#2492 := (~ #2491 #2490) -#2487 := (not #1773) -#2488 := (~ #2487 #2486) -#2483 := (not #1744) -#2484 := (~ #2483 #1741) -#2481 := (~ #1741 #1741) -#2479 := (~ #1738 #1738) -#2480 := [refl]: #2479 -#2482 := [nnf-pos #2480]: #2481 -#2485 := [nnf-neg #2482]: #2484 -#2476 := (not #1735) -#2477 := (~ #2476 #1732) -#2474 := (~ #1732 #1732) -#2472 := (~ #1727 #1727) -#2473 := [refl]: #2472 -#2475 := [nnf-pos #2473]: #2474 -#2478 := [nnf-neg #2475]: #2477 -#2469 := (not #1719) -#2470 := (~ #2469 #1716) -#2467 := (~ #1716 #1716) -#2465 := (~ #1713 #1713) -#2466 := [refl]: #2465 -#2468 := [nnf-pos #2466]: #2467 -#2471 := [nnf-neg #2468]: #2470 -#2462 := (not #1696) -#2463 := (~ #2462 #2461) -#2458 := (not #1691) -#2459 := (~ #2458 #2457) -#2455 := (~ #1657 #1657) -#2456 := [refl]: #2455 -#2452 := (not #1652) -#2453 := (~ #2452 #1649) -#2450 := (~ #1649 #1649) -#2448 := (~ #1644 #1644) -#2449 := [refl]: #2448 -#2451 := [nnf-pos #2449]: #2450 -#2454 := [nnf-neg #2451]: #2453 -#2445 := (not #1634) -#2446 := (~ #2445 #1631) -#2443 := (~ #1631 #1631) -#2441 := (~ #1628 #1628) -#2442 := [refl]: #2441 -#2444 := [nnf-pos #2442]: #2443 -#2447 := [nnf-neg #2444]: #2446 -#2438 := (not #1617) -#2439 := (~ #2438 #2437) -#2434 := (not #1614) -#2435 := (~ #2434 #2433) -#2430 := (not #1611) -#2431 := (~ #2430 #2429) -#2426 := (not #1608) -#2427 := (~ #2426 #2425) -#2422 := (not #1605) -#2423 := (~ #2422 #2421) -#2418 := (not #1602) -#2419 := (~ #2418 #2417) -#2414 := (not #1599) -#2415 := (~ #2414 #2413) -#2410 := (not #1596) -#2411 := (~ #2410 #2409) -#2406 := (not #1593) -#2407 := (~ #2406 #2405) -#2402 := (not #1590) -#2403 := (~ #2402 #2401) -#2398 := (not #1587) -#2399 := (~ #2398 #2397) -#2394 := (not #1584) -#2395 := (~ #2394 #2393) -#2375 := (not #1581) -#2391 := (~ #2375 #2388) -#2365 := (exists (vars (?x76 T2)) #2364) -#2373 := (or #2372 #2365) -#2374 := (not #2373) -#2389 := (~ #2374 #2388) -#2385 := (not #2365) -#2386 := (~ #2385 #2384) -#2382 := (~ #2381 #2381) -#2383 := [refl]: #2382 -#2387 := [nnf-neg #2383]: #2386 -#2379 := (~ #2378 #2378) -#2380 := [refl]: #2379 -#2390 := [nnf-neg #2380 #2387]: #2389 -#2376 := (~ #2375 #2374) -#2377 := [sk]: #2376 -#2392 := [trans #2377 #2390]: #2391 -#2351 := (not #1544) -#2352 := (~ #2351 #1541) -#2349 := (~ #1541 #1541) -#2347 := (~ #1538 #1538) -#2348 := [refl]: #2347 -#2350 := [nnf-pos #2348]: #2349 -#2353 := [nnf-neg #2350]: #2352 -#2396 := [nnf-neg #2353 #2392]: #2395 -#2343 := (~ #1544 #2342) -#2344 := [sk]: #2343 -#2400 := [nnf-neg #2344 #2396]: #2399 -#2320 := (not #1520) -#2321 := (~ #2320 #1517) -#2318 := (~ #1517 #1517) -#2316 := (~ #1512 #1512) -#2317 := [refl]: #2316 -#2319 := [nnf-pos #2317]: #2318 -#2322 := [nnf-neg #2319]: #2321 -#2404 := [nnf-neg #2322 #2400]: #2403 -#2312 := (~ #1520 #2311) -#2313 := [sk]: #2312 -#2408 := [nnf-neg #2313 #2404]: #2407 -#2293 := (not #1501) -#2294 := (~ #2293 #1498) -#2291 := (~ #1498 #1498) -#2289 := (~ #1495 #1495) -#2290 := [refl]: #2289 -#2292 := [nnf-pos #2290]: #2291 -#2295 := [nnf-neg #2292]: #2294 -#2412 := [nnf-neg #2295 #2408]: #2411 -#2285 := (~ #1501 #2284) -#2286 := [sk]: #2285 -#2416 := [nnf-neg #2286 #2412]: #2415 -#2279 := (~ #2278 #2278) -#2280 := [refl]: #2279 -#2420 := [nnf-neg #2280 #2416]: #2419 -#2276 := (~ #1492 #1492) -#2277 := [refl]: #2276 -#2424 := [nnf-neg #2277 #2420]: #2423 -#2273 := (not #939) -#2274 := (~ #2273 #785) -#2271 := (~ #785 #785) -#2269 := (~ #780 #780) -#2270 := [refl]: #2269 -#2272 := [nnf-pos #2270]: #2271 -#2275 := [nnf-neg #2272]: #2274 -#2428 := [nnf-neg #2275 #2424]: #2427 -#2265 := (~ #939 #2264) -#2266 := [sk]: #2265 -#2432 := [nnf-neg #2266 #2428]: #2431 -#2253 := (not #1487) -#2254 := (~ #2253 #1484) -#2251 := (~ #1484 #1484) -#2249 := (~ #1479 #1479) -#2250 := [refl]: #2249 -#2252 := [nnf-pos #2250]: #2251 -#2255 := [nnf-neg #2252]: #2254 -#2436 := [nnf-neg #2255 #2432]: #2435 -#2245 := (~ #1487 #2244) -#2246 := [sk]: #2245 -#2440 := [nnf-neg #2246 #2436]: #2439 -#2235 := (not #1476) -#2236 := (~ #2235 #1473) -#2233 := (~ #1473 #1473) -#2231 := (~ #1468 #1468) -#2232 := [refl]: #2231 -#2234 := [nnf-pos #2232]: #2233 -#2237 := [nnf-neg #2234]: #2236 -#2228 := (not #1667) -#2229 := (~ #2228 #2223) -#2224 := (~ #1426 #2223) -#2225 := [sk]: #2224 -#2230 := [nnf-neg #2225]: #2229 -#2212 := (~ #731 #731) -#2213 := [refl]: #2212 -#2210 := (~ #2209 #2209) -#2211 := [refl]: #2210 -#2460 := [nnf-neg #2211 #2213 #2230 #2237 #2440 #2447 #2454 #2456]: #2459 -#2206 := (not #1444) -#2207 := (~ #2206 #2205) -#2203 := (~ #1667 #2202) -#2200 := (~ #2199 #2199) -#2201 := [refl]: #2200 -#2204 := [nnf-neg #2201]: #2203 -#2196 := (not #1415) -#2197 := (~ #2196 #2195) -#2192 := (not #1412) -#2193 := (~ #2192 #2191) -#2188 := (not #1409) -#2189 := (~ #2188 #2187) -#2184 := (not #1404) -#2185 := (~ #2184 #2183) -#2180 := (not #1396) -#2181 := (~ #2180 #1393) -#2178 := (~ #1393 #1393) -#2176 := (~ #1390 #1390) -#2177 := [refl]: #2176 -#2179 := [nnf-pos #2177]: #2178 -#2182 := [nnf-neg #2179]: #2181 -#2174 := (~ #2173 #2173) -#2175 := [refl]: #2174 -#2186 := [nnf-neg #2175 #2182]: #2185 -#2169 := (~ #1396 #2168) -#2170 := [sk]: #2169 -#2190 := [nnf-neg #2170 #2186]: #2189 -#2144 := (not #1378) -#2145 := (~ #2144 #2141) -#2142 := (~ #1375 #2141) -#2139 := (~ #1372 #2138) -#2134 := (~ #1369 #2133) -#2135 := [sk]: #2134 -#2122 := (~ #1353 #1353) -#2123 := [refl]: #2122 -#2140 := [monotonicity #2123 #2135]: #2139 -#2143 := [nnf-pos #2140]: #2142 -#2146 := [nnf-neg #2143]: #2145 -#2194 := [nnf-neg #2146 #2190]: #2193 -#2120 := (~ #1378 #2117) -#2095 := (exists (vars (?x50 T2)) #2094) -#2103 := (or #2102 #2095) -#2104 := (not #2103) -#2118 := (~ #2104 #2117) -#2114 := (not #2095) -#2115 := (~ #2114 #2113) -#2111 := (~ #2110 #2110) -#2112 := [refl]: #2111 -#2116 := [nnf-neg #2112]: #2115 -#2108 := (~ #2107 #2107) -#2109 := [refl]: #2108 -#2119 := [nnf-neg #2109 #2116]: #2118 -#2105 := (~ #1378 #2104) -#2106 := [sk]: #2105 -#2121 := [trans #2106 #2119]: #2120 -#2198 := [nnf-neg #2121 #2194]: #2197 -#2082 := (~ #2081 #2081) -#2083 := [refl]: #2082 -#2079 := (~ #2078 #2078) -#2080 := [refl]: #2079 -#2076 := (~ #2075 #2075) -#2077 := [refl]: #2076 -#2073 := (~ #2072 #2072) -#2074 := [refl]: #2073 -#2208 := [nnf-neg #2074 #2077 #2080 #2083 #2198 #2204]: #2207 -#2464 := [nnf-neg #2208 #2460]: #2463 -#2069 := (not #1341) -#2070 := (~ #2069 #2066) -#2067 := (~ #1338 #2066) -#2064 := (~ #1335 #2063) -#2059 := (~ #1332 #2058) -#2060 := [sk]: #2059 -#2045 := (~ #1308 #1308) -#2046 := [refl]: #2045 -#2065 := [monotonicity #2046 #2060]: #2064 -#2068 := [nnf-pos #2065]: #2067 -#2071 := [nnf-neg #2068]: #2070 -#2042 := (not #1752) -#2043 := (~ #2042 #2039) -#2040 := (~ #1296 #2039) -#2037 := (~ #1293 #2036) -#2032 := (~ #1290 #2031) -#2033 := [sk]: #2032 -#2018 := (~ #1270 #1270) -#2019 := [refl]: #2018 -#2038 := [monotonicity #2019 #2033]: #2037 -#2041 := [nnf-pos #2038]: #2040 -#2044 := [nnf-neg #2041]: #2043 -#2016 := (~ #2015 #2015) -#2017 := [refl]: #2016 -#2489 := [nnf-neg #2017 #2044 #2071 #2464 #2471 #2478 #2485]: #2488 -#2013 := (~ #1752 #2010) -#1988 := (exists (vars (?x38 T2)) #1987) -#1996 := (or #1995 #1988) -#1997 := (not #1996) -#2011 := (~ #1997 #2010) -#2007 := (not #1988) -#2008 := (~ #2007 #2006) -#2004 := (~ #2003 #2003) -#2005 := [refl]: #2004 -#2009 := [nnf-neg #2005]: #2008 -#2001 := (~ #2000 #2000) -#2002 := [refl]: #2001 -#2012 := [nnf-neg #2002 #2009]: #2011 -#1998 := (~ #1752 #1997) -#1999 := [sk]: #1998 -#2014 := [trans #1999 #2012]: #2013 -#2493 := [nnf-neg #2014 #2489]: #2492 -#1973 := (not #1258) -#1974 := (~ #1973 #1255) -#1971 := (~ #1255 #1255) -#1969 := (~ #1252 #1252) -#1970 := [refl]: #1969 -#1972 := [nnf-pos #1970]: #1971 -#1975 := [nnf-neg #1972]: #1974 -#2497 := [nnf-neg #1975 #2493]: #2496 -#1965 := (~ #1258 #1964) -#1966 := [sk]: #1965 -#2501 := [nnf-neg #1966 #2497]: #2500 -#1943 := (not #1232) -#1944 := (~ #1943 #1229) -#1941 := (~ #1229 #1229) -#1939 := (~ #1226 #1226) -#1940 := [refl]: #1939 -#1942 := [nnf-pos #1940]: #1941 -#1945 := [nnf-neg #1942]: #1944 -#2505 := [nnf-neg #1945 #2501]: #2504 -#1935 := (~ #1232 #1934) -#1936 := [sk]: #1935 -#2509 := [nnf-neg #1936 #2505]: #2508 -#1918 := (not #1217) -#1919 := (~ #1918 #1214) -#1916 := (~ #1214 #1214) -#1914 := (~ #1213 #1213) -#1915 := [refl]: #1914 -#1917 := [nnf-pos #1915]: #1916 -#1920 := [nnf-neg #1917]: #1919 -#2513 := [nnf-neg #1920 #2509]: #2512 -#1910 := (~ #1217 #1909) -#1911 := [sk]: #1910 -#2517 := [nnf-neg #1911 #2513]: #2516 -#1865 := (~ #1864 #1864) -#1905 := [refl]: #1865 -#2521 := [nnf-neg #1905 #2517]: #2520 -#1903 := (~ #1208 #1208) -#1904 := [refl]: #1903 -#2524 := [nnf-neg #1904 #2521]: #2523 -#1839 := [not-or-elim #1835]: #1838 -#2525 := [mp~ #1839 #2524]: #2522 -#2526 := [mp #2525 #3063]: #3061 -#3705 := [mp #2526 #3704]: #3702 -#4636 := [mp #3705 #4635]: #4633 -#4922 := [unit-resolution #4636 #4656]: #4630 -#3960 := (or #4627 #4621) -#3961 := [def-axiom]: #3960 -#4948 := [unit-resolution #3961 #4922]: #4621 -#373 := (<= uf_9 0::int) -#374 := (not #373) -#57 := (< 0::int uf_9) -#375 := (iff #57 #374) -#376 := [rewrite]: #375 -#369 := [asserted]: #57 -#377 := [mp #369 #376]: #374 -#4731 := (* -1::int #1907) -#4773 := (+ uf_9 #4731) -#4774 := (<= #4773 0::int) -#4662 := (= uf_9 #1907) -#4665 := (= uf_11 ?x27!0) -#4779 := (not #4665) -#4776 := (= #1907 0::int) -#4795 := (not #4776) -#4789 := [hypothesis]: #1909 -#4796 := (or #4795 #1908) -#4797 := [th-lemma]: #4796 -#4798 := [unit-resolution #4797 #4789]: #4795 -#4767 := (or #3800 #4779 #4776) -#4663 := (= ?x27!0 uf_11) -#4777 := (not #4663) -#4778 := (or #4777 #4776) -#4762 := (or #3800 #4778) -#4791 := (iff #4762 #4767) -#4764 := (or #4779 #4776) -#4769 := (or #3800 #4764) -#4772 := (iff #4769 #4767) -#4790 := [rewrite]: #4772 -#4770 := (iff #4762 #4769) -#4765 := (iff #4778 #4764) -#4780 := (iff #4777 #4779) -#4666 := (iff #4663 #4665) -#4718 := [rewrite]: #4666 -#4763 := [monotonicity #4718]: #4780 -#4766 := [monotonicity #4763]: #4765 -#4771 := [monotonicity #4766]: #4770 -#4792 := [trans #4771 #4790]: #4791 -#4768 := [quant-inst]: #4762 -#4793 := [mp #4768 #4792]: #4767 -#4799 := [unit-resolution #4793 #4642 #4798]: #4779 -#4722 := (or #4662 #4665) -#4707 := (or #4706 #4662 #4665) -#4664 := (or #4663 #4662) -#4708 := (or #4706 #4664) -#4714 := (iff #4708 #4707) -#4710 := (or #4706 #4722) -#4712 := (iff #4710 #4707) -#4713 := [rewrite]: #4712 -#4705 := (iff #4708 #4710) -#4725 := (iff #4664 #4722) -#4719 := (or #4665 #4662) -#4723 := (iff #4719 #4722) -#4724 := [rewrite]: #4723 -#4720 := (iff #4664 #4719) -#4721 := [monotonicity #4718]: #4720 -#4726 := [trans #4721 #4724]: #4725 -#4711 := [monotonicity #4726]: #4705 -#4715 := [trans #4711 #4713]: #4714 -#4709 := [quant-inst]: #4708 -#4730 := [mp #4709 #4715]: #4707 -#4851 := [unit-resolution #4730 #4263]: #4722 -#4852 := [unit-resolution #4851 #4799]: #4662 -#4853 := (not #4662) -#4854 := (or #4853 #4774) -#4855 := [th-lemma]: #4854 -#4856 := [unit-resolution #4855 #4852]: #4774 -#4794 := (<= #1907 0::int) -#4857 := (or #4794 #1908) -#4858 := [th-lemma]: #4857 -#4859 := [unit-resolution #4858 #4789]: #4794 -#4839 := [th-lemma #4859 #4856 #377]: false -#4840 := [lemma #4839]: #1908 -#3955 := (or #4624 #1909 #4618) +#36 := (ite #24 #34 #35) +#37 := (iff #32 #36) +#4091 := (forall (vars (?x10 T4) (?x11 T2) (?x12 T5) (?x13 T2)) (:pat #4090) #37) +#38 := (forall (vars (?x10 T4) (?x11 T2) (?x12 T5) (?x13 T2)) #37) +#4094 := (iff #38 #4091) +#4092 := (iff #37 #37) +#4093 := [refl]: #4092 +#4095 := [quant-intro #4093]: #4094 +#1735 := (~ #38 #38) +#1771 := (~ #37 #37) +#1772 := [refl]: #1771 +#1736 := [nnf-pos #1772]: #1735 +#325 := [asserted]: #38 +#1773 := [mp~ #325 #1736]: #38 +#4096 := [mp #1773 #4095]: #4091 +#6627 := (not #4091) +#27178 := (or #6627 #27175) +#3770 := (= uf_8 uf_8) +#27158 := (= #19932 #10571) +#27159 := (ite #27158 #3770 #25982) +#27163 := (iff #27162 #27159) +#27179 := (or #6627 #27163) +#27181 := (iff #27179 #27178) +#27183 := (iff #27178 #27178) +#27184 := [rewrite]: #27183 +#27176 := (iff #27163 #27175) +#27173 := (iff #27159 #27170) +#27167 := (ite #27164 true #25982) +#27171 := (iff #27167 #27170) +#27172 := [rewrite]: #27171 +#27168 := (iff #27159 #27167) +#3773 := (iff #3770 true) +#3762 := [rewrite]: #3773 +#27165 := (iff #27158 #27164) +#27166 := [rewrite]: #27165 +#27169 := [monotonicity #27166 #3762]: #27168 +#27174 := [trans #27169 #27172]: #27173 +#27177 := [monotonicity #27174]: #27176 +#27182 := [monotonicity #27177]: #27181 +#27185 := [trans #27182 #27184]: #27181 +#27180 := [quant-inst]: #27179 +#27186 := [mp #27180 #27185]: #27178 +#27285 := [unit-resolution #27186 #4096]: #27175 +#27195 := (not #27175) +#27312 := (or #27195 #27162) +#5924 := (up_6 uf_15 #5912) +#27308 := (iff #5924 #25982) +#27306 := (iff #25982 #5924) +#27307 := [monotonicity #27305]: #27306 +#27309 := [symm #27307]: #27308 +#5925 := (not #5924) +#5917 := (uf_1 #5912 ?x75!20) +#5918 := (uf_10 #5917) +#5919 := (* -1::int #5918) +#5913 := (uf_4 uf_14 #5912) +#5914 := (* -1::int #5913) +#5920 := (+ #5914 #5919) +#5650 := (uf_4 uf_14 ?x75!20) +#5921 := (+ #5650 #5920) +#5922 := (= #5921 0::int) +#5923 := (not #5922) +#5915 := (+ #5650 #5914) +#5916 := (<= #5915 0::int) +#5931 := (or #5916 #5923 #5925) +#5934 := (not #5931) +#5680 := (* -1::int #5650) +#5928 := (+ uf_9 #5680) +#5929 := (<= #5928 0::int) +#22674 := (not #5929) +#6611 := [hypothesis]: #3329 +#4009 := (not #2772) +#4010 := (or #3324 #4009) +#4004 := [def-axiom]: #4010 +#6612 := [unit-resolution #4004 #6611]: #4009 +#13689 := (or #3324 #2772) +#6525 := (uf_1 uf_22 ?x68!16) +#6526 := (uf_10 #6525) +#6551 := (+ #2770 #6526) +#6552 := (+ #182 #6551) +#13122 := (<= #6552 0::int) +#6555 := (= #6552 0::int) +#6492 := (uf_4 uf_14 ?x68!16) +#6509 := (* -1::int #6492) +#6544 := (+ #6509 #6526) +#6545 := (+ #182 #6544) +#6546 := (>= #6545 0::int) +#6530 := (* -1::int #6526) +#6534 := (+ uf_9 #6530) +#6535 := (<= #6534 0::int) +#6581 := (or #6535 #6546) +#6584 := (not #6581) +#6578 := (= #2184 #6492) +#9424 := (not #6578) +#6510 := (+ #2184 #6509) +#13145 := (>= #6510 0::int) +#13450 := (not #13145) +#13018 := (= ?x67!17 #10571) +#6294 := (up_6 uf_15 ?x67!17) +#13025 := (or #6294 #13018) +#13020 := (up_6 #11533 ?x67!17) +#13030 := (iff #13020 #13025) +#12984 := (or #6627 #13030) +#13019 := (ite #13018 #3770 #6294) +#13021 := (iff #13020 #13019) +#12985 := (or #6627 #13021) +#12987 := (iff #12985 #12984) +#12983 := (iff #12984 #12984) +#12989 := [rewrite]: #12983 +#13031 := (iff #13021 #13030) +#13028 := (iff #13019 #13025) +#13022 := (ite #13018 true #6294) +#13026 := (iff #13022 #13025) +#13027 := [rewrite]: #13026 +#13023 := (iff #13019 #13022) +#13024 := [monotonicity #3762]: #13023 +#13029 := [trans #13024 #13027]: #13028 +#13032 := [monotonicity #13029]: #13031 +#12988 := [monotonicity #13032]: #12987 +#12990 := [trans #12988 #12989]: #12987 +#12986 := [quant-inst]: #12985 +#12991 := [mp #12986 #12990]: #12984 +#13478 := [unit-resolution #12991 #4096]: #13030 +#11491 := (iff #2187 #13020) +#13479 := (iff #13020 #2187) +#11490 := [monotonicity #13613]: #13479 +#13624 := [symm #11490]: #11491 +#3864 := (or #3324 #2187) +#3865 := [def-axiom]: #3864 +#6614 := [unit-resolution #3865 #6611]: #2187 +#13625 := [mp #6614 #13624]: #13020 +#13051 := (not #13020) +#13048 := (not #13030) +#13052 := (or #13048 #13051 #13025) +#13053 := [def-axiom]: #13052 +#13626 := [unit-resolution #13053 #13625 #13478]: #13025 +#11064 := [hypothesis]: #4009 +#6322 := (+ #182 #6509) +#6323 := (<= #6322 0::int) +#3838 := (up_6 uf_15 ?x68!16) +#12920 := (not #3838) +#12850 := (= ?x68!16 #10571) +#12856 := (or #3838 #12850) +#12925 := (not #12856) +#12852 := (up_6 #11533 ?x68!16) +#12885 := (iff #12852 #12856) +#12882 := (or #6627 #12885) +#12851 := (ite #12850 #3770 #3838) +#12853 := (iff #12852 #12851) +#12888 := (or #6627 #12853) +#12890 := (iff #12888 #12882) +#12892 := (iff #12882 #12882) +#12917 := [rewrite]: #12892 +#12886 := (iff #12853 #12885) +#12883 := (iff #12851 #12856) +#12848 := (ite #12850 true #3838) +#12857 := (iff #12848 #12856) +#12858 := [rewrite]: #12857 +#12854 := (iff #12851 #12848) +#12855 := [monotonicity #3762]: #12854 +#12884 := [trans #12855 #12858]: #12883 +#12887 := [monotonicity #12884]: #12886 +#12891 := [monotonicity #12887]: #12890 +#12918 := [trans #12891 #12917]: #12890 +#12889 := [quant-inst]: #12888 +#12919 := [mp #12889 #12918]: #12882 +#13654 := [unit-resolution #12919 #4096]: #12885 +#12955 := (not #12852) +#13653 := (iff #2189 #12955) +#13657 := (iff #2188 #12852) +#13655 := (iff #12852 #2188) +#13656 := [monotonicity #13613]: #13655 +#13658 := [symm #13656]: #13657 +#13659 := [monotonicity #13658]: #13653 +#4007 := (or #3324 #2189) +#4008 := [def-axiom]: #4007 +#6613 := [unit-resolution #4008 #6611]: #2189 +#13660 := [mp #6613 #13659]: #12955 +#12952 := (not #12885) +#12953 := (or #12952 #12852 #12925) +#12954 := [def-axiom]: #12953 +#13661 := [unit-resolution #12954 #13660 #13654]: #12925 +#12921 := (or #12856 #12920) +#12916 := [def-axiom]: #12921 +#13662 := [unit-resolution #12916 #13661]: #12920 +#6327 := (or #3838 #6323) +#3927 := (or #4441 #4292) +#3928 := [def-axiom]: #3927 +#10883 := [unit-resolution #3928 #10456]: #4292 +#13176 := (or #4297 #3838 #6323) +#6340 := (+ #6492 #1357) +#6341 := (>= #6340 0::int) +#6342 := (or #3838 #6341) +#13174 := (or #4297 #6342) +#13184 := (iff #13174 #13176) +#13180 := (or #4297 #6327) +#13182 := (iff #13180 #13176) +#13183 := [rewrite]: #13182 +#13173 := (iff #13174 #13180) +#6328 := (iff #6342 #6327) +#6325 := (iff #6341 #6323) +#6343 := (+ #1357 #6492) +#6346 := (>= #6343 0::int) +#6321 := (iff #6346 #6323) +#6324 := [rewrite]: #6321 +#6347 := (iff #6341 #6346) +#6344 := (= #6340 #6343) +#6345 := [rewrite]: #6344 +#6348 := [monotonicity #6345]: #6347 +#6326 := [trans #6348 #6324]: #6325 +#6329 := [monotonicity #6326]: #6328 +#13181 := [monotonicity #6329]: #13173 +#13185 := [trans #13181 #13183]: #13184 +#13179 := [quant-inst]: #13174 +#13187 := [mp #13179 #13185]: #13176 +#13663 := [unit-resolution #13187 #10883]: #6327 +#10648 := [unit-resolution #13663 #13662]: #6323 +#13045 := (not #13025) +#13449 := (not #6323) +#13468 := (or #13450 #2772 #13449 #13045) +#4615 := (uf_24 uf_22) +#4656 := (* -1::int #4615) +#6243 := (+ #2182 #4656) +#13424 := (<= #6243 0::int) +#13423 := (= #2182 #4615) +#6295 := (= ?x67!17 uf_22) +#13432 := [hypothesis]: #13025 +#10379 := (not #6294) +#10904 := (uf_4 uf_14 #10571) +#10931 := (* -1::int #10904) +#6265 := (uf_4 uf_14 ?x67!17) +#13376 := (+ #6265 #10931) +#13377 := (<= #13376 0::int) +#13553 := (not #13377) +#13446 := [hypothesis]: #6323 +#5447 := (* -1::int #6265) +#5547 := (+ #2182 #5447) +#5548 := (<= #5547 0::int) +#3804 := (or #4441 #4435) +#3915 := [def-axiom]: #3804 +#10913 := [unit-resolution #3915 #10456]: #4435 +#3936 := (or #4441 #4302) +#3909 := [def-axiom]: #3936 +#10462 := [unit-resolution #3909 #10456]: #4302 +#3910 := (or #4441 #4310) +#3911 := [def-axiom]: #3910 +#10914 := [unit-resolution #3911 #10456]: #4310 +#6880 := (or #2739 #4315 #4307) +#6572 := (uf_1 uf_22 ?x61!13) +#6573 := (uf_10 #6572) +#6656 := (+ #2125 #6573) +#6657 := (+ #182 #6656) +#6677 := (>= #6657 0::int) +#6659 := (= #6657 0::int) +#6633 := (* -1::int #6573) +#6629 := (+ uf_9 #6633) +#6637 := (<= #6629 0::int) +#6714 := (not #6637) +#6647 := (+ #2737 #6573) +#6642 := (+ #182 #6647) +#6648 := (>= #6642 0::int) +#6685 := (or #6637 #6648) +#6687 := (not #6685) +#6682 := (= #2124 #2126) +#6838 := (not #6682) +#6822 := [hypothesis]: #2744 +#6841 := (or #6838 #2739) +#6842 := [th-lemma]: #6841 +#6837 := [unit-resolution #6842 #6822]: #6838 +#6843 := [hypothesis]: #4302 +#6692 := (or #4307 #6682 #6687) +#6634 := (+ #1357 #6633) +#6635 := (+ #2126 #6634) +#6636 := (<= #6635 0::int) +#6678 := (or #6637 #6636) +#6680 := (not #6678) +#6681 := (= #2126 #2124) +#6679 := (or #6681 #6680) +#6693 := (or #4307 #6679) +#6710 := (iff #6693 #6692) +#6690 := (or #6682 #6687) +#6695 := (or #4307 #6690) +#6708 := (iff #6695 #6692) +#6709 := [rewrite]: #6708 +#6706 := (iff #6693 #6695) +#6653 := (iff #6679 #6690) +#6688 := (iff #6680 #6687) +#6686 := (iff #6678 #6685) +#6651 := (iff #6636 #6648) +#6639 := (+ #2126 #6633) +#6640 := (+ #1357 #6639) +#6644 := (<= #6640 0::int) +#6649 := (iff #6644 #6648) +#6650 := [rewrite]: #6649 +#6645 := (iff #6636 #6644) +#6641 := (= #6635 #6640) +#6643 := [rewrite]: #6641 +#6646 := [monotonicity #6643]: #6645 +#6652 := [trans #6646 #6650]: #6651 +#6654 := [monotonicity #6652]: #6686 +#6689 := [monotonicity #6654]: #6688 +#6683 := (iff #6681 #6682) +#6684 := [rewrite]: #6683 +#6691 := [monotonicity #6684 #6689]: #6653 +#6707 := [monotonicity #6691]: #6706 +#6711 := [trans #6707 #6709]: #6710 +#6694 := [quant-inst]: #6693 +#6712 := [mp #6694 #6711]: #6692 +#6844 := [unit-resolution #6712 #6843 #6837]: #6687 +#6715 := (or #6685 #6714) +#6716 := [def-axiom]: #6715 +#6845 := [unit-resolution #6716 #6844]: #6714 +#6717 := (not #6648) +#6718 := (or #6685 #6717) +#6719 := [def-axiom]: #6718 +#6846 := [unit-resolution #6719 #6844]: #6717 +#6663 := (or #6637 #6648 #6659) +#6847 := [hypothesis]: #4310 +#6665 := (or #4315 #6637 #6648 #6659) +#6631 := (+ #6573 #2125) +#6632 := (+ #182 #6631) +#6630 := (= #6632 0::int) +#6638 := (or #6637 #6636 #6630) +#6666 := (or #4315 #6638) +#6674 := (iff #6666 #6665) +#6669 := (or #4315 #6663) +#6671 := (iff #6669 #6665) +#6672 := [rewrite]: #6671 +#6667 := (iff #6666 #6669) +#6661 := (iff #6638 #6663) +#6660 := (iff #6630 #6659) +#6655 := (= #6632 #6657) +#6658 := [rewrite]: #6655 +#6662 := [monotonicity #6658]: #6660 +#6664 := [monotonicity #6652 #6662]: #6661 +#6670 := [monotonicity #6664]: #6667 +#6675 := [trans #6670 #6672]: #6674 +#6668 := [quant-inst]: #6666 +#6673 := [mp #6668 #6675]: #6665 +#6871 := [unit-resolution #6673 #6847]: #6663 +#6872 := [unit-resolution #6871 #6846 #6845]: #6659 +#6873 := (not #6659) +#6874 := (or #6873 #6677) +#6875 := [th-lemma]: #6874 +#6870 := [unit-resolution #6875 #6872]: #6677 +#6713 := (>= #2738 0::int) +#6876 := (or #6713 #2739) +#6877 := [th-lemma]: #6876 +#6878 := [unit-resolution #6877 #6822]: #6713 +#6879 := [th-lemma #6878 #6846 #6870]: false +#6904 := [lemma #6879]: #6880 +#10915 := [unit-resolution #6904 #10914 #10462]: #2739 +#3942 := (or #4438 #2744 #4432) +#3943 := [def-axiom]: #3942 +#10916 := [unit-resolution #3943 #10915 #10913]: #4432 +#3955 := (or #4429 #4318) #3956 := [def-axiom]: #3955 -#5086 := [unit-resolution #3956 #4840 #4948]: #4618 -#3979 := (or #4615 #4609) -#3980 := [def-axiom]: #3979 -#5292 := [unit-resolution #3980 #5086]: #4609 -#5416 := [hypothesis]: #1928 -#5028 := (or #4844 #1968) -#5029 := [quant-inst]: #5028 -#5422 := [unit-resolution #5029 #4256 #5416]: false -#5423 := [lemma #5422]: #1968 -#3772 := (or #2171 #1928) -#3859 := [def-axiom]: #3772 -#5293 := [unit-resolution #3859 #5423]: #2171 -#3973 := (or #4612 #2248 #4606) -#3975 := [def-axiom]: #3973 -#5417 := [unit-resolution #3975 #5293 #5292]: #4606 -#4000 := (or #4603 #4597) -#4001 := [def-axiom]: #4000 -#5418 := [unit-resolution #4001 #5417]: #4597 -#3996 := (or #4600 #3106 #4594) -#3997 := [def-axiom]: #3996 -#5452 := [unit-resolution #3997 #5418 #4921]: #4594 -#4010 := (or #4591 #4585) -#4031 := [def-axiom]: #4010 -#5507 := [unit-resolution #4031 #5452]: #4585 -#4018 := (or #4588 #4302 #4582) -#4019 := [def-axiom]: #4018 -#5496 := [unit-resolution #4019 #5507 #5196]: #4582 -#4049 := (or #4579 #109) -#4050 := [def-axiom]: #4049 -#5498 := [unit-resolution #4050 #5496]: #109 -#9048 := (= #166 #108) -#9042 := [hypothesis]: #4415 -#4151 := (or #4412 #569) -#4152 := [def-axiom]: #4151 -#9043 := [unit-resolution #4152 #9042]: #569 -#8965 := [symm #9043]: #147 -#9049 := [monotonicity #8965]: #9048 -#9047 := [trans #9049 #5498]: #167 -#3867 := (or #4412 #4348) -#4149 := [def-axiom]: #3867 -#9030 := [unit-resolution #4149 #9042]: #4348 -#7181 := (or #3369 #4353 #674) -#9174 := [hypothesis]: #569 -#9183 := [hypothesis]: #4348 -#9172 := [hypothesis]: #3374 -#4168 := (or #3369 #2164) -#4169 := [def-axiom]: #4168 -#7182 := [unit-resolution #4169 #9172]: #2164 -#9200 := (or #3369 #2163 #4353 #674) -#8980 := (uf_4 uf_14 ?x54!10) -#7073 := (uf_4 uf_14 ?x53!11) -#7171 := (* -1::int #7073) -#9058 := (+ #7171 #8980) -#9059 := (+ #2154 #9058) -#9062 := (>= #9059 0::int) -#8984 := (uf_6 uf_15 ?x54!10) -#8985 := (= uf_8 #8984) -#8981 := (* -1::int #8980) -#8982 := (+ uf_9 #8981) -#8983 := (<= #8982 0::int) -#9168 := (not #8983) -#4166 := (or #3369 #2160) -#4167 := [def-axiom]: #4166 -#9173 := [unit-resolution #4167 #9172]: #2160 -#9161 := (+ #2151 #8981) -#9163 := (>= #9161 0::int) -#9160 := (= #2151 #8980) -#9175 := (= #8980 #2151) -#9176 := [monotonicity #9174]: #9175 -#9177 := [symm #9176]: #9160 -#9178 := (not #9160) -#9179 := (or #9178 #9163) -#9180 := [th-lemma]: #9179 -#9181 := [unit-resolution #9180 #9177]: #9163 -#9169 := (not #9163) -#9170 := (or #9168 #9169 #2159) -#9164 := [hypothesis]: #2160 -#9165 := [hypothesis]: #8983 -#9166 := [hypothesis]: #9163 -#9167 := [th-lemma #9166 #9165 #9164]: false -#9171 := [lemma #9167]: #9170 -#9182 := [unit-resolution #9171 #9181 #9173]: #9168 -#8987 := (or #8983 #8985) -#8990 := (or #4353 #8983 #8985) -#8986 := (or #8985 #8983) -#8991 := (or #4353 #8986) -#8998 := (iff #8991 #8990) -#8993 := (or #4353 #8987) -#8996 := (iff #8993 #8990) -#8997 := [rewrite]: #8996 -#8994 := (iff #8991 #8993) -#8988 := (iff #8986 #8987) -#8989 := [rewrite]: #8988 -#8995 := [monotonicity #8989]: #8994 -#8999 := [trans #8995 #8997]: #8998 -#8992 := [quant-inst]: #8991 -#9000 := [mp #8992 #8999]: #8990 -#9184 := [unit-resolution #9000 #9183]: #8987 -#9185 := [unit-resolution #9184 #9182]: #8985 -#9056 := (not #8985) -#9188 := (or #9056 #9062) -#9186 := [hypothesis]: #2164 -#4052 := (or #4579 #4314) -#4032 := [def-axiom]: #4052 -#9187 := [unit-resolution #4032 #5496]: #4314 -#9073 := (or #4319 #2163 #9056 #9062) -#9051 := (+ #8980 #7171) -#9052 := (+ #2154 #9051) -#9055 := (>= #9052 0::int) -#9057 := (or #9056 #2163 #9055) -#9074 := (or #4319 #9057) -#9081 := (iff #9074 #9073) -#9068 := (or #2163 #9056 #9062) -#9076 := (or #4319 #9068) -#9079 := (iff #9076 #9073) -#9080 := [rewrite]: #9079 -#9077 := (iff #9074 #9076) -#9071 := (iff #9057 #9068) -#9065 := (or #9056 #2163 #9062) -#9069 := (iff #9065 #9068) -#9070 := [rewrite]: #9069 -#9066 := (iff #9057 #9065) -#9063 := (iff #9055 #9062) -#9060 := (= #9052 #9059) -#9061 := [rewrite]: #9060 -#9064 := [monotonicity #9061]: #9063 -#9067 := [monotonicity #9064]: #9066 -#9072 := [trans #9067 #9070]: #9071 -#9078 := [monotonicity #9072]: #9077 -#9082 := [trans #9078 #9080]: #9081 -#9075 := [quant-inst]: #9074 -#9083 := [mp #9075 #9082]: #9073 -#9189 := [unit-resolution #9083 #9187 #9186]: #9188 -#9190 := [unit-resolution #9189 #9185]: #9062 -#4164 := (not #2815) -#4170 := (or #3369 #4164) -#3808 := [def-axiom]: #4170 -#9191 := [unit-resolution #3808 #9172]: #4164 -#9155 := (+ #2149 #7171) -#9158 := (<= #9155 0::int) -#9154 := (= #2149 #7073) -#9192 := (= #7073 #2149) -#9193 := [monotonicity #9174]: #9192 -#9194 := [symm #9193]: #9154 -#9195 := (not #9154) -#9196 := (or #9195 #9158) -#9197 := [th-lemma]: #9196 -#9198 := [unit-resolution #9197 #9194]: #9158 -#9199 := [th-lemma #9198 #9191 #9181 #9190]: false -#9201 := [lemma #9199]: #9200 -#7183 := [unit-resolution #9201 #7182 #9172 #9183 #9174]: false -#7082 := [lemma #7183]: #7181 -#9031 := [unit-resolution #7082 #9030 #9043]: #3369 -#4153 := (or #4412 #4406) -#4150 := [def-axiom]: #4153 -#8964 := [unit-resolution #4150 #9042]: #4406 -#9037 := (or #4412 #2097) -#5396 := (uf_4 uf_14 ?x49!8) -#5456 := (* -1::int #5396) -#5457 := (+ uf_9 #5456) -#5458 := (<= #5457 0::int) -#6793 := (not #5458) -#6788 := [hypothesis]: #2098 -#6206 := (+ #2085 #5456) -#6232 := (>= #6206 0::int) -#5257 := (= #2085 #5396) -#9044 := (= #5396 #2085) -#9045 := [monotonicity #9043]: #9044 -#8975 := [symm #9045]: #5257 -#8976 := (not #5257) -#8977 := (or #8976 #6232) -#8978 := [th-lemma]: #8977 -#8979 := [unit-resolution #8978 #8975]: #6232 -#6794 := (not #6232) -#6792 := (or #6793 #6794 #2097) -#6786 := [hypothesis]: #6232 -#6790 := [hypothesis]: #5458 -#6791 := [th-lemma #6790 #6786 #6788]: false -#6816 := [lemma #6791]: #6792 -#8974 := [unit-resolution #6816 #8979 #6788]: #6793 -#6231 := (<= #6206 0::int) -#8961 := (or #8976 #6231) -#8962 := [th-lemma]: #8961 -#8963 := [unit-resolution #8962 #8975]: #6231 -#4163 := (or #4388 #2173) -#3826 := [def-axiom]: #4163 -#9029 := [unit-resolution #3826 #9047]: #4388 -#4175 := (or #4397 #4391 #3374) -#4161 := [def-axiom]: #4175 -#9032 := [unit-resolution #4161 #9031 #9029]: #4397 -#3885 := (or #4400 #4394) -#3886 := [def-axiom]: #3885 -#9046 := [unit-resolution #3886 #9032]: #4400 -#4155 := (or #4409 #4369 #4403) -#4159 := [def-axiom]: #4155 -#9033 := [unit-resolution #4159 #9046 #8964]: #4369 -#5178 := (?x47!7 ?x49!8) -#6376 := (uf_4 uf_19 #5178) -#6600 := (* -1::int #6376) -#5179 := (uf_4 uf_14 #5178) -#8481 := (+ #5179 #6600) -#6172 := (<= #8481 0::int) -#5887 := (= #5179 #6376) -#9028 := [monotonicity #9043]: #5887 -#9034 := (not #5887) -#9035 := (or #9034 #6172) -#9036 := [th-lemma]: #9035 -#9038 := [unit-resolution #9036 #9028]: #6172 -#8515 := (>= #8481 0::int) -#9053 := (or #9034 #8515) -#9054 := [th-lemma]: #9053 -#9109 := [unit-resolution #9054 #9028]: #8515 -#9290 := (not #6172) -#9289 := (not #6231) -#8950 := (not #8515) -#9263 := (or #4366 #6794 #8950 #9289 #9290 #5458) -#5641 := (+ #5179 #5456) -#5665 := (>= #5641 0::int) -#7930 := (not #5665) -#5450 := (uf_1 #5178 ?x49!8) -#5451 := (uf_10 #5450) -#5631 := (+ #5456 #5451) -#5637 := (+ #5179 #5631) -#5526 := (= #5637 0::int) -#5525 := (not #5526) -#5508 := (uf_6 uf_15 #5178) -#5517 := (= uf_8 #5508) -#5518 := (not #5517) -#5697 := (or #5518 #5525 #5665) -#5707 := (not #5697) -#9240 := [hypothesis]: #6793 -#9241 := [hypothesis]: #4369 -#3837 := (or #4366 #2715) -#3842 := [def-axiom]: #3837 -#9242 := [unit-resolution #3842 #9241]: #2715 -#4039 := (or #4579 #4339) -#4034 := [def-axiom]: #4039 -#9243 := [unit-resolution #4034 #5496]: #4339 -#7629 := (or #4344 #2712 #5458 #5707) -#5424 := (* -1::int #5179) -#5425 := (+ #5396 #5424) -#5426 := (<= #5425 0::int) -#5509 := (* -1::int #5451) -#5514 := (+ #5424 #5509) -#5515 := (+ #5396 #5514) -#5513 := (= #5515 0::int) -#5516 := (not #5513) -#5523 := (or #5518 #5516 #5426) -#5524 := (not #5523) -#5522 := (or #2099 #5458 #5524) -#7083 := (or #4344 #5522) -#7435 := (iff #7083 #7629) -#5819 := (or #2712 #5458 #5707) -#7261 := (or #4344 #5819) -#7430 := (iff #7261 #7629) -#7436 := [rewrite]: #7430 -#7210 := (iff #7083 #7261) -#5798 := (iff #5522 #5819) -#5801 := (iff #5524 #5707) -#5705 := (iff #5523 #5697) -#5638 := (iff #5426 #5665) -#5536 := (+ #5424 #5396) -#5639 := (<= #5536 0::int) -#5666 := (iff #5639 #5665) -#5703 := [rewrite]: #5666 -#5640 := (iff #5426 #5639) -#5497 := (= #5425 #5536) -#5495 := [rewrite]: #5497 -#5634 := [monotonicity #5495]: #5640 -#5704 := [trans #5634 #5703]: #5638 -#5534 := (iff #5516 #5525) -#5533 := (iff #5513 #5526) -#5499 := (+ #5396 #5509) -#5500 := (+ #5424 #5499) -#5504 := (= #5500 0::int) -#5527 := (iff #5504 #5526) -#5532 := [rewrite]: #5527 -#5635 := (iff #5513 #5504) -#5505 := (= #5515 #5500) -#5506 := [rewrite]: #5505 -#5636 := [monotonicity #5506]: #5635 -#5531 := [trans #5636 #5532]: #5533 -#5535 := [monotonicity #5531]: #5534 -#5706 := [monotonicity #5535 #5704]: #5705 -#5818 := [monotonicity #5706]: #5801 -#5817 := [monotonicity #2714 #5818]: #5798 -#6900 := [monotonicity #5817]: #7210 -#7432 := [trans #6900 #7436]: #7435 -#7217 := [quant-inst]: #7083 -#7437 := [mp #7217 #7432]: #7629 -#9244 := [unit-resolution #7437 #9243 #9242 #9240]: #5707 -#7888 := (or #5697 #7930) -#7931 := [def-axiom]: #7888 -#9239 := [unit-resolution #7931 #9244]: #7930 -#6592 := (+ #2085 #6600) -#6591 := (<= #6592 0::int) -#6800 := (+ #5509 #6600) -#6802 := (+ #2085 #6800) -#6783 := (= #6802 0::int) -#8973 := (<= #6802 0::int) -#9282 := [hypothesis]: #6172 -#9283 := [hypothesis]: #6231 -#5866 := (>= #5637 0::int) -#7549 := (or #5697 #5526) -#7928 := [def-axiom]: #7549 -#9245 := [unit-resolution #7928 #9244]: #5526 -#9246 := (or #5525 #5866) -#9247 := [th-lemma]: #9246 -#9248 := [unit-resolution #9247 #9245]: #5866 -#9288 := (not #5866) -#9291 := (or #8973 #9288 #9289 #9290) -#9284 := [hypothesis]: #5866 -#9285 := (not #8973) -#9286 := [hypothesis]: #9285 -#9287 := [th-lemma #9286 #9284 #9283 #9282]: false -#9292 := [lemma #9287]: #9291 -#9249 := [unit-resolution #9292 #9248 #9283 #9282]: #8973 -#9256 := (or #6783 #9285) -#7263 := (>= #6802 0::int) -#8944 := [hypothesis]: #8515 -#5863 := (<= #5637 0::int) -#9251 := (or #5525 #5863) -#9252 := [th-lemma]: #9251 -#9253 := [unit-resolution #9252 #9245]: #5863 -#8949 := (not #5863) -#8951 := (or #7263 #8949 #6794 #8950) -#8945 := [hypothesis]: #5863 -#8946 := (not #7263) -#8947 := [hypothesis]: #8946 -#8948 := [th-lemma #8947 #8945 #6786 #8944]: false -#8952 := [lemma #8948]: #8951 -#9254 := [unit-resolution #8952 #9253 #6786 #8944]: #7263 -#9255 := (or #6783 #9285 #8946) -#9250 := [th-lemma]: #9255 -#9257 := [unit-resolution #9250 #9254]: #9256 -#9258 := [unit-resolution #9257 #9249]: #6783 -#6818 := (not #6783) -#6815 := (or #6591 #6818) -#4178 := (or #4366 #4358) -#3838 := [def-axiom]: #4178 -#9259 := [unit-resolution #3838 #9241]: #4358 -#8898 := (or #4363 #6591 #6818) -#6374 := (+ #2086 #5451) -#6377 := (+ #6376 #6374) -#6477 := (= #6377 0::int) -#6478 := (not #6477) -#6366 := (+ #6376 #2086) -#6479 := (>= #6366 0::int) -#6480 := (or #6479 #6478) -#8899 := (or #4363 #6480) -#8905 := (iff #8899 #8898) -#8124 := (or #4363 #6815) -#8903 := (iff #8124 #8898) -#8904 := [rewrite]: #8903 -#8901 := (iff #8899 #8124) -#6821 := (iff #6480 #6815) -#6819 := (iff #6478 #6818) -#6782 := (iff #6477 #6783) -#6572 := (+ #5451 #6376) -#6011 := (+ #2086 #6572) -#6083 := (= #6011 0::int) -#6787 := (iff #6083 #6783) -#6789 := [rewrite]: #6787 -#6797 := (iff #6477 #6083) -#6795 := (= #6377 #6011) -#6796 := [rewrite]: #6795 -#6799 := [monotonicity #6796]: #6797 -#6817 := [trans #6799 #6789]: #6782 -#6820 := [monotonicity #6817]: #6819 -#6626 := (iff #6479 #6591) -#6481 := (+ #2086 #6376) -#6597 := (>= #6481 0::int) -#6627 := (iff #6597 #6591) -#6628 := [rewrite]: #6627 -#6598 := (iff #6479 #6597) -#6476 := (= #6366 #6481) -#6482 := [rewrite]: #6476 -#6599 := [monotonicity #6482]: #6598 -#6629 := [trans #6599 #6628]: #6626 -#6784 := [monotonicity #6629 #6820]: #6821 -#8902 := [monotonicity #6784]: #8901 -#7262 := [trans #8902 #8904]: #8905 -#8900 := [quant-inst]: #8899 -#7283 := [mp #8900 #7262]: #8898 -#9260 := [unit-resolution #7283 #9259]: #6815 -#9264 := [unit-resolution #9260 #9258]: #6591 -#9265 := [th-lemma #6786 #8944 #9264 #9239]: false -#9266 := [lemma #9265]: #9263 -#9110 := [unit-resolution #9266 #9109 #9038 #9033 #8963 #8979 #8974]: false -#9111 := [lemma #9110]: #9037 -#5419 := [unit-resolution #9111 #9042]: #2097 -#4187 := (or #4366 #2098) -#4177 := [def-axiom]: #4187 -#5867 := [unit-resolution #4177 #5419]: #4366 -#5862 := [unit-resolution #4159 #5867 #8964]: #4403 -#5363 := [unit-resolution #3886 #5862]: #4394 -#7926 := [unit-resolution #4161 #5363 #9031]: #4391 -#7932 := [unit-resolution #3826 #7926]: #2173 -#7884 := [unit-resolution #7932 #9047]: false -#8887 := [lemma #7884]: #4412 -#4040 := (or #4579 #4573) -#4008 := [def-axiom]: #4040 -#10724 := [unit-resolution #4008 #5496]: #4573 -#4045 := (or #4576 #4415 #4570) -#4046 := [def-axiom]: #4045 -#10725 := [unit-resolution #4046 #10724]: #4573 -#10726 := [unit-resolution #10725 #8887]: #4570 -#4068 := (or #4567 #195) -#4069 := [def-axiom]: #4068 -#13581 := [unit-resolution #4069 #10726]: #195 -#13578 := [symm #13581]: #7680 -#13576 := (= #10323 #194) -#48 := (:var 0 T5) -#47 := (:var 2 T4) -#49 := (uf_7 #47 #10 #48) -#4231 := (pattern #49) -#360 := (= uf_8 #48) -#50 := (uf_6 #49 #10) -#356 := (= uf_8 #50) -#363 := (iff #356 #360) -#4232 := (forall (vars (?x17 T4) (?x18 T2) (?x19 T5)) (:pat #4231) #363) -#366 := (forall (vars (?x17 T4) (?x18 T2) (?x19 T5)) #363) -#4235 := (iff #366 #4232) -#4233 := (iff #363 #363) -#4234 := [refl]: #4233 -#4236 := [quant-intro #4234]: #4235 -#1852 := (~ #366 #366) -#1890 := (~ #363 #363) -#1891 := [refl]: #1890 -#1853 := [nnf-pos #1891]: #1852 -#52 := (= #48 uf_8) -#51 := (= #50 uf_8) -#53 := (iff #51 #52) -#54 := (forall (vars (?x17 T4) (?x18 T2) (?x19 T5)) #53) -#367 := (iff #54 #366) -#364 := (iff #53 #363) -#361 := (iff #52 #360) -#362 := [rewrite]: #361 -#358 := (iff #51 #356) -#359 := [rewrite]: #358 -#365 := [monotonicity #359 #362]: #364 -#368 := [quant-intro #365]: #367 -#355 := [asserted]: #54 -#371 := [mp #355 #368]: #366 -#1892 := [mp~ #371 #1853]: #366 -#4237 := [mp #1892 #4236]: #4232 -#3883 := (not #4232) -#3893 := (or #3883 #3895) -#3909 := (= uf_8 uf_8) -#3896 := (iff #3895 #3909) -#3874 := (or #3883 #3896) -#3876 := (iff #3874 #3893) -#3877 := (iff #3893 #3893) -#3878 := [rewrite]: #3877 -#3891 := (iff #3896 #3895) -#3899 := (iff #3895 true) -#3890 := (iff #3899 #3895) -#3882 := [rewrite]: #3890 -#3888 := (iff #3896 #3899) -#3898 := (iff #3909 true) -#3897 := [rewrite]: #3898 -#3889 := [monotonicity #3897]: #3888 -#3892 := [trans #3889 #3882]: #3891 -#3868 := [monotonicity #3892]: #3876 -#3869 := [trans #3868 #3878]: #3876 -#3875 := [quant-inst]: #3874 -#3879 := [mp #3875 #3869]: #3893 -#7677 := [unit-resolution #3879 #4237]: #3895 -#7678 := [symm #7677]: #4958 -#13577 := [monotonicity #10708 #7678]: #13576 -#13583 := [trans #13577 #13578]: #13582 -#13585 := [monotonicity #13583]: #13584 -#13596 := [symm #13585]: #13595 -#13580 := [hypothesis]: #2258 -#13597 := [trans #13580 #13596]: #10327 -#13450 := (not #10327) -#13447 := (not #10333) -#13451 := (or #13447 #13450 #10330) -#13454 := [def-axiom]: #13451 -#13593 := [unit-resolution #13454 #13597 #13579]: #10330 -#13335 := (not #9519) -#11136 := (uf_6 uf_15 #10448) -#11137 := (= uf_8 #11136) -#11138 := (not #11137) -#11133 := (* -1::int #11132) -#9701 := (uf_4 uf_14 #9695) -#11134 := (+ #9701 #11133) -#11135 := (>= #11134 0::int) -#13999 := (not #11135) -#9563 := (uf_1 uf_22 ?x63!14) -#9564 := (uf_10 #9563) -#9508 := (* -1::int #2261) -#9581 := (+ #9508 #9564) -#9582 := (+ #188 #9581) -#9583 := (>= #9582 0::int) -#12179 := (not #9583) -#9565 := (* -1::int #9564) -#9569 := (+ uf_9 #9565) -#9570 := (<= #9569 0::int) -#9588 := (or #9570 #9583) -#9591 := (not #9588) -#13188 := [hypothesis]: #4140 -#4061 := (or #4567 #4428) -#4056 := [def-axiom]: #4061 -#10727 := [unit-resolution #4056 #10726]: #4428 -#13444 := (or #4433 #2866 #9591) -#9566 := (+ #1455 #9565) -#9567 := (+ #2261 #9566) -#9568 := (<= #9567 0::int) -#9571 := (or #9570 #9568) -#9572 := (not #9571) -#9573 := (or #2262 #9572) -#11618 := (or #4433 #9573) -#11883 := (iff #11618 #13444) -#9594 := (or #2866 #9591) -#11662 := (or #4433 #9594) -#11855 := (iff #11662 #13444) -#11841 := [rewrite]: #11855 -#11663 := (iff #11618 #11662) -#9595 := (iff #9573 #9594) -#9592 := (iff #9572 #9591) -#9589 := (iff #9571 #9588) -#9586 := (iff #9568 #9583) -#9574 := (+ #2261 #9565) -#9575 := (+ #1455 #9574) -#9578 := (<= #9575 0::int) -#9584 := (iff #9578 #9583) -#9585 := [rewrite]: #9584 -#9579 := (iff #9568 #9578) -#9576 := (= #9567 #9575) -#9577 := [rewrite]: #9576 -#9580 := [monotonicity #9577]: #9579 -#9587 := [trans #9580 #9585]: #9586 -#9590 := [monotonicity #9587]: #9589 -#9593 := [monotonicity #9590]: #9592 -#9596 := [monotonicity #2868 #9593]: #9595 -#11801 := [monotonicity #9596]: #11663 -#11930 := [trans #11801 #11841]: #11883 -#11417 := [quant-inst]: #11618 -#12087 := [mp #11417 #11930]: #13444 -#13594 := [unit-resolution #12087 #10727 #13188]: #9591 -#12344 := (or #9588 #12179) -#11143 := [def-axiom]: #12344 -#13599 := [unit-resolution #11143 #13594]: #12179 -#14000 := (or #13999 #9583) -#13979 := [hypothesis]: #11135 -#13980 := [hypothesis]: #12179 -#10368 := (uf_10 #10367) -#10372 := (* -1::int #10368) -#11940 := (+ #9564 #10372) -#11942 := (>= #11940 0::int) -#9867 := (= #9564 #10368) -#13987 := (= #9563 #10367) -#13988 := [monotonicity #10706]: #13987 -#13989 := [monotonicity #13988]: #9867 -#13990 := (not #9867) -#13991 := (or #13990 #11942) -#13992 := [th-lemma]: #13991 -#13993 := [unit-resolution #13992 #13989]: #11942 -#11219 := (>= #10368 0::int) -#10318 := (= #10368 0::int) -#11983 := (not #10318) -#11981 := (not #11219) -#11982 := [hypothesis]: #11981 -#11984 := (or #11983 #11219) -#11985 := [th-lemma]: #11984 -#11986 := [unit-resolution #11985 #11982]: #11983 -#10404 := (<= #10368 0::int) -#11987 := (or #11219 #10404) -#11988 := [th-lemma]: #11987 -#11989 := [unit-resolution #11988 #11982]: #10404 -#10405 := (not #10404) -#10410 := (or #10319 #10405) -#59 := (uf_10 #12) -#409 := (<= #59 0::int) -#410 := (not #409) -#58 := (= #10 #11) -#413 := (or #58 #410) -#4244 := (forall (vars (?x22 T2) (?x23 T2)) (:pat #4196) #413) -#416 := (forall (vars (?x22 T2) (?x23 T2)) #413) -#4247 := (iff #416 #4244) -#4245 := (iff #413 #413) -#4246 := [refl]: #4245 -#4248 := [quant-intro #4246]: #4247 -#1858 := (~ #416 #416) -#1857 := (~ #413 #413) -#1895 := [refl]: #1857 -#1859 := [nnf-pos #1895]: #1858 -#64 := (< 0::int #59) -#63 := (not #58) -#65 := (implies #63 #64) -#66 := (forall (vars (?x22 T2) (?x23 T2)) #65) -#419 := (iff #66 #416) -#403 := (or #58 #64) -#406 := (forall (vars (?x22 T2) (?x23 T2)) #403) -#417 := (iff #406 #416) -#414 := (iff #403 #413) -#411 := (iff #64 #410) -#412 := [rewrite]: #411 -#415 := [monotonicity #412]: #414 -#418 := [quant-intro #415]: #417 -#407 := (iff #66 #406) -#404 := (iff #65 #403) -#405 := [rewrite]: #404 -#408 := [quant-intro #405]: #407 -#420 := [trans #408 #418]: #419 -#402 := [asserted]: #66 -#421 := [mp #402 #420]: #416 -#1896 := [mp~ #421 #1859]: #416 -#4249 := [mp #1896 #4248]: #4244 -#10302 := (not #4244) -#11162 := (or #10302 #10319 #10405) -#10406 := (= #9695 ?x63!14) -#10407 := (or #10406 #10405) -#11163 := (or #10302 #10407) -#11205 := (iff #11163 #11162) -#11188 := (or #10302 #10410) -#11203 := (iff #11188 #11162) -#11204 := [rewrite]: #11203 -#11189 := (iff #11163 #11188) -#10411 := (iff #10407 #10410) -#10408 := (iff #10406 #10319) -#10409 := [rewrite]: #10408 -#10412 := [monotonicity #10409]: #10411 -#11202 := [monotonicity #10412]: #11189 -#11206 := [trans #11202 #11204]: #11205 -#11164 := [quant-inst]: #11163 -#11201 := [mp #11164 #11206]: #11162 -#11990 := [unit-resolution #11201 #4249]: #10410 -#11991 := [unit-resolution #11990 #11989]: #10319 -#10346 := (not #10319) -#10431 := (or #10318 #10346) -#60 := (= #59 0::int) -#393 := (or #63 #60) -#4238 := (forall (vars (?x20 T2) (?x21 T2)) (:pat #4196) #393) -#396 := (forall (vars (?x20 T2) (?x21 T2)) #393) -#4241 := (iff #396 #4238) -#4239 := (iff #393 #393) -#4240 := [refl]: #4239 -#4242 := [quant-intro #4240]: #4241 -#1854 := (~ #396 #396) -#1893 := (~ #393 #393) -#1894 := [refl]: #1893 -#1855 := [nnf-pos #1894]: #1854 -#61 := (implies #58 #60) -#62 := (forall (vars (?x20 T2) (?x21 T2)) #61) -#399 := (iff #62 #396) -#372 := (= 0::int #59) -#383 := (or #63 #372) -#388 := (forall (vars (?x20 T2) (?x21 T2)) #383) -#397 := (iff #388 #396) -#394 := (iff #383 #393) -#391 := (iff #372 #60) -#392 := [rewrite]: #391 -#395 := [monotonicity #392]: #394 -#398 := [quant-intro #395]: #397 -#389 := (iff #62 #388) -#386 := (iff #61 #383) -#380 := (implies #58 #372) -#384 := (iff #380 #383) -#385 := [rewrite]: #384 -#381 := (iff #61 #380) -#378 := (iff #60 #372) -#379 := [rewrite]: #378 -#382 := [monotonicity #379]: #381 -#387 := [trans #382 #385]: #386 -#390 := [quant-intro #387]: #389 -#400 := [trans #390 #398]: #399 -#370 := [asserted]: #62 -#401 := [mp #370 #400]: #396 -#1856 := [mp~ #401 #1855]: #396 -#4243 := [mp #1856 #4242]: #4238 -#6331 := (not #4238) -#11098 := (or #6331 #10318 #10346) -#10424 := (not #10406) -#10425 := (or #10424 #10318) -#11207 := (or #6331 #10425) -#11222 := (iff #11207 #11098) -#11209 := (or #6331 #10431) -#11220 := (iff #11209 #11098) -#11221 := [rewrite]: #11220 -#11210 := (iff #11207 #11209) -#10434 := (iff #10425 #10431) -#10428 := (or #10346 #10318) -#10432 := (iff #10428 #10431) -#10433 := [rewrite]: #10432 -#10429 := (iff #10425 #10428) -#10426 := (iff #10424 #10346) -#10427 := [monotonicity #10409]: #10426 -#10430 := [monotonicity #10427]: #10429 -#10435 := [trans #10430 #10433]: #10434 -#11211 := [monotonicity #10435]: #11210 -#11223 := [trans #11211 #11221]: #11222 -#11208 := [quant-inst]: #11207 -#11224 := [mp #11208 #11223]: #11098 -#11992 := [unit-resolution #11224 #4243]: #10431 -#11993 := [unit-resolution #11992 #11991 #11986]: false -#11994 := [lemma #11993]: #11219 -#10057 := (+ #2261 #11133) -#11955 := (<= #10057 0::int) -#13994 := (not #12385) -#13995 := (or #13994 #11955) -#13996 := [th-lemma]: #13995 -#13997 := [unit-resolution #13996 #13203]: #11955 -#9707 := (* -1::int #9701) -#10565 := (+ #188 #9707) -#10581 := (>= #10565 0::int) -#9923 := (= #188 #9701) -#12919 := (= #9701 #188) -#12920 := [monotonicity #10708]: #12919 -#12921 := [symm #12920]: #9923 -#12922 := (not #9923) -#12923 := (or #12922 #10581) -#12924 := [th-lemma]: #12923 -#12925 := [unit-resolution #12924 #12921]: #10581 -#13998 := [th-lemma #12925 #13997 #11994 #13993 #13980 #13979]: false -#14001 := [lemma #13998]: #14000 -#13600 := [unit-resolution #14001 #13599]: #13999 -#13971 := (or #11138 #11135) -#13935 := [hypothesis]: #13999 -#13936 := [hypothesis]: #11137 -#9685 := (uf_6 uf_15 #9695) -#9686 := (= uf_8 #9685) -#13964 := (not #9686) -#13965 := (iff #731 #13964) -#13957 := (iff #728 #9686) -#13955 := (iff #9686 #728) -#13948 := (= #9685 #185) -#13954 := [monotonicity #10708]: #13948 -#13956 := [monotonicity #13954]: #13955 -#13958 := [symm #13956]: #13957 -#13968 := [monotonicity #13958]: #13965 -#4070 := (or #4567 #731) -#4065 := [def-axiom]: #4070 -#13953 := [unit-resolution #4065 #10726]: #731 -#13969 := [mp #13953 #13968]: #13964 -#3978 := (or #4579 #4323) -#4033 := [def-axiom]: #3978 -#13967 := [unit-resolution #4033 #5496]: #4323 -#13906 := (or #4328 #9686 #11135 #11138) -#11139 := (or #9686 #11138 #11135) -#13907 := (or #4328 #11139) -#13933 := (iff #13907 #13906) -#11140 := (or #9686 #11135 #11138) -#13912 := (or #4328 #11140) -#13931 := (iff #13912 #13906) -#13932 := [rewrite]: #13931 -#13929 := (iff #13907 #13912) -#11141 := (iff #11139 #11140) -#11142 := [rewrite]: #11141 -#13930 := [monotonicity #11142]: #13929 -#13928 := [trans #13930 #13932]: #13933 -#13911 := [quant-inst]: #13907 -#13934 := [mp #13911 #13928]: #13906 -#13970 := [unit-resolution #13934 #13967 #13969 #13936 #13935]: false -#13972 := [lemma #13970]: #13971 -#13598 := [unit-resolution #13972 #13600]: #11138 -#13978 := (or #13335 #11137) -#13974 := (iff #9519 #11137) -#13973 := (iff #11137 #9519) -#13736 := (= #11136 #9518) -#13693 := (= #10448 ?x63!14) -#13735 := [symm #13195]: #13693 -#13905 := [monotonicity #13735]: #13736 -#13966 := [monotonicity #13905]: #13973 -#13975 := [symm #13966]: #13974 -#13619 := [hypothesis]: #9519 -#13976 := [mp #13619 #13975]: #11137 -#13625 := [hypothesis]: #11138 -#13977 := [unit-resolution #13625 #13976]: false -#13982 := [lemma #13977]: #13978 -#13601 := [unit-resolution #13982 #13598]: #13335 -#13052 := (not #10330) -#13244 := (or #13052 #10319 #9519) -#13279 := [def-axiom]: #13244 -#13602 := [unit-resolution #13279 #13601 #13593]: #10319 -#13607 := [trans #13735 #13602]: #13609 -#13611 := [trans #13607 #10708]: #13610 -#13622 := [monotonicity #13611]: #13621 -#13629 := [symm #13622]: #13623 -#13634 := (= #2260 #188) -#4740 := (uf_24 uf_22) -#10619 := (= #4740 #188) -#4741 := (= #188 #4740) -#4729 := (uf_10 #4728) -#4748 := (>= #4729 0::int) -#4732 := (* -1::int #4729) -#4736 := (+ uf_9 #4732) -#4737 := (<= #4736 0::int) -#4753 := (or #4737 #4748) -#9615 := (= #4729 0::int) -#9682 := (or #6331 #9615) -#4959 := (= uf_22 uf_22) -#9598 := (not #4959) -#9599 := (or #9598 #9615) -#9683 := (or #6331 #9599) -#9749 := (iff #9683 #9682) -#9751 := (iff #9682 #9682) -#9752 := [rewrite]: #9751 -#9631 := (iff #9599 #9615) -#9603 := (or false #9615) -#9606 := (iff #9603 #9615) -#9607 := [rewrite]: #9606 -#9604 := (iff #9599 #9603) -#9602 := (iff #9598 false) -#9600 := (iff #9598 #8605) -#4968 := (iff #4959 true) -#4969 := [rewrite]: #4968 -#9601 := [monotonicity #4969]: #9600 -#9597 := [trans #9601 #8609]: #9602 -#9605 := [monotonicity #9597]: #9604 -#9632 := [trans #9605 #9607]: #9631 -#9750 := [monotonicity #9632]: #9749 -#9747 := [trans #9750 #9752]: #9749 -#9748 := [quant-inst]: #9683 -#9724 := [mp #9748 #9747]: #9682 -#10718 := [unit-resolution #9724 #4243]: #9615 -#10719 := (not #9615) -#10720 := (or #10719 #4748) -#10721 := [th-lemma]: #10720 -#10722 := [unit-resolution #10721 #10718]: #4748 -#9223 := (not #4748) -#9224 := (or #4753 #9223) -#9225 := [def-axiom]: #9224 -#10723 := [unit-resolution #9225 #10722]: #4753 -#4756 := (not #4753) -#4759 := (or #4741 #4756) -#7499 := (or #4433 #4741 #4756) -#4733 := (+ #1455 #4732) -#4734 := (+ #188 #4733) -#4735 := (<= #4734 0::int) -#4738 := (or #4737 #4735) -#4739 := (not #4738) -#4742 := (or #4741 #4739) -#7438 := (or #4433 #4742) -#9202 := (iff #7438 #7499) -#9040 := (or #4433 #4759) -#9159 := (iff #9040 #7499) -#9162 := [rewrite]: #9159 -#9149 := (iff #7438 #9040) -#4760 := (iff #4742 #4759) -#4757 := (iff #4739 #4756) -#4754 := (iff #4738 #4753) -#4751 := (iff #4735 #4748) -#4745 := (<= #4732 0::int) -#4749 := (iff #4745 #4748) -#4750 := [rewrite]: #4749 -#4746 := (iff #4735 #4745) -#4743 := (= #4734 #4732) -#4744 := [rewrite]: #4743 -#4747 := [monotonicity #4744]: #4746 -#4752 := [trans #4747 #4750]: #4751 -#4755 := [monotonicity #4752]: #4754 -#4758 := [monotonicity #4755]: #4757 -#4761 := [monotonicity #4758]: #4760 -#8886 := [monotonicity #4761]: #9149 -#9203 := [trans #8886 #9162]: #9202 -#9039 := [quant-inst]: #7438 -#9204 := [mp #9039 #9203]: #7499 -#10728 := [unit-resolution #9204 #10727]: #4759 -#10729 := [unit-resolution #10728 #10723]: #4741 -#13620 := [symm #10729]: #10619 -#13608 := (= #2260 #4740) -#9704 := (= ?x63!14 uf_22) -#13603 := [trans #13602 #10708]: #9704 -#13612 := [monotonicity #13603]: #13608 -#13641 := [trans #13612 #13620]: #13634 -#13633 := [trans #13641 #13629]: #13222 -#13644 := [trans #13633 #13213]: #2866 -#13646 := [unit-resolution #13188 #13644]: false -#13639 := [lemma #13646]: #2872 -#10564 := [unit-resolution #13639 #10294 #10559]: false -#10587 := [lemma #10564]: #2872 -#4036 := (or #4567 #4561) -#4037 := [def-axiom]: #4036 -#10784 := [unit-resolution #4037 #10726]: #4561 -#4062 := (or #4567 #4436) -#4035 := [def-axiom]: #4062 -#10785 := [unit-resolution #4035 #10726]: #4436 -#9537 := (or #2858 #4441 #4433) -#9339 := (uf_1 uf_22 ?x61!13) -#9340 := (uf_10 #9339) -#9365 := (+ #2240 #9340) -#9366 := (+ #188 #9365) -#9387 := (>= #9366 0::int) -#9369 := (= #9366 0::int) -#9344 := (* -1::int #9340) -#9348 := (+ uf_9 #9344) -#9349 := (<= #9348 0::int) -#9416 := (not #9349) -#9358 := (+ #2856 #9340) -#9359 := (+ #188 #9358) -#9360 := (>= #9359 0::int) -#9395 := (or #9349 #9360) -#9398 := (not #9395) -#9392 := (= #2239 #2241) -#9517 := (not #9392) -#9516 := [hypothesis]: #2863 -#9520 := (or #9517 #2858) -#9521 := [th-lemma]: #9520 -#9522 := [unit-resolution #9521 #9516]: #9517 -#9523 := [hypothesis]: #4428 -#9404 := (or #4433 #9392 #9398) -#9345 := (+ #1455 #9344) -#9346 := (+ #2241 #9345) -#9347 := (<= #9346 0::int) -#9388 := (or #9349 #9347) -#9389 := (not #9388) -#9390 := (= #2241 #2239) -#9391 := (or #9390 #9389) -#9405 := (or #4433 #9391) -#9412 := (iff #9405 #9404) -#9401 := (or #9392 #9398) -#9407 := (or #4433 #9401) -#9410 := (iff #9407 #9404) -#9411 := [rewrite]: #9410 -#9408 := (iff #9405 #9407) -#9402 := (iff #9391 #9401) -#9399 := (iff #9389 #9398) -#9396 := (iff #9388 #9395) -#9363 := (iff #9347 #9360) -#9351 := (+ #2241 #9344) -#9352 := (+ #1455 #9351) -#9355 := (<= #9352 0::int) -#9361 := (iff #9355 #9360) -#9362 := [rewrite]: #9361 -#9356 := (iff #9347 #9355) -#9353 := (= #9346 #9352) -#9354 := [rewrite]: #9353 -#9357 := [monotonicity #9354]: #9356 -#9364 := [trans #9357 #9362]: #9363 -#9397 := [monotonicity #9364]: #9396 -#9400 := [monotonicity #9397]: #9399 -#9393 := (iff #9390 #9392) -#9394 := [rewrite]: #9393 -#9403 := [monotonicity #9394 #9400]: #9402 -#9409 := [monotonicity #9403]: #9408 -#9413 := [trans #9409 #9411]: #9412 -#9406 := [quant-inst]: #9405 -#9414 := [mp #9406 #9413]: #9404 -#9524 := [unit-resolution #9414 #9523 #9522]: #9398 -#9417 := (or #9395 #9416) -#9418 := [def-axiom]: #9417 -#9525 := [unit-resolution #9418 #9524]: #9416 -#9419 := (not #9360) -#9420 := (or #9395 #9419) -#9421 := [def-axiom]: #9420 -#9526 := [unit-resolution #9421 #9524]: #9419 -#9372 := (or #9349 #9360 #9369) -#7593 := [hypothesis]: #4436 -#9375 := (or #4441 #9349 #9360 #9369) -#9341 := (+ #9340 #2240) -#9342 := (+ #188 #9341) -#9343 := (= #9342 0::int) -#9350 := (or #9349 #9347 #9343) -#9376 := (or #4441 #9350) -#9383 := (iff #9376 #9375) -#9378 := (or #4441 #9372) -#9381 := (iff #9378 #9375) -#9382 := [rewrite]: #9381 -#9379 := (iff #9376 #9378) -#9373 := (iff #9350 #9372) -#9370 := (iff #9343 #9369) -#9367 := (= #9342 #9366) -#9368 := [rewrite]: #9367 -#9371 := [monotonicity #9368]: #9370 -#9374 := [monotonicity #9364 #9371]: #9373 -#9380 := [monotonicity #9374]: #9379 -#9384 := [trans #9380 #9382]: #9383 -#9377 := [quant-inst]: #9376 -#9385 := [mp #9377 #9384]: #9375 -#9527 := [unit-resolution #9385 #7593]: #9372 -#9528 := [unit-resolution #9527 #9526 #9525]: #9369 -#9529 := (not #9369) -#9530 := (or #9529 #9387) -#9531 := [th-lemma]: #9530 -#9532 := [unit-resolution #9531 #9528]: #9387 -#9415 := (>= #2857 0::int) -#9533 := (or #9415 #2858) -#9534 := [th-lemma]: #9533 -#9535 := [unit-resolution #9534 #9516]: #9415 -#9536 := [th-lemma #9535 #9526 #9532]: false -#9538 := [lemma #9536]: #9537 -#10786 := [unit-resolution #9538 #10785 #10727]: #2858 -#4066 := (or #4564 #2863 #4558) -#4067 := [def-axiom]: #4066 -#10787 := [unit-resolution #4067 #10786 #10784]: #4558 -#4081 := (or #4555 #4549) -#4082 := [def-axiom]: #4081 -#25696 := [unit-resolution #4082 #10787]: #4549 -#4077 := (or #4552 #2877 #4546) -#4078 := [def-axiom]: #4077 -#25697 := [unit-resolution #4078 #25696]: #4549 -#25698 := [unit-resolution #25697 #10587]: #4546 -#4087 := (or #4543 #4453) -#4089 := [def-axiom]: #4087 -#25699 := [unit-resolution #4089 #25698]: #4453 -#17073 := (or #3494 #2335 #4458) -#4079 := (or #4555 #4444) -#4080 := [def-axiom]: #4079 -#10788 := [unit-resolution #4080 #10787]: #4444 -#4071 := (or #4567 #4418) -#4057 := [def-axiom]: #4071 -#17666 := [unit-resolution #4057 #10726]: #4418 -#17049 := (or #3494 #2335 #4441 #4423 #981 #4449 #4458) -#7717 := (or #3494 #4319 #2335 #4441 #4423 #981 #4449 #4458) -#6095 := (uf_4 uf_14 ?x72!18) -#6194 := (* -1::int #6095) -#6195 := (+ #2327 #6194) -#7308 := (>= #6195 0::int) -#6100 := (= #2327 #6095) -#4138 := (or #3494 #2338) -#4132 := [def-axiom]: #4138 -#7656 := [unit-resolution #4132 #7658]: #2338 -#7708 := [hypothesis]: #4453 -#6849 := (or #4458 #3479 #6100) -#6096 := (= #6095 #2327) -#6099 := (or #6096 #3479) -#6850 := (or #4458 #6099) -#6859 := (iff #6850 #6849) -#6106 := (or #3479 #6100) -#6854 := (or #4458 #6106) -#6857 := (iff #6854 #6849) -#6858 := [rewrite]: #6857 -#6855 := (iff #6850 #6854) -#6109 := (iff #6099 #6106) -#6103 := (or #6100 #3479) -#6107 := (iff #6103 #6106) -#6108 := [rewrite]: #6107 -#6104 := (iff #6099 #6103) -#6101 := (iff #6096 #6100) -#6102 := [rewrite]: #6101 -#6105 := [monotonicity #6102]: #6104 -#6110 := [trans #6105 #6108]: #6109 -#6856 := [monotonicity #6110]: #6855 -#6860 := [trans #6856 #6858]: #6859 -#6853 := [quant-inst]: #6850 -#6861 := [mp #6853 #6860]: #6849 -#7667 := [unit-resolution #6861 #7708 #7656]: #6100 -#7668 := (not #6100) -#7666 := (or #7668 #7308) -#7669 := [th-lemma]: #7666 -#7670 := [unit-resolution #7669 #7667]: #7308 -#4139 := (not #2923) -#3968 := (or #3494 #4139) +#10924 := [unit-resolution #3956 #10916]: #4318 +#10586 := (or #4323 #5548) +#5540 := (+ #6265 #2183) +#5541 := (>= #5540 0::int) +#10587 := (or #4323 #5541) +#10591 := (iff #10587 #10586) +#10593 := (iff #10586 #10586) +#10594 := [rewrite]: #10593 +#5574 := (iff #5541 #5548) +#5542 := (+ #2183 #6265) +#5539 := (>= #5542 0::int) +#5549 := (iff #5539 #5548) +#5573 := [rewrite]: #5549 +#5545 := (iff #5541 #5539) +#5543 := (= #5540 #5542) +#5544 := [rewrite]: #5543 +#5546 := [monotonicity #5544]: #5545 +#5575 := [trans #5546 #5573]: #5574 +#10592 := [monotonicity #5575]: #10591 +#10595 := [trans #10592 #10594]: #10591 +#10590 := [quant-inst]: #10587 +#10596 := [mp #10590 #10595]: #10586 +#11152 := [unit-resolution #10596 #10924]: #5548 +#10639 := (+ #182 #10931) +#10640 := (>= #10639 0::int) +#10940 := (= #182 #10904) +#13544 := (= #10904 #182) +#13545 := [monotonicity #13436]: #13544 +#13546 := [symm #13545]: #10940 +#13547 := (not #10940) +#13548 := (or #13547 #10640) +#13549 := [th-lemma]: #13548 +#13550 := [unit-resolution #13549 #13546]: #10640 +#13447 := [hypothesis]: #13145 +#13420 := (not #10640) +#11843 := (not #5548) +#13451 := (or #13553 #11843 #2772 #13449 #13420 #13450) +#13452 := [th-lemma]: #13451 +#13453 := [unit-resolution #13452 #13447 #13550 #11152 #13446 #11064]: #13553 +#13675 := (or #10379 #13377) +#13664 := [hypothesis]: #13553 +#10929 := (up_6 uf_15 #10571) +#13669 := (not #10929) +#13670 := (iff #181 #13669) +#13667 := (iff #180 #10929) +#13665 := (iff #10929 #180) +#13666 := [monotonicity #13436]: #13665 +#13668 := [symm #13666]: #13667 +#13671 := [monotonicity #13668]: #13670 +#3944 := (or #4441 #181) +#3939 := [def-axiom]: #3944 +#10457 := [unit-resolution #3939 #10456]: #181 +#13672 := [mp #10457 #13671]: #13669 +#13673 := [hypothesis]: #6294 +#3888 := (or #4453 #4197) +#3912 := [def-axiom]: #3888 +#10562 := [unit-resolution #3912 #10123]: #4197 +#13578 := (or #4202 #10379 #10929 #13377) +#13339 := (+ #10904 #5447) +#13340 := (>= #13339 0::int) +#13371 := (or #10929 #10379 #13340) +#13580 := (or #4202 #13371) +#13591 := (iff #13580 #13578) +#13395 := (or #10379 #10929 #13377) +#13586 := (or #4202 #13395) +#13589 := (iff #13586 #13578) +#13590 := [rewrite]: #13589 +#13587 := (iff #13580 #13586) +#13408 := (iff #13371 #13395) +#13400 := (or #10929 #10379 #13377) +#13404 := (iff #13400 #13395) +#13407 := [rewrite]: #13404 +#13405 := (iff #13371 #13400) +#13398 := (iff #13340 #13377) +#13372 := (+ #5447 #10904) +#13375 := (>= #13372 0::int) +#13378 := (iff #13375 #13377) +#13379 := [rewrite]: #13378 +#13369 := (iff #13340 #13375) +#13373 := (= #13339 #13372) +#13374 := [rewrite]: #13373 +#13370 := [monotonicity #13374]: #13369 +#13399 := [trans #13370 #13379]: #13398 +#13406 := [monotonicity #13399]: #13405 +#13409 := [trans #13406 #13407]: #13408 +#13588 := [monotonicity #13409]: #13587 +#13458 := [trans #13588 #13590]: #13591 +#13581 := [quant-inst]: #13580 +#13472 := [mp #13581 #13458]: #13578 +#13674 := [unit-resolution #13472 #10562 #13673 #13672 #13664]: false +#13676 := [lemma #13674]: #13675 +#13448 := [unit-resolution #13676 #13453]: #10379 +#13046 := (or #13045 #6294 #13018) +#13047 := [def-axiom]: #13046 +#13425 := [unit-resolution #13047 #13448 #13432]: #13018 +#13469 := [trans #13425 #13436]: #6295 +#13470 := [monotonicity #13469]: #13423 +#13463 := (not #13423) +#13471 := (or #13463 #13424) +#13527 := [th-lemma]: #13471 +#13464 := [unit-resolution #13527 #13470]: #13424 +#4857 := (+ #182 #4656) +#4858 := (>= #4857 0::int) +#9945 := (or #4323 #4858) +#9946 := [quant-inst]: #9945 +#10925 := [unit-resolution #9946 #10924]: #4858 +#13467 := [th-lemma #11064 #13446 #13447 #10925 #13464]: false +#13461 := [lemma #13467]: #13468 +#10666 := [unit-resolution #13461 #10648 #11064 #13626]: #13450 +#11458 := (or #9424 #13145) +#13497 := [th-lemma]: #11458 +#13498 := [unit-resolution #13497 #10666]: #9424 +#6587 := (or #6578 #6584) +#13124 := (or #4307 #6578 #6584) +#6531 := (+ #1357 #6530) +#6532 := (+ #6492 #6531) +#6533 := (<= #6532 0::int) +#6574 := (or #6535 #6533) +#6575 := (not #6574) +#6576 := (= #6492 #2184) +#6577 := (or #6576 #6575) +#13125 := (or #4307 #6577) +#13142 := (iff #13125 #13124) +#13138 := (or #4307 #6587) +#13141 := (iff #13138 #13124) +#13136 := [rewrite]: #13141 +#13139 := (iff #13125 #13138) +#6588 := (iff #6577 #6587) +#6585 := (iff #6575 #6584) +#6582 := (iff #6574 #6581) +#6549 := (iff #6533 #6546) +#6537 := (+ #6492 #6530) +#6538 := (+ #1357 #6537) +#6541 := (<= #6538 0::int) +#6547 := (iff #6541 #6546) +#6548 := [rewrite]: #6547 +#6542 := (iff #6533 #6541) +#6539 := (= #6532 #6538) +#6540 := [rewrite]: #6539 +#6543 := [monotonicity #6540]: #6542 +#6550 := [trans #6543 #6548]: #6549 +#6583 := [monotonicity #6550]: #6582 +#6586 := [monotonicity #6583]: #6585 +#6579 := (iff #6576 #6578) +#6580 := [rewrite]: #6579 +#6589 := [monotonicity #6580 #6586]: #6588 +#13140 := [monotonicity #6589]: #13139 +#13143 := [trans #13140 #13136]: #13142 +#13137 := [quant-inst]: #13125 +#13144 := [mp #13137 #13143]: #13124 +#13476 := [unit-resolution #13144 #10462]: #6587 +#13477 := [unit-resolution #13476 #13498]: #6584 +#13474 := (or #6581 #6555) +#13523 := (not #6555) +#13524 := [hypothesis]: #13523 +#13146 := (not #6535) +#13528 := [hypothesis]: #6584 +#13166 := (or #6581 #13146) +#13167 := [def-axiom]: #13166 +#13454 := [unit-resolution #13167 #13528]: #13146 +#13168 := (not #6546) +#13169 := (or #6581 #13168) +#13170 := [def-axiom]: #13169 +#13455 := [unit-resolution #13170 #13528]: #13168 +#6558 := (or #6535 #6546 #6555) +#13101 := (or #4315 #6535 #6546 #6555) +#6527 := (+ #6526 #2770) +#6528 := (+ #182 #6527) +#6529 := (= #6528 0::int) +#6536 := (or #6535 #6533 #6529) +#13102 := (or #4315 #6536) +#13120 := (iff #13102 #13101) +#13104 := (or #4315 #6558) +#13118 := (iff #13104 #13101) +#13119 := [rewrite]: #13118 +#13116 := (iff #13102 #13104) +#6559 := (iff #6536 #6558) +#6556 := (iff #6529 #6555) +#6553 := (= #6528 #6552) +#6554 := [rewrite]: #6553 +#6557 := [monotonicity #6554]: #6556 +#6560 := [monotonicity #6550 #6557]: #6559 +#13117 := [monotonicity #6560]: #13116 +#13115 := [trans #13117 #13119]: #13120 +#13103 := [quant-inst]: #13102 +#13121 := [mp #13103 #13115]: #13101 +#13456 := [unit-resolution #13121 #10914]: #6558 +#13457 := [unit-resolution #13456 #13455 #13454 #13524]: false +#13475 := [lemma #13457]: #13474 +#13577 := [unit-resolution #13475 #13477]: #6555 +#13677 := (or #13523 #13122) +#13678 := [th-lemma]: #13677 +#13679 := [unit-resolution #13678 #13577]: #13122 +#13013 := (uf_1 #10571 ?x68!16) +#13014 := (uf_10 #13013) +#13149 := (* -1::int #13014) +#13526 := (+ #6526 #13149) +#13530 := (>= #13526 0::int) +#13525 := (= #6526 #13014) +#13534 := (= #13014 #6526) +#13532 := (= #13013 #6525) +#13533 := [monotonicity #13436]: #13532 +#13535 := [monotonicity #13533]: #13534 +#13536 := [symm #13535]: #13525 +#13537 := (not #13525) +#13538 := (or #13537 #13530) +#13539 := [th-lemma]: #13538 +#13540 := [unit-resolution #13539 #13536]: #13530 +#13499 := (<= #13014 0::int) +#13500 := (not #13499) +#12922 := (not #12850) +#12923 := (or #12856 #12922) +#12924 := [def-axiom]: #12923 +#13680 := [unit-resolution #12924 #13661]: #12922 +#56 := (uf_10 #12) +#385 := (<= #56 0::int) +#386 := (not #385) +#55 := (= #10 #11) +#389 := (or #55 #386) +#4118 := (forall (vars (?x22 T2) (?x23 T2)) (:pat #4070) #389) +#392 := (forall (vars (?x22 T2) (?x23 T2)) #389) +#4121 := (iff #392 #4118) +#4119 := (iff #389 #389) +#4120 := [refl]: #4119 +#4122 := [quant-intro #4120]: #4121 +#1745 := (~ #392 #392) +#1744 := (~ #389 #389) +#1782 := [refl]: #1744 +#1746 := [nnf-pos #1782]: #1745 +#61 := (< 0::int #56) +#60 := (not #55) +#62 := (implies #60 #61) +#63 := (forall (vars (?x22 T2) (?x23 T2)) #62) +#395 := (iff #63 #392) +#379 := (or #55 #61) +#382 := (forall (vars (?x22 T2) (?x23 T2)) #379) +#393 := (iff #382 #392) +#390 := (iff #379 #389) +#387 := (iff #61 #386) +#388 := [rewrite]: #387 +#391 := [monotonicity #388]: #390 +#394 := [quant-intro #391]: #393 +#383 := (iff #63 #382) +#380 := (iff #62 #379) +#381 := [rewrite]: #380 +#384 := [quant-intro #381]: #383 +#396 := [trans #384 #394]: #395 +#378 := [asserted]: #63 +#397 := [mp #378 #396]: #392 +#1783 := [mp~ #397 #1746]: #392 +#4123 := [mp #1783 #4122]: #4118 +#7140 := (not #4118) +#13508 := (or #7140 #12850 #13500) +#13501 := (= #10571 ?x68!16) +#13502 := (or #13501 #13500) +#13509 := (or #7140 #13502) +#13516 := (iff #13509 #13508) +#13505 := (or #12850 #13500) +#13511 := (or #7140 #13505) +#13514 := (iff #13511 #13508) +#13515 := [rewrite]: #13514 +#13512 := (iff #13509 #13511) +#13506 := (iff #13502 #13505) +#13503 := (iff #13501 #12850) +#13504 := [rewrite]: #13503 +#13507 := [monotonicity #13504]: #13506 +#13513 := [monotonicity #13507]: #13512 +#13517 := [trans #13513 #13515]: #13516 +#13510 := [quant-inst]: #13509 +#13518 := [mp #13510 #13517]: #13508 +#13681 := [unit-resolution #13518 #4123 #13680]: #13500 +#13552 := (not #13122) +#13554 := (or #13552 #2772 #13553 #12850) +#13531 := [hypothesis]: #13377 +#13541 := [hypothesis]: #12922 +#13542 := [unit-resolution #13518 #4123 #13541]: #13500 +#13543 := [hypothesis]: #13122 +#13551 := [th-lemma #13550 #11152 #11064 #13543 #13542 #13540 #13531]: false +#13555 := [lemma #13551]: #13554 +#13682 := [unit-resolution #13555 #13679 #11064 #13680]: #13553 +#13683 := [unit-resolution #13676 #13682]: #10379 +#13684 := [unit-resolution #13047 #13683 #13626]: #13018 +#13685 := [trans #13684 #13436]: #6295 +#13686 := [monotonicity #13685]: #13423 +#13687 := [unit-resolution #13527 #13686]: #13424 +#13688 := [th-lemma #13687 #11064 #10925 #13681 #13540 #13679]: false +#13690 := [lemma #13688]: #13689 +#13952 := [unit-resolution #13690 #6612 #6611]: false +#13940 := [lemma #13952]: #3324 +#7565 := (uf_1 uf_22 ?x63!14) +#8498 := (uf_2 #7565) +#8617 := (up_6 uf_15 #8498) +#8671 := (iff #8617 #180) +#8652 := (iff #180 #8617) +#8499 := (= uf_22 #8498) +#8505 := (or #8504 #8499) +#8506 := [quant-inst]: #8505 +#8783 := [unit-resolution #8506 #4082]: #8499 +#10566 := [monotonicity #8783]: #8652 +#10567 := [symm #10566]: #8671 +#7566 := (uf_10 #7565) +#6801 := (* -1::int #2143) +#7652 := (+ #6801 #7566) +#7653 := (+ #182 #7652) +#7726 := (>= #7653 0::int) +#7921 := (not #7726) +#7567 := (* -1::int #7566) +#7569 := (+ uf_9 #7567) +#7570 := (<= #7569 0::int) +#7725 := (or #7570 #7726) +#7720 := (not #7725) +#4020 := (not #2747) +#10460 := [hypothesis]: #2753 +#4021 := (or #2750 #4020) +#4016 := [def-axiom]: #4021 +#10461 := [unit-resolution #4016 #10460]: #4020 +#7787 := (or #4307 #2747 #7720) +#7561 := (+ #1357 #7567) +#7568 := (+ #2143 #7561) +#7563 := (<= #7568 0::int) +#7571 := (or #7570 #7563) +#7369 := (not #7571) +#7462 := (or #2144 #7369) +#7783 := (or #4307 #7462) +#6906 := (iff #7783 #7787) +#7785 := (or #2747 #7720) +#7788 := (or #4307 #7785) +#7813 := (iff #7788 #7787) +#7809 := [rewrite]: #7813 +#7793 := (iff #7783 #7788) +#7786 := (iff #7462 #7785) +#7715 := (iff #7369 #7720) +#7718 := (iff #7571 #7725) +#7716 := (iff #7563 #7726) +#7463 := (+ #2143 #7567) +#7469 := (+ #1357 #7463) +#7370 := (<= #7469 0::int) +#7751 := (iff #7370 #7726) +#7752 := [rewrite]: #7751 +#7458 := (iff #7563 #7370) +#7470 := (= #7568 #7469) +#7587 := [rewrite]: #7470 +#7459 := [monotonicity #7587]: #7458 +#7717 := [trans #7459 #7752]: #7716 +#7719 := [monotonicity #7717]: #7718 +#7721 := [monotonicity #7719]: #7715 +#7784 := [monotonicity #2749 #7721]: #7786 +#7812 := [monotonicity #7784]: #7793 +#7392 := [trans #7812 #7809]: #6906 +#7789 := [quant-inst]: #7783 +#7572 := [mp #7789 #7392]: #7787 +#10464 := [unit-resolution #7572 #10462 #10461]: #7720 +#7960 := (or #7725 #7921) +#7961 := [def-axiom]: #7960 +#10466 := [unit-resolution #7961 #10464]: #7921 +#8277 := (= uf_22 ?x63!14) +#8348 := (not #8277) +#9109 := (or #8348 #7726) +#7497 := (+ #182 #6801) +#8974 := (>= #7497 0::int) +#8973 := (= #182 #2143) +#9039 := (= #2143 #182) +#8218 := (= ?x63!14 uf_22) +#9035 := [hypothesis]: #8277 +#9036 := [symm #9035]: #8218 +#9040 := [monotonicity #9036]: #9039 +#9072 := [symm #9040]: #8973 +#9073 := (not #8973) +#9074 := (or #9073 #8974) +#9070 := [th-lemma]: #9074 +#9066 := [unit-resolution #9070 #9072]: #8974 +#10210 := [hypothesis]: #7921 +#8497 := (>= #7566 0::int) +#8487 := (= #7566 0::int) +#8488 := (or #8348 #8487) +#57 := (= #56 0::int) +#369 := (or #60 #57) +#4112 := (forall (vars (?x20 T2) (?x21 T2)) (:pat #4070) #369) +#372 := (forall (vars (?x20 T2) (?x21 T2)) #369) +#4115 := (iff #372 #4112) +#4113 := (iff #369 #369) +#4114 := [refl]: #4113 +#4116 := [quant-intro #4114]: #4115 +#1741 := (~ #372 #372) +#1780 := (~ #369 #369) +#1781 := [refl]: #1780 +#1742 := [nnf-pos #1781]: #1741 +#58 := (implies #55 #57) +#59 := (forall (vars (?x20 T2) (?x21 T2)) #58) +#375 := (iff #59 #372) +#348 := (= 0::int #56) +#359 := (or #60 #348) +#364 := (forall (vars (?x20 T2) (?x21 T2)) #359) +#373 := (iff #364 #372) +#370 := (iff #359 #369) +#367 := (iff #348 #57) +#368 := [rewrite]: #367 +#371 := [monotonicity #368]: #370 +#374 := [quant-intro #371]: #373 +#365 := (iff #59 #364) +#362 := (iff #58 #359) +#356 := (implies #55 #348) +#360 := (iff #356 #359) +#361 := [rewrite]: #360 +#357 := (iff #58 #356) +#354 := (iff #57 #348) +#355 := [rewrite]: #354 +#358 := [monotonicity #355]: #357 +#363 := [trans #358 #361]: #362 +#366 := [quant-intro #363]: #365 +#376 := [trans #366 #374]: #375 +#346 := [asserted]: #59 +#377 := [mp #346 #376]: #372 +#1743 := [mp~ #377 #1742]: #372 +#4117 := [mp #1743 #4116]: #4112 +#7157 := (not #4112) +#8491 := (or #7157 #8348 #8487) +#8492 := (or #7157 #8488) +#8494 := (iff #8492 #8491) +#8495 := [rewrite]: #8494 +#8493 := [quant-inst]: #8492 +#8496 := [mp #8493 #8495]: #8491 +#9075 := [unit-resolution #8496 #4117]: #8488 +#9076 := [unit-resolution #9075 #9035]: #8487 +#9104 := (not #8487) +#9105 := (or #9104 #8497) +#9071 := [th-lemma]: #9105 +#9106 := [unit-resolution #9071 #9076]: #8497 +#9103 := [th-lemma #9106 #10210 #9066]: false +#9110 := [lemma #9103]: #9109 +#10467 := [unit-resolution #9110 #10466]: #8348 +#7253 := (up_6 uf_15 ?x63!14) +#8282 := (or #7253 #8277) +#8262 := (up_6 #188 ?x63!14) +#8295 := (iff #8262 #8282) +#8298 := (or #6627 #8295) +#8219 := (ite #8218 #3770 #7253) +#8276 := (iff #8262 #8219) +#8293 := (or #6627 #8276) +#8300 := (iff #8293 #8298) +#8302 := (iff #8298 #8298) +#8303 := [rewrite]: #8302 +#8296 := (iff #8276 #8295) +#8285 := (iff #8219 #8282) +#8280 := (ite #8277 true #7253) +#8283 := (iff #8280 #8282) +#8284 := [rewrite]: #8283 +#8275 := (iff #8219 #8280) +#8278 := (iff #8218 #8277) +#8279 := [rewrite]: #8278 +#8281 := [monotonicity #8279 #3762]: #8275 +#8294 := [trans #8281 #8284]: #8285 +#8297 := [monotonicity #8294]: #8296 +#8301 := [monotonicity #8297]: #8300 +#8335 := [trans #8301 #8303]: #8300 +#8299 := [quant-inst]: #8293 +#8336 := [mp #8299 #8335]: #8298 +#8642 := [unit-resolution #8336 #4096]: #8295 +#8763 := (iff #2145 #8262) +#8755 := (iff #8262 #2145) +#10471 := [monotonicity #10470]: #8755 +#10474 := [symm #10471]: #8763 +#4014 := (or #2750 #2145) +#4015 := [def-axiom]: #4014 +#10468 := [unit-resolution #4015 #10460]: #2145 +#10560 := [mp #10468 #10474]: #8262 +#8379 := (not #8262) +#8376 := (not #8295) +#8380 := (or #8376 #8379 #8282) +#8375 := [def-axiom]: #8380 +#10561 := [unit-resolution #8375 #10560 #8642]: #8282 +#8351 := (not #8282) +#10563 := (or #8277 #7726 #8617 #8351) +#10231 := (or #8277 #7726 #4202 #8617 #8351) +#8489 := (uf_3 #7565) +#10159 := (uf_4 uf_14 #8489) +#10160 := (* -1::int #10159) +#8614 := (uf_4 uf_14 #8498) +#10161 := (+ #8614 #10160) +#10162 := (>= #10161 0::int) +#10163 := (up_6 uf_15 #8489) +#10201 := (iff #7253 #10163) +#10199 := (iff #10163 #7253) +#10197 := (= #8489 ?x63!14) +#8490 := (= ?x63!14 #8489) +#8500 := (or #7845 #8490) +#8501 := [quant-inst]: #8500 +#10196 := [unit-resolution #8501 #4076]: #8490 +#10198 := [symm #10196]: #10197 +#10200 := [monotonicity #10198]: #10199 +#10202 := [symm #10200]: #10201 +#10193 := [hypothesis]: #8282 +#10194 := [hypothesis]: #8348 +#8352 := (or #8351 #7253 #8277) +#8353 := [def-axiom]: #8352 +#10195 := [unit-resolution #8353 #10194 #10193]: #7253 +#10203 := [mp #10195 #10202]: #10163 +#10164 := (not #10163) +#10207 := (or #10162 #10164) +#10204 := (not #8617) +#10205 := [hypothesis]: #10204 +#10206 := [hypothesis]: #4197 +#10169 := (or #4202 #8617 #10162 #10164) +#10165 := (or #8617 #10164 #10162) +#10170 := (or #4202 #10165) +#10177 := (iff #10170 #10169) +#10166 := (or #8617 #10162 #10164) +#10172 := (or #4202 #10166) +#10175 := (iff #10172 #10169) +#10176 := [rewrite]: #10175 +#10173 := (iff #10170 #10172) +#10167 := (iff #10165 #10166) +#10168 := [rewrite]: #10167 +#10174 := [monotonicity #10168]: #10173 +#10178 := [trans #10174 #10176]: #10177 +#10171 := [quant-inst]: #10170 +#10179 := [mp #10171 #10178]: #10169 +#10208 := [unit-resolution #10179 #10206 #10205]: #10207 +#10209 := [unit-resolution #10208 #10203]: #10162 +#8246 := (<= #7566 0::int) +#8247 := (not #8246) +#8249 := (or #8247 #8277) +#8252 := (or #7140 #8247 #8277) +#8248 := (or #8277 #8247) +#8253 := (or #7140 #8248) +#8311 := (iff #8253 #8252) +#8304 := (or #7140 #8249) +#8307 := (iff #8304 #8252) +#8308 := [rewrite]: #8307 +#8305 := (iff #8253 #8304) +#8250 := (iff #8248 #8249) +#8251 := [rewrite]: #8250 +#8306 := [monotonicity #8251]: #8305 +#8436 := [trans #8306 #8308]: #8311 +#8255 := [quant-inst]: #8253 +#8486 := [mp #8255 #8436]: #8252 +#10211 := [unit-resolution #8486 #4123]: #8249 +#10212 := [unit-resolution #10211 #10194]: #8247 +#10213 := (or #8497 #8246) +#10214 := [th-lemma]: #10213 +#10215 := [unit-resolution #10214 #10212]: #8497 +#10184 := (+ #2143 #10160) +#10191 := (<= #10184 0::int) +#10183 := (= #2143 #10159) +#10216 := (= #10159 #2143) +#10217 := [monotonicity #10198]: #10216 +#10218 := [symm #10217]: #10183 +#10219 := (not #10183) +#10220 := (or #10219 #10191) +#10221 := [th-lemma]: #10220 +#10222 := [unit-resolution #10221 #10218]: #10191 +#8625 := (* -1::int #8614) +#8892 := (+ #182 #8625) +#8905 := (>= #8892 0::int) +#8891 := (= #182 #8614) +#10223 := (= #8614 #182) +#8787 := (= #8498 uf_22) +#8788 := [symm #8783]: #8787 +#10224 := [monotonicity #8788]: #10223 +#10225 := [symm #10224]: #8891 +#10226 := (not #8891) +#10227 := (or #10226 #8905) +#10228 := [th-lemma]: #10227 +#10229 := [unit-resolution #10228 #10225]: #8905 +#10230 := [th-lemma #10229 #10222 #10215 #10210 #10209]: false +#10232 := [lemma #10230]: #10231 +#10564 := [unit-resolution #10232 #10562]: #10563 +#10565 := [unit-resolution #10564 #10561 #10467 #10466]: #8617 +#10568 := [mp #10565 #10567]: #180 +#10569 := [unit-resolution #10457 #10568]: false +#10570 := [lemma #10569]: #2750 +#3957 := (or #4429 #4423) +#3958 := [def-axiom]: #3957 +#10917 := [unit-resolution #3958 #10916]: #4423 +#3953 := (or #4426 #2753 #4420) +#3954 := [def-axiom]: #3953 +#10918 := [unit-resolution #3954 #10917]: #4423 +#10919 := [unit-resolution #10918 #10570]: #4420 +#11065 := (or #4417 #4396) +#3926 := (or #4453 #4180) +#3906 := [def-axiom]: #3926 +#9067 := [unit-resolution #3906 #10123]: #4180 +#7840 := (or #4417 #888 #4315 #4307 #4185 #4396 #1636) +#4734 := (>= #182 0::int) +#7810 := [hypothesis]: #4180 +#6390 := (or #4185 #4734) +#6391 := [quant-inst]: #6390 +#7811 := [unit-resolution #6391 #7810]: #4734 +#7291 := (uf_1 uf_22 ?x65!15) +#7292 := (uf_10 #7291) +#4945 := (* -1::int #2166) +#7344 := (+ #4945 #7292) +#7345 := (+ #182 #7344) +#7389 := (<= #7345 0::int) +#7362 := (= #7345 0::int) +#6919 := (uf_4 uf_14 ?x65!15) +#7124 := (* -1::int #6919) +#7338 := (+ #7124 #7292) +#7339 := (+ #182 #7338) +#7340 := (>= #7339 0::int) +#7434 := (not #7340) +#7295 := (* -1::int #7292) +#7299 := (+ uf_9 #7295) +#7350 := (<= #7299 0::int) +#7440 := (or #7340 #7350) +#7445 := (not #7440) +#6927 := (= #2166 #6919) +#8448 := (not #6927) +#7125 := (+ #2166 #7124) +#7959 := (>= #7125 0::int) +#7967 := (not #7959) +#7578 := (>= #6919 0::int) +#7581 := (or #4185 #7578) +#7576 := [quant-inst]: #7581 +#7815 := [unit-resolution #7576 #7810]: #7578 +#7816 := [hypothesis]: #4393 +#7817 := [hypothesis]: #4420 +#3962 := (or #4417 #4411) +#3966 := [def-axiom]: #3962 +#7818 := [unit-resolution #3966 #7817]: #4411 +#4798 := (= #105 #209) +#7837 := (iff #4798 #210) +#7836 := [commutativity]: #1392 +#7829 := (iff #4798 #713) +#7814 := [hypothesis]: #106 +#7835 := [monotonicity #7814]: #7829 +#7838 := [trans #7835 #7836]: #7837 +#4810 := (<= #105 0::int) +#7819 := (or #1636 #4810) +#7830 := [th-lemma]: #7819 +#7831 := [unit-resolution #7830 #7814]: #4810 +#7201 := [hypothesis]: #189 +#3964 := (or #4417 #4327) +#3965 := [def-axiom]: #3964 +#7832 := [unit-resolution #3965 #7817]: #4327 +#7250 := (not #4734) +#7249 := (not #4810) +#7251 := (or #4798 #7249 #7250 #888 #4332 #4307) +#4756 := (uf_1 uf_22 uf_11) +#4757 := (uf_10 #4756) +#7072 := (<= #4757 0::int) +#7073 := (not #7072) +#4695 := (= uf_11 uf_22) +#6917 := (not #4695) +#4739 := (up_6 uf_15 uf_11) +#7422 := (or #4695 #4739) +#6926 := (not #7422) +#7417 := (up_6 #188 uf_11) +#7427 := (iff #7417 #7422) +#3826 := (or #6627 #7427) +#7416 := (ite #4695 #3770 #4739) +#7418 := (iff #7417 #7416) +#6907 := (or #6627 #7418) +#6903 := (iff #6907 #3826) +#6910 := (iff #3826 #3826) +#6911 := [rewrite]: #6910 +#7428 := (iff #7418 #7427) +#7425 := (iff #7416 #7422) +#7419 := (ite #4695 true #4739) +#7423 := (iff #7419 #7422) +#7424 := [rewrite]: #7423 +#7420 := (iff #7416 #7419) +#7421 := [monotonicity #3762]: #7420 +#7426 := [trans #7421 #7424]: #7425 +#7429 := [monotonicity #7426]: #7428 +#6909 := [monotonicity #7429]: #6903 +#6912 := [trans #6909 #6911]: #6903 +#6908 := [quant-inst]: #6907 +#6913 := [mp #6908 #6912]: #3826 +#7172 := [unit-resolution #6913 #4096]: #7427 +#6931 := (not #7417) +#4884 := (up_6 uf_23 uf_11) +#4885 := (not #4884) +#7258 := (iff #4885 #6931) +#7256 := (iff #4884 #7417) +#7204 := (iff #7417 #4884) +#7203 := [symm #7201]: #7202 +#7205 := [monotonicity #7203]: #7204 +#7257 := [symm #7205]: #7256 +#7259 := [monotonicity #7257]: #7258 +#7173 := (not #4798) +#7198 := [hypothesis]: #7173 +#4887 := (or #4798 #4885) +#7199 := [hypothesis]: #4327 +#6803 := (or #4332 #4798 #4885) +#4886 := (or #4885 #4798) +#6818 := (or #4332 #4886) +#6809 := (iff #6818 #6803) +#6817 := (or #4332 #4887) +#6807 := (iff #6817 #6803) +#6808 := [rewrite]: #6807 +#6820 := (iff #6818 #6817) +#4888 := (iff #4886 #4887) +#4889 := [rewrite]: #4888 +#6806 := [monotonicity #4889]: #6820 +#6810 := [trans #6806 #6808]: #6809 +#6819 := [quant-inst]: #6818 +#6805 := [mp #6819 #6810]: #6803 +#7200 := [unit-resolution #6805 #7199]: #4887 +#7195 := [unit-resolution #7200 #7198]: #4885 +#7260 := [mp #7195 #7259]: #6931 +#6929 := (not #7427) +#6930 := (or #6929 #7417 #6926) +#6925 := [def-axiom]: #6930 +#7261 := [unit-resolution #6925 #7260 #7172]: #6926 +#6918 := (or #7422 #6917) +#6916 := [def-axiom]: #6918 +#7262 := [unit-resolution #6916 #7261]: #6917 +#7075 := (or #4695 #7073) +#7078 := (or #7140 #4695 #7073) +#4693 := (= uf_22 uf_11) +#7074 := (or #4693 #7073) +#7079 := (or #7140 #7074) +#7067 := (iff #7079 #7078) +#7063 := (or #7140 #7075) +#7066 := (iff #7063 #7078) +#7061 := [rewrite]: #7066 +#7064 := (iff #7079 #7063) +#7076 := (iff #7074 #7075) +#4696 := (iff #4693 #4695) +#4697 := [rewrite]: #4696 +#7077 := [monotonicity #4697]: #7076 +#7065 := [monotonicity #7077]: #7064 +#7068 := [trans #7065 #7061]: #7067 +#7062 := [quant-inst]: #7079 +#7069 := [mp #7062 #7068]: #7078 +#7263 := [unit-resolution #7069 #4123]: #7075 +#7264 := [unit-resolution #7263 #7262]: #7073 +#4761 := (* -1::int #4757) +#4762 := (+ #1357 #4761) +#4763 := (+ #105 #4762) +#4764 := (<= #4763 0::int) +#6619 := (not #4764) +#4765 := (+ uf_9 #4761) +#4766 := (<= #4765 0::int) +#4800 := (or #4764 #4766) +#4803 := (not #4800) +#4806 := (or #4798 #4803) +#6415 := (or #4307 #4798 #4803) +#4796 := (or #4766 #4764) +#4797 := (not #4796) +#4799 := (or #4798 #4797) +#6444 := (or #4307 #4799) +#6449 := (iff #6444 #6415) +#6446 := (or #4307 #4806) +#6443 := (iff #6446 #6415) +#6448 := [rewrite]: #6443 +#6441 := (iff #6444 #6446) +#4807 := (iff #4799 #4806) +#4804 := (iff #4797 #4803) +#4801 := (iff #4796 #4800) +#4802 := [rewrite]: #4801 +#4805 := [monotonicity #4802]: #4804 +#4808 := [monotonicity #4805]: #4807 +#6447 := [monotonicity #4808]: #6441 +#6450 := [trans #6447 #6448]: #6449 +#6445 := [quant-inst]: #6444 +#6451 := [mp #6445 #6450]: #6415 +#7244 := [unit-resolution #6451 #6843]: #4806 +#7245 := [unit-resolution #7244 #7198]: #4803 +#6620 := (or #4800 #6619) +#6621 := [def-axiom]: #6620 +#7246 := [unit-resolution #6621 #7245]: #6619 +#7247 := [hypothesis]: #4734 +#7248 := [hypothesis]: #4810 +#7243 := [th-lemma #7248 #7247 #7246 #7264]: false +#7252 := [lemma #7243]: #7251 +#7833 := [unit-resolution #7252 #7832 #7811 #7201 #7831 #6843]: #4798 +#7834 := [mp #7833 #7838]: #210 +#3961 := (or #4414 #1394 #4408) +#3963 := [def-axiom]: #3961 +#7839 := [unit-resolution #3963 #7834 #7818]: #4408 +#3968 := (or #4405 #4399) #3970 := [def-axiom]: #3968 -#7671 := [unit-resolution #3970 #7658]: #4139 -#7057 := (uf_4 uf_14 ?x71!19) -#7092 := (* -1::int #7057) -#7093 := (+ #2325 #7092) -#7094 := (<= #7093 0::int) -#7672 := [hypothesis]: #4444 -#7099 := (or #4449 #7094) -#7084 := (+ #7057 #2326) -#7085 := (>= #7084 0::int) -#7100 := (or #4449 #7085) -#7102 := (iff #7100 #7099) -#7104 := (iff #7099 #7099) -#7105 := [rewrite]: #7104 -#7097 := (iff #7085 #7094) -#7086 := (+ #2326 #7057) -#7089 := (>= #7086 0::int) -#7095 := (iff #7089 #7094) -#7096 := [rewrite]: #7095 -#7090 := (iff #7085 #7089) -#7087 := (= #7084 #7086) -#7088 := [rewrite]: #7087 -#7091 := [monotonicity #7088]: #7090 -#7098 := [trans #7091 #7096]: #7097 -#7103 := [monotonicity #7098]: #7102 -#7106 := [trans #7103 #7105]: #7102 -#7101 := [quant-inst]: #7100 -#7107 := [mp #7101 #7106]: #7099 -#7673 := [unit-resolution #7107 #7672]: #7094 -#7218 := (+ #6095 #7092) -#7219 := (+ #2330 #7218) -#7220 := (>= #7219 0::int) -#6129 := (uf_6 uf_15 ?x72!18) -#6130 := (= uf_8 #6129) -decl uf_2 :: (-> T1 T2) -#7303 := (uf_2 #2329) -#7315 := (uf_6 uf_15 #7303) -#7316 := (= uf_8 #7315) -#7618 := (iff #7316 #6130) -#7616 := (= #7315 #6129) -#7707 := (= #6129 #7315) -#7304 := (= ?x72!18 #7303) -#16 := (uf_2 #12) -#325 := (= #10 #16) -#4203 := (forall (vars (?x4 T2) (?x5 T2)) (:pat #4196) #325) -#329 := (forall (vars (?x4 T2) (?x5 T2)) #325) -#4206 := (iff #329 #4203) -#4204 := (iff #325 #325) -#4205 := [refl]: #4204 -#4207 := [quant-intro #4205]: #4206 -#1844 := (~ #329 #329) -#1878 := (~ #325 #325) -#1879 := [refl]: #1878 -#1845 := [nnf-pos #1879]: #1844 -#17 := (= #16 #10) -#18 := (forall (vars (?x4 T2) (?x5 T2)) #17) -#330 := (iff #18 #329) -#327 := (iff #17 #325) -#328 := [rewrite]: #327 -#331 := [quant-intro #328]: #330 -#324 := [asserted]: #18 -#334 := [mp #324 #331]: #329 -#1880 := [mp~ #334 #1845]: #329 -#4208 := [mp #1880 #4207]: #4203 -#7310 := (not #4203) -#7311 := (or #7310 #7304) -#7312 := [quant-inst]: #7311 -#7862 := [unit-resolution #7312 #4208]: #7304 -#7751 := [monotonicity #7862]: #7707 -#7710 := [symm #7751]: #7616 -#7711 := [monotonicity #7710]: #7618 -#7575 := [hypothesis]: #4418 -#6147 := (= uf_22 ?x72!18) -#6150 := (ite #6147 #3895 #6130) -#4961 := (uf_7 uf_15 uf_22 #3894) -#6141 := (uf_6 #4961 ?x72!18) -#6144 := (= uf_8 #6141) -#6153 := (iff #6144 #6150) -#7188 := (or #4987 #6153) -#6139 := (= ?x72!18 uf_22) -#6140 := (ite #6139 #4958 #6130) -#6142 := (= #6141 uf_8) -#6143 := (iff #6142 #6140) -#7189 := (or #4987 #6143) -#7191 := (iff #7189 #7188) -#7193 := (iff #7188 #7188) -#7194 := [rewrite]: #7193 -#6154 := (iff #6143 #6153) -#6151 := (iff #6140 #6150) -#6148 := (iff #6139 #6147) -#6149 := [rewrite]: #6148 -#6152 := [monotonicity #6149 #4971]: #6151 -#6145 := (iff #6142 #6144) -#6146 := [rewrite]: #6145 -#6155 := [monotonicity #6146 #6152]: #6154 -#7192 := [monotonicity #6155]: #7191 -#7195 := [trans #7192 #7194]: #7191 -#7190 := [quant-inst]: #7189 -#7196 := [mp #7190 #7195]: #7188 -#7674 := [unit-resolution #7196 #4222]: #6153 -#7702 := (= #2337 #6141) -#7684 := (= #6141 #2337) -#7682 := (= #4961 uf_23) -#7718 := [hypothesis]: #195 -#7681 := [symm #7718]: #7680 -#7676 := (= #4961 #194) -#7679 := [monotonicity #7678]: #7676 -#7683 := [trans #7679 #7681]: #7682 -#7700 := [monotonicity #7683]: #7684 -#7703 := [symm #7700]: #7702 -#7704 := [trans #7656 #7703]: #6144 -#7211 := (not #6144) -#7208 := (not #6153) -#7212 := (or #7208 #7211 #6150) -#7213 := [def-axiom]: #7212 -#7705 := [unit-resolution #7213 #7704 #7674]: #6150 -#7587 := [hypothesis]: #2336 -#7197 := (not #6150) -#7876 := (not #7308) -#7626 := (not #7094) -#7627 := (or #7316 #7626 #2923 #7876 #4441 #2335 #7197 #4423) -#7857 := [hypothesis]: #7308 -#7858 := [hypothesis]: #4139 -#7108 := (uf_1 uf_22 ?x71!19) -#7109 := (uf_10 #7108) -#7113 := (* -1::int #7109) -#7842 := (+ #2330 #7113) -#7844 := (>= #7842 0::int) -#7841 := (= #2330 #7109) -#7843 := (= #2329 #7108) -#7559 := [hypothesis]: #6150 -#7205 := (not #6130) -#7614 := (not #7316) -#7615 := [hypothesis]: #7614 -#7625 := (or #7205 #7316) -#7620 := (iff #6130 #7316) -#7863 := (= #7303 ?x72!18) -#7864 := [symm #7862]: #7863 -#7617 := [monotonicity #7864]: #7616 -#7619 := [monotonicity #7617]: #7618 -#7621 := [symm #7619]: #7620 -#7613 := [hypothesis]: #6130 -#7665 := [mp #7613 #7621]: #7316 -#7624 := [unit-resolution #7615 #7665]: false -#7623 := [lemma #7624]: #7625 -#7565 := [unit-resolution #7623 #7615]: #7205 -#7201 := (or #7197 #6147 #6130) -#7202 := [def-axiom]: #7201 -#7566 := [unit-resolution #7202 #7565 #7559]: #6147 -#7567 := [symm #7566]: #6139 -#7568 := [monotonicity #7567]: #7843 -#7569 := [monotonicity #7568]: #7841 -#7847 := (not #7841) -#7848 := (or #7847 #7844) -#7849 := [th-lemma]: #7848 -#7576 := [unit-resolution #7849 #7569]: #7844 -#7577 := [hypothesis]: #7094 -#7127 := (+ #7092 #7109) -#7128 := (+ #188 #7127) -#7129 := (>= #7128 0::int) -#7134 := (+ #2326 #7109) -#7135 := (+ #188 #7134) -#7138 := (= #7135 0::int) -#7584 := (not #7138) -#7156 := (>= #7135 0::int) -#7875 := (not #7156) -#7309 := (uf_4 uf_14 #7303) -#7324 := (* -1::int #7309) -#7325 := (+ #188 #7324) -#7326 := (<= #7325 0::int) -#7331 := (or #7316 #7326) -#7334 := (or #4423 #7316 #7326) -#7313 := (+ #7309 #1455) -#7314 := (>= #7313 0::int) -#7317 := (or #7316 #7314) -#7335 := (or #4423 #7317) -#7342 := (iff #7335 #7334) -#7337 := (or #4423 #7331) -#7340 := (iff #7337 #7334) -#7341 := [rewrite]: #7340 -#7338 := (iff #7335 #7337) -#7332 := (iff #7317 #7331) -#7329 := (iff #7314 #7326) -#7318 := (+ #1455 #7309) -#7321 := (>= #7318 0::int) -#7327 := (iff #7321 #7326) -#7328 := [rewrite]: #7327 -#7322 := (iff #7314 #7321) -#7319 := (= #7313 #7318) -#7320 := [rewrite]: #7319 -#7323 := [monotonicity #7320]: #7322 -#7330 := [trans #7323 #7328]: #7329 -#7333 := [monotonicity #7330]: #7332 -#7339 := [monotonicity #7333]: #7338 -#7343 := [trans #7339 #7341]: #7342 -#7336 := [quant-inst]: #7335 -#7344 := [mp #7336 #7343]: #7334 -#7578 := [unit-resolution #7344 #7575]: #7331 -#7579 := [unit-resolution #7578 #7615]: #7326 -#7874 := (not #7326) -#7873 := (not #7844) -#7877 := (or #7873 #7874 #7875 #2923 #7876) -#7859 := [hypothesis]: #7156 -#7860 := [hypothesis]: #7844 -#7861 := [hypothesis]: #7326 -#7503 := (+ #6095 #7324) -#7507 := (>= #7503 0::int) -#7502 := (= #6095 #7309) -#7865 := (= #7309 #6095) -#7866 := [monotonicity #7864]: #7865 -#7867 := [symm #7866]: #7502 -#7868 := (not #7502) -#7869 := (or #7868 #7507) -#7870 := [th-lemma]: #7869 -#7871 := [unit-resolution #7870 #7867]: #7507 -#7872 := [th-lemma #7871 #7861 #7860 #7859 #7858 #7857]: false -#7878 := [lemma #7872]: #7877 -#7580 := [unit-resolution #7878 #7576 #7579 #7858 #7857]: #7875 -#7585 := (or #7584 #7156) -#7581 := [th-lemma]: #7585 -#7586 := [unit-resolution #7581 #7580]: #7584 -#7117 := (+ uf_9 #7113) -#7118 := (<= #7117 0::int) -#7180 := (not #7118) -#7590 := (or #7180 #2335 #7873) -#7591 := [th-lemma]: #7590 -#7592 := [unit-resolution #7591 #7576 #7587]: #7180 -#7141 := (or #7118 #7129 #7138) -#7144 := (or #4441 #7118 #7129 #7138) -#7110 := (+ #7109 #2326) -#7111 := (+ #188 #7110) -#7112 := (= #7111 0::int) -#7114 := (+ #1455 #7113) -#7115 := (+ #7057 #7114) -#7116 := (<= #7115 0::int) -#7119 := (or #7118 #7116 #7112) -#7145 := (or #4441 #7119) -#7152 := (iff #7145 #7144) -#7147 := (or #4441 #7141) -#7150 := (iff #7147 #7144) -#7151 := [rewrite]: #7150 -#7148 := (iff #7145 #7147) -#7142 := (iff #7119 #7141) -#7139 := (iff #7112 #7138) -#7136 := (= #7111 #7135) -#7137 := [rewrite]: #7136 -#7140 := [monotonicity #7137]: #7139 -#7132 := (iff #7116 #7129) -#7120 := (+ #7057 #7113) -#7121 := (+ #1455 #7120) -#7124 := (<= #7121 0::int) -#7130 := (iff #7124 #7129) -#7131 := [rewrite]: #7130 -#7125 := (iff #7116 #7124) -#7122 := (= #7115 #7121) -#7123 := [rewrite]: #7122 -#7126 := [monotonicity #7123]: #7125 -#7133 := [trans #7126 #7131]: #7132 -#7143 := [monotonicity #7133 #7140]: #7142 -#7149 := [monotonicity #7143]: #7148 -#7153 := [trans #7149 #7151]: #7152 -#7146 := [quant-inst]: #7145 -#7154 := [mp #7146 #7153]: #7144 -#7594 := [unit-resolution #7154 #7593]: #7141 -#7595 := [unit-resolution #7594 #7592 #7586]: #7129 -#7632 := [th-lemma #7871 #7579 #7595 #7577 #7576 #7858 #7857]: false -#7628 := [lemma #7632]: #7627 -#7706 := [unit-resolution #7628 #7673 #7671 #7670 #7593 #7587 #7705 #7575]: #7316 -#7709 := [mp #7706 #7711]: #6130 -#7713 := (or #7205 #7220) -#7712 := [hypothesis]: #4314 -#7225 := (or #4319 #2335 #7205 #7220) -#7221 := (or #7205 #2335 #7220) -#7226 := (or #4319 #7221) -#7233 := (iff #7226 #7225) -#7222 := (or #2335 #7205 #7220) -#7228 := (or #4319 #7222) -#7231 := (iff #7228 #7225) -#7232 := [rewrite]: #7231 -#7229 := (iff #7226 #7228) -#7223 := (iff #7221 #7222) -#7224 := [rewrite]: #7223 -#7230 := [monotonicity #7224]: #7229 -#7234 := [trans #7230 #7232]: #7233 -#7227 := [quant-inst]: #7226 -#7235 := [mp #7227 #7234]: #7225 -#7714 := [unit-resolution #7235 #7712 #7587]: #7713 -#7715 := [unit-resolution #7714 #7709]: #7220 -#7716 := [th-lemma #7715 #7673 #7671 #7670]: false -#7761 := [lemma #7716]: #7717 -#16979 := [unit-resolution #7761 #9187]: #17049 -#17090 := [unit-resolution #16979 #10785 #17666 #13581 #10788]: #17073 -#16348 := [unit-resolution #17090 #25699]: #17077 -#17046 := [unit-resolution #16348 #17052 #7658]: false -#16349 := [lemma #17046]: #3494 -#5169 := (uf_6 uf_23 ?x75!20) -#5170 := (= uf_8 #5169) -#21788 := (uf_6 #10323 ?x75!20) -#20832 := (= #21788 #5169) -#20857 := (= #5169 #21788) -#14425 := (= uf_23 #10323) -#14423 := (= #194 #10323) -#14424 := [symm #13577]: #14423 -#14426 := [trans #13581 #14424]: #14425 -#20702 := [monotonicity #14426]: #20857 -#20877 := [symm #20702]: #20832 -#21791 := (= uf_8 #21788) -#6014 := (uf_6 uf_15 ?x75!20) -#6015 := (= uf_8 #6014) -#21786 := (= ?x75!20 #9695) -#21794 := (ite #21786 #3895 #6015) -#21797 := (iff #21791 #21794) -#19678 := (or #4987 #21797) -#21787 := (ite #21786 #4958 #6015) -#21789 := (= #21788 uf_8) -#21790 := (iff #21789 #21787) -#19676 := (or #4987 #21790) -#19311 := (iff #19676 #19678) -#19682 := (iff #19678 #19678) -#19685 := [rewrite]: #19682 -#21798 := (iff #21790 #21797) -#21795 := (iff #21787 #21794) -#21796 := [monotonicity #4971]: #21795 -#21792 := (iff #21789 #21791) -#21793 := [rewrite]: #21792 -#21799 := [monotonicity #21793 #21796]: #21798 -#19681 := [monotonicity #21799]: #19311 -#19733 := [trans #19681 #19685]: #19311 -#19684 := [quant-inst]: #19676 -#19731 := [mp #19684 #19733]: #19678 -#20449 := [unit-resolution #19731 #4222]: #21797 -#15125 := (uf_1 #9695 ?x75!20) -#15126 := (uf_10 #15125) -#19741 := (<= #15126 0::int) -#4781 := (* -1::int #4740) -#5008 := (+ #188 #4781) -#5009 := (>= #5008 0::int) -#9232 := (or #4449 #5009) -#7564 := [quant-inst]: #9232 -#9311 := [unit-resolution #7564 #10788]: #5009 -#11895 := (uf_24 #9695) -#10002 := (* -1::int #11895) -#14620 := (+ #2355 #10002) -#15146 := (<= #14620 0::int) -#14621 := (uf_6 uf_23 #9695) -#14622 := (= uf_8 #14621) -#21303 := (= #3894 #14621) -#21293 := (= #14621 #3894) -#21294 := [monotonicity #13581 #10708]: #21293 -#21304 := [symm #21294]: #21303 -#21305 := [trans #7677 #21304]: #14622 -#15158 := (* -1::int #15126) -#15159 := (+ #10002 #15158) -#15160 := (+ #2355 #15159) -#15161 := (= #15160 0::int) -#23339 := (<= #15160 0::int) -#5042 := (<= #5008 0::int) -#10190 := (not #4741) -#10191 := (or #10190 #5042) -#10192 := [th-lemma]: #10191 -#17097 := [unit-resolution #10192 #10729]: #5042 -#10025 := (+ #4740 #10002) -#10040 := (<= #10025 0::int) -#9964 := (= #4740 #11895) -#17098 := (= #11895 #4740) -#17107 := [monotonicity #10708]: #17098 -#17108 := [symm #17107]: #9964 -#17109 := (not #9964) -#17110 := (or #17109 #10040) -#17111 := [th-lemma]: #17110 -#17112 := [unit-resolution #17111 #17108]: #10040 -#5826 := (uf_1 uf_22 ?x75!20) -#5827 := (uf_10 #5826) -#23569 := (+ #5827 #15158) -#23570 := (<= #23569 0::int) -#23568 := (= #5827 #15126) -#20561 := (= #5826 #15125) -#25948 := (= #15125 #5826) -#25949 := [monotonicity #10708]: #25948 -#20537 := [symm #25949]: #20561 -#20580 := [monotonicity #20537]: #23568 -#25953 := (not #23568) -#25961 := (or #25953 #23570) -#25962 := [th-lemma]: #25961 -#20545 := [unit-resolution #25962 #20580]: #23570 -#5852 := (+ #2356 #5827) -#5853 := (+ #188 #5852) -#23301 := (>= #5853 0::int) -#20066 := [hypothesis]: #4498 -#4125 := (or #4495 #2368) -#4127 := [def-axiom]: #4125 -#20064 := [unit-resolution #4127 #20066]: #2368 -#29068 := (or #23301 #2367) -#4860 := (>= #188 0::int) -#4051 := (or #4579 #4306) -#4047 := [def-axiom]: #4051 -#10596 := [unit-resolution #4047 #5496]: #4306 -#9276 := (or #4311 #4860) -#9277 := [quant-inst]: #9276 -#12530 := [unit-resolution #9277 #10596]: #4860 -#25950 := (= #15126 #5827) -#25951 := [monotonicity #25949]: #25950 -#25952 := [symm #25951]: #23568 -#25963 := [unit-resolution #25962 #25952]: #23570 -#23340 := (>= #15160 0::int) -#10021 := (>= #10025 0::int) -#25933 := (or #17109 #10021) -#25934 := [th-lemma]: #25933 -#25935 := [unit-resolution #25934 #17108]: #10021 -#23571 := (>= #23569 0::int) -#25954 := (or #25953 #23571) -#25955 := [th-lemma]: #25954 -#25956 := [unit-resolution #25955 #25952]: #23571 -#23300 := (<= #5853 0::int) -#25968 := (not #23301) -#25609 := [hypothesis]: #25968 -#29059 := (or #23300 #23301) -#29062 := [th-lemma]: #29059 -#29061 := [unit-resolution #29062 #25609]: #23300 -#25957 := (not #23571) -#25944 := (not #23300) -#8759 := (not #5009) -#25942 := (not #10021) -#25958 := (or #23340 #25942 #8759 #25944 #25957) -#25959 := [th-lemma]: #25958 -#29063 := [unit-resolution #25959 #29061 #25956 #25935 #9311]: #23340 -#24500 := [hypothesis]: #2368 -#5831 := (* -1::int #5827) -#5835 := (+ uf_9 #5831) -#5836 := (<= #5835 0::int) -#25729 := (or #23301 #5836) -#23313 := (not #5836) -#25608 := [hypothesis]: #23313 -#5856 := (= #5853 0::int) -#25937 := (not #5856) -#25964 := (or #25937 #23301) -#25965 := [th-lemma]: #25964 -#25722 := [unit-resolution #25965 #25609]: #25937 -#5775 := (uf_4 uf_14 ?x75!20) -#5810 := (* -1::int #5775) -#5845 := (+ #5810 #5827) -#5846 := (+ #188 #5845) -#5847 := (>= #5846 0::int) -#23316 := (not #5847) -#5811 := (+ #2355 #5810) -#5812 := (<= #5811 0::int) -#23280 := (or #4449 #5812) -#5802 := (+ #5775 #2356) -#5803 := (>= #5802 0::int) -#23281 := (or #4449 #5803) -#23283 := (iff #23281 #23280) -#23285 := (iff #23280 #23280) -#23286 := [rewrite]: #23285 -#5815 := (iff #5803 #5812) -#5804 := (+ #2356 #5775) -#5807 := (>= #5804 0::int) -#5813 := (iff #5807 #5812) -#5814 := [rewrite]: #5813 -#5808 := (iff #5803 #5807) -#5805 := (= #5802 #5804) -#5806 := [rewrite]: #5805 -#5809 := [monotonicity #5806]: #5808 -#5816 := [trans #5809 #5814]: #5815 -#23284 := [monotonicity #5816]: #23283 -#23287 := [trans #23284 #23286]: #23283 -#23282 := [quant-inst]: #23281 -#23288 := [mp #23282 #23287]: #23280 -#25723 := [unit-resolution #23288 #10788]: #5812 -#25724 := (not #5812) -#25725 := (or #23301 #23316 #25724) -#25726 := [th-lemma]: #25725 -#25721 := [unit-resolution #25726 #25609 #25723]: #23316 -#5859 := (or #5836 #5847 #5856) -#23289 := (or #4441 #5836 #5847 #5856) -#5828 := (+ #5827 #2356) -#5829 := (+ #188 #5828) -#5830 := (= #5829 0::int) -#5832 := (+ #1455 #5831) -#5833 := (+ #5775 #5832) -#5834 := (<= #5833 0::int) -#5837 := (or #5836 #5834 #5830) -#23290 := (or #4441 #5837) -#23297 := (iff #23290 #23289) -#23292 := (or #4441 #5859) -#23295 := (iff #23292 #23289) -#23296 := [rewrite]: #23295 -#23293 := (iff #23290 #23292) -#5860 := (iff #5837 #5859) -#5857 := (iff #5830 #5856) -#5854 := (= #5829 #5853) -#5855 := [rewrite]: #5854 -#5858 := [monotonicity #5855]: #5857 -#5850 := (iff #5834 #5847) -#5838 := (+ #5775 #5831) -#5839 := (+ #1455 #5838) -#5842 := (<= #5839 0::int) -#5848 := (iff #5842 #5847) -#5849 := [rewrite]: #5848 -#5843 := (iff #5834 #5842) -#5840 := (= #5833 #5839) -#5841 := [rewrite]: #5840 -#5844 := [monotonicity #5841]: #5843 -#5851 := [trans #5844 #5849]: #5850 -#5861 := [monotonicity #5851 #5858]: #5860 -#23294 := [monotonicity #5861]: #23293 -#23298 := [trans #23294 #23296]: #23297 -#23291 := [quant-inst]: #23290 -#23299 := [mp #23291 #23298]: #23289 -#25727 := [unit-resolution #23299 #10785]: #5859 -#25728 := [unit-resolution #25727 #25721 #25722 #25608]: false -#25730 := [lemma #25728]: #25729 -#29064 := [unit-resolution #25730 #25609]: #5836 -#29069 := [th-lemma #29064 #24500 #29063 #17112 #17097 #25963 #12530]: false -#29071 := [lemma #29069]: #29068 -#20448 := [unit-resolution #29071 #20064]: #23301 -#25969 := (not #23570) -#8760 := (not #5042) -#25967 := (not #10040) -#25970 := (or #23339 #25967 #8760 #25968 #25969) -#25971 := [th-lemma]: #25970 -#20530 := [unit-resolution #25971 #20448 #20545 #17112 #17097]: #23339 -#20756 := [unit-resolution #25955 #20580]: #23571 -#5878 := (or #5836 #5847) -#5881 := (not #5878) -#5780 := (= #2355 #5775) -#20062 := (not #5780) -#24414 := (>= #5811 0::int) -#24509 := (not #24414) -#4128 := (or #4495 #2937) -#4126 := [def-axiom]: #4128 -#20016 := [unit-resolution #4126 #20066]: #2937 -#4012 := (or #4495 #4487) -#4013 := [def-axiom]: #4012 -#20068 := [unit-resolution #4013 #20066]: #4487 -#23167 := (or #24509 #4492 #2934 #2367) -#6043 := (?x47!7 ?x75!20) -#6048 := (uf_1 #6043 ?x75!20) -#24986 := (uf_2 #6048) -#25837 := (uf_6 uf_15 #24986) -#25838 := (= uf_8 #25837) -#21703 := (= #9695 #24986) -#22526 := (ite #21703 #3895 #25838) -#23044 := (not #22526) -#21277 := (uf_6 #10323 #24986) -#21622 := (= uf_8 #21277) -#22242 := (iff #21622 #22526) -#22524 := (or #4987 #22242) -#21246 := (= #24986 #9695) -#21220 := (ite #21246 #4958 #25838) -#21600 := (= #21277 uf_8) -#21601 := (iff #21600 #21220) -#23024 := (or #4987 #21601) -#23028 := (iff #23024 #22524) -#23042 := (iff #22524 #22524) -#23043 := [rewrite]: #23042 -#22533 := (iff #21601 #22242) -#22529 := (iff #21220 #22526) -#22515 := (iff #21246 #21703) -#22520 := [rewrite]: #22515 -#22530 := [monotonicity #22520 #4971]: #22529 -#21227 := (iff #21600 #21622) -#21608 := [rewrite]: #21227 -#22592 := [monotonicity #21608 #22530]: #22533 -#23029 := [monotonicity #22592]: #23028 -#23041 := [trans #23029 #23043]: #23028 -#23025 := [quant-inst]: #23024 -#22593 := [mp #23025 #23041]: #22524 -#23122 := [unit-resolution #22593 #4222]: #22242 -#23057 := (not #21622) -#24996 := (uf_6 uf_23 #24986) -#24997 := (= uf_8 #24996) -#24998 := (not #24997) -#23123 := (iff #24998 #23057) -#23153 := (iff #24997 #21622) -#23146 := (iff #21622 #24997) -#23151 := (= #21277 #24996) -#23149 := [monotonicity #13583]: #23151 -#23152 := [monotonicity #23149]: #23146 -#23127 := [symm #23152]: #23153 -#23124 := [monotonicity #23127]: #23123 -#24506 := [hypothesis]: #24414 -#6049 := (uf_10 #6048) -#6050 := (* -1::int #6049) -#6044 := (uf_4 uf_14 #6043) -#6045 := (* -1::int #6044) -#6051 := (+ #6045 #6050) -#6052 := (+ #5775 #6051) -#18721 := (>= #6052 0::int) -#6053 := (= #6052 0::int) -#6055 := (uf_6 uf_15 #6043) -#6056 := (= uf_8 #6055) -#6057 := (not #6056) -#6054 := (not #6053) -#6046 := (+ #5775 #6045) -#6047 := (<= #6046 0::int) -#6063 := (or #6047 #6054 #6057) -#6066 := (not #6063) -#6060 := (+ uf_9 #5810) -#6061 := (<= #6060 0::int) -#24508 := (not #6061) -#24510 := (or #24508 #24509 #2367) -#24505 := [hypothesis]: #6061 -#24507 := [th-lemma #24506 #24505 #24500]: false -#24511 := [lemma #24507]: #24510 -#23125 := [unit-resolution #24511 #24506 #24500]: #24508 -#23139 := (or #6061 #6066) -#23138 := [hypothesis]: #2937 -#19063 := (or #4344 #2934 #6061 #6066) -#6058 := (or #6057 #6054 #6047) -#6059 := (not #6058) -#6062 := (or #2369 #6061 #6059) -#19066 := (or #4344 #6062) -#18390 := (iff #19066 #19063) -#6069 := (or #2934 #6061 #6066) -#19050 := (or #4344 #6069) -#19090 := (iff #19050 #19063) -#19045 := [rewrite]: #19090 -#19051 := (iff #19066 #19050) -#6070 := (iff #6062 #6069) -#6067 := (iff #6059 #6066) -#6064 := (iff #6058 #6063) -#6065 := [rewrite]: #6064 -#6068 := [monotonicity #6065]: #6067 -#6071 := [monotonicity #2936 #6068]: #6070 -#19061 := [monotonicity #6071]: #19051 -#18720 := [trans #19061 #19045]: #18390 -#18371 := [quant-inst]: #19066 -#19065 := [mp #18371 #18720]: #19063 -#23137 := [unit-resolution #19065 #9243 #23138]: #23139 -#23140 := [unit-resolution #23137 #23125]: #6066 -#19081 := (or #6063 #6053) -#12850 := [def-axiom]: #19081 -#23135 := [unit-resolution #12850 #23140]: #6053 -#23141 := (or #6054 #18721) -#23143 := [th-lemma]: #23141 -#23144 := [unit-resolution #23143 #23135]: #18721 -#25978 := [hypothesis]: #4487 -#23633 := (<= #6052 0::int) -#23142 := (or #6054 #23633) -#23145 := [th-lemma]: #23142 -#23147 := [unit-resolution #23145 #23135]: #23633 -#19055 := (not #6047) -#18317 := (or #6063 #19055) -#19075 := [def-axiom]: #18317 -#23148 := [unit-resolution #19075 #23140]: #19055 -#30651 := (not #18721) -#30650 := (not #23633) -#30652 := (or #24998 #6047 #30650 #4492 #30651 #24509) -#28637 := (uf_1 #24986 ?x75!20) -#28638 := (uf_10 #28637) -#28651 := (* -1::int #28638) -#24990 := (uf_24 #24986) -#24991 := (* -1::int #24990) -#28652 := (+ #24991 #28651) -#28653 := (+ #2355 #28652) -#28682 := (>= #28653 0::int) -#28654 := (= #28653 0::int) -#19910 := (uf_3 #15125) -#22479 := (uf_1 #24986 #19910) -#22480 := (uf_10 #22479) -#22498 := (* -1::int #22480) -#22603 := (+ #22498 #24991) -#21494 := (uf_24 #19910) -#22604 := (+ #21494 #22603) -#30636 := (= #22604 0::int) -#30564 := [hypothesis]: #23633 -#29534 := [hypothesis]: #18721 -#29010 := (+ #6049 #28651) -#21152 := (<= #29010 0::int) -#21012 := (= #6049 #28638) -#30043 := (= #6048 #28637) -#24987 := (= #6043 #24986) -#20827 := (or #7310 #24987) -#20849 := [quant-inst]: #20827 -#30089 := [unit-resolution #20849 #4208]: #24987 -#30044 := [monotonicity #30089]: #30043 -#30097 := [monotonicity #30044]: #21012 -#30102 := (not #21012) -#30581 := (or #30102 #21152) -#30588 := [th-lemma]: #30581 -#30589 := [unit-resolution #30588 #30097]: #21152 -#29012 := (>= #29010 0::int) -#30590 := (or #30102 #29012) -#30591 := [th-lemma]: #30590 -#30592 := [unit-resolution #30591 #30097]: #29012 -#19879 := (+ #22480 #28651) -#21287 := (<= #19879 0::int) -#21209 := (= #22480 #28638) -#30596 := (= #22479 #28637) -#30594 := (= #19910 ?x75!20) -#19950 := (= ?x75!20 #19910) -#19896 := (or #8139 #19950) -#19953 := [quant-inst]: #19896 -#30593 := [unit-resolution #19953 #4202]: #19950 -#30595 := [symm #30593]: #30594 -#30597 := [monotonicity #30595]: #30596 -#30598 := [monotonicity #30597]: #21209 -#30599 := (not #21209) -#30600 := (or #30599 #21287) -#30601 := [th-lemma]: #30600 -#30602 := [unit-resolution #30601 #30598]: #21287 -#20127 := (>= #19879 0::int) -#30603 := (or #30599 #20127) -#30604 := [th-lemma]: #30603 -#30605 := [unit-resolution #30604 #30598]: #20127 -#22047 := (* -1::int #21494) -#20392 := (+ #2355 #22047) -#20387 := (<= #20392 0::int) -#19773 := (= #2355 #21494) -#30606 := (= #21494 #2355) -#30607 := [monotonicity #30595]: #30606 -#30608 := [symm #30607]: #19773 -#30609 := (not #19773) -#30610 := (or #30609 #20387) -#30611 := [th-lemma]: #30610 -#30612 := [unit-resolution #30611 #30608]: #20387 -#20393 := (>= #20392 0::int) -#30613 := (or #30609 #20393) -#30614 := [th-lemma]: #30613 -#30615 := [unit-resolution #30614 #30608]: #20393 -#25833 := (uf_4 uf_14 #24986) -#25834 := (* -1::int #25833) -#21068 := (+ #6044 #25834) -#21067 := (<= #21068 0::int) -#21078 := (= #6044 #25833) -#30618 := (= #25833 #6044) -#30616 := (= #24986 #6043) -#30617 := [symm #30089]: #30616 -#30619 := [monotonicity #30617]: #30618 -#30620 := [symm #30619]: #21078 -#30621 := (not #21078) -#30622 := (or #30621 #21067) -#30623 := [th-lemma]: #30622 -#30624 := [unit-resolution #30623 #30620]: #21067 -#21183 := (>= #21068 0::int) -#30625 := (or #30621 #21183) -#30626 := [th-lemma]: #30625 -#30627 := [unit-resolution #30626 #30620]: #21183 -#28762 := (+ #24990 #25834) -#28763 := (<= #28762 0::int) -#22244 := (or #4449 #28763) -#28754 := (+ #25833 #24991) -#28755 := (>= #28754 0::int) -#22245 := (or #4449 #28755) -#22246 := (iff #22245 #22244) -#22240 := (iff #22244 #22244) -#22286 := [rewrite]: #22240 -#28766 := (iff #28755 #28763) -#28756 := (+ #24991 #25833) -#28759 := (>= #28756 0::int) -#28764 := (iff #28759 #28763) -#28765 := [rewrite]: #28764 -#28760 := (iff #28755 #28759) -#28757 := (= #28754 #28756) -#28758 := [rewrite]: #28757 -#28761 := [monotonicity #28758]: #28760 -#28767 := [trans #28761 #28765]: #28766 -#22285 := [monotonicity #28767]: #22246 -#22287 := [trans #22285 #22286]: #22246 -#22187 := [quant-inst]: #22245 -#22288 := [mp #22187 #22287]: #22244 -#30628 := [unit-resolution #22288 #10788]: #28763 -#30563 := (>= #28762 0::int) -#28732 := (= #24990 #25833) -#30629 := [hypothesis]: #24997 -#28738 := (or #24998 #28732) -#22151 := (or #4458 #24998 #28732) -#28728 := (= #25833 #24990) -#28729 := (or #28728 #24998) -#22180 := (or #4458 #28729) -#22189 := (iff #22180 #22151) -#22183 := (or #4458 #28738) -#22186 := (iff #22183 #22151) -#22188 := [rewrite]: #22186 -#22179 := (iff #22180 #22183) -#28741 := (iff #28729 #28738) -#28735 := (or #28732 #24998) -#28739 := (iff #28735 #28738) -#28740 := [rewrite]: #28739 -#28736 := (iff #28729 #28735) -#28733 := (iff #28728 #28732) -#28734 := [rewrite]: #28733 -#28737 := [monotonicity #28734]: #28736 -#28742 := [trans #28737 #28740]: #28741 -#22185 := [monotonicity #28742]: #22179 -#22184 := [trans #22185 #22188]: #22189 -#22154 := [quant-inst]: #22180 -#22243 := [mp #22154 #22184]: #22151 -#30630 := [unit-resolution #22243 #25699]: #28738 -#30631 := [unit-resolution #30630 #30629]: #28732 -#30632 := (not #28732) -#30633 := (or #30632 #30563) -#30634 := [th-lemma]: #30633 -#30635 := [unit-resolution #30634 #30631]: #30563 -#30637 := [th-lemma #30635 #30628 #30627 #30624 #30615 #30612 #30605 #30602 #30592 #30589 #29534 #30564 #24506 #25723]: #30636 -#30640 := (= #28653 #22604) -#30638 := (= #22604 #28653) -#30639 := [th-lemma #30615 #30612 #30605 #30602]: #30638 -#30641 := [symm #30639]: #30640 -#30642 := [trans #30641 #30637]: #28654 -#28659 := (not #28654) -#30643 := (or #28659 #28682) -#30644 := [th-lemma]: #30643 -#30645 := [unit-resolution #30644 #30642]: #28682 -#16155 := (+ #2355 #24991) -#15436 := (<= #16155 0::int) -#28665 := (or #15436 #24998 #28659) -#21333 := (or #4492 #15436 #24998 #28659) -#28639 := (+ #2356 #28638) -#28640 := (+ #24990 #28639) -#28641 := (= #28640 0::int) -#28642 := (not #28641) -#15907 := (+ #24990 #2356) -#16051 := (>= #15907 0::int) -#28643 := (or #24998 #16051 #28642) -#21024 := (or #4492 #28643) -#20975 := (iff #21024 #21333) -#21318 := (or #4492 #28665) -#21314 := (iff #21318 #21333) -#21310 := [rewrite]: #21314 -#21153 := (iff #21024 #21318) -#28668 := (iff #28643 #28665) -#28662 := (or #24998 #15436 #28659) -#28666 := (iff #28662 #28665) -#28667 := [rewrite]: #28666 -#28663 := (iff #28643 #28662) -#28660 := (iff #28642 #28659) -#28657 := (iff #28641 #28654) -#28644 := (+ #24990 #28638) -#28645 := (+ #2356 #28644) -#28648 := (= #28645 0::int) -#28655 := (iff #28648 #28654) -#28656 := [rewrite]: #28655 -#28649 := (iff #28641 #28648) -#28646 := (= #28640 #28645) -#28647 := [rewrite]: #28646 -#28650 := [monotonicity #28647]: #28649 -#28658 := [trans #28650 #28656]: #28657 -#28661 := [monotonicity #28658]: #28660 -#15965 := (iff #16051 #15436) -#13744 := (+ #2356 #24990) -#15070 := (>= #13744 0::int) -#14692 := (iff #15070 #15436) -#16264 := [rewrite]: #14692 -#16123 := (iff #16051 #15070) -#16156 := (= #15907 #13744) -#15494 := [rewrite]: #16156 -#15349 := [monotonicity #15494]: #16123 -#16187 := [trans #15349 #16264]: #15965 -#28664 := [monotonicity #16187 #28661]: #28663 -#28669 := [trans #28664 #28667]: #28668 -#21320 := [monotonicity #28669]: #21153 -#21319 := [trans #21320 #21310]: #20975 -#21323 := [quant-inst]: #21024 -#20612 := [mp #21323 #21319]: #21333 -#30646 := [unit-resolution #20612 #25978]: #28665 -#30647 := [unit-resolution #30646 #30642 #30629]: #15436 -#30648 := [hypothesis]: #19055 -#30649 := [th-lemma #30648 #30589 #30564 #30647 #30645]: false -#30653 := [lemma #30649]: #30652 -#23150 := [unit-resolution #30653 #23148 #23147 #25978 #23144 #24506]: #24998 -#23131 := [mp #23150 #23124]: #23057 -#23056 := (not #22242) -#23047 := (or #23056 #21622 #23044) -#23051 := [def-axiom]: #23047 -#23132 := [unit-resolution #23051 #23131 #23122]: #23044 -#23045 := (not #21703) -#23130 := (or #22526 #23045) -#3924 := (not #3895) -#23054 := (or #22526 #23045 #3924) -#23050 := [def-axiom]: #23054 -#23157 := [unit-resolution #23050 #7677]: #23130 -#23158 := [unit-resolution #23157 #23132]: #23045 -#23164 := (or #22526 #21703) -#23162 := (= #6055 #25837) -#23129 := (= #25837 #6055) -#23156 := [monotonicity #30617]: #23129 -#23128 := [symm #23156]: #23162 -#19077 := (or #6063 #6056) -#19078 := [def-axiom]: #19077 -#23133 := [unit-resolution #19078 #23140]: #6056 -#23163 := [trans #23133 #23128]: #25838 -#25839 := (not #25838) -#23055 := (or #22526 #21703 #25839) -#23053 := [def-axiom]: #23055 -#23165 := [unit-resolution #23053 #23163]: #23164 -#23169 := [unit-resolution #23165 #23158 #23132]: false -#23168 := [lemma #23169]: #23167 -#19986 := [unit-resolution #23168 #20068 #20016 #20064]: #24509 -#20023 := (or #20062 #24414) -#20453 := [th-lemma]: #20023 -#20441 := [unit-resolution #20453 #19986]: #20062 -#5884 := (or #5780 #5881) -#18349 := (or #4433 #5780 #5881) -#5875 := (or #5836 #5834) -#5876 := (not #5875) -#5776 := (= #5775 #2355) -#5877 := (or #5776 #5876) -#18388 := (or #4433 #5877) -#18375 := (iff #18388 #18349) -#18374 := (or #4433 #5884) -#18380 := (iff #18374 #18349) -#18414 := [rewrite]: #18380 -#18370 := (iff #18388 #18374) -#5885 := (iff #5877 #5884) -#5882 := (iff #5876 #5881) -#5879 := (iff #5875 #5878) -#5880 := [monotonicity #5851]: #5879 -#5883 := [monotonicity #5880]: #5882 -#5781 := (iff #5776 #5780) -#5782 := [rewrite]: #5781 -#5886 := [monotonicity #5782 #5883]: #5885 -#18411 := [monotonicity #5886]: #18370 -#18381 := [trans #18411 #18414]: #18375 -#18415 := [quant-inst]: #18388 -#18379 := [mp #18415 #18381]: #18349 -#20748 := [unit-resolution #18379 #10727]: #5884 -#20750 := [unit-resolution #20748 #20441]: #5881 -#18373 := (or #5878 #23313) -#18372 := [def-axiom]: #18373 -#20751 := [unit-resolution #18372 #20750]: #23313 -#18384 := (or #5878 #23316) -#18417 := [def-axiom]: #18384 -#20753 := [unit-resolution #18417 #20750]: #23316 -#20775 := [unit-resolution #25727 #20753 #20751]: #5856 -#25938 := (or #25937 #23300) -#25939 := [th-lemma]: #25938 -#20664 := [unit-resolution #25939 #20775]: #23300 -#20698 := [unit-resolution #25959 #20664 #20756 #25935 #9311]: #23340 -#25974 := (not #23340) -#25973 := (not #23339) -#25975 := (or #15161 #25973 #25974) -#25976 := [th-lemma]: #25975 -#20700 := [unit-resolution #25976 #20698 #20530]: #15161 -#15166 := (not #15161) -#14623 := (not #14622) -#15169 := (or #14623 #15146 #15166) -#23321 := (or #4492 #14623 #15146 #15166) -#15133 := (+ #2356 #15126) -#15134 := (+ #11895 #15133) -#15135 := (= #15134 0::int) -#15136 := (not #15135) -#15137 := (+ #11895 #2356) -#15138 := (>= #15137 0::int) -#15139 := (or #14623 #15138 #15136) -#23322 := (or #4492 #15139) -#23336 := (iff #23322 #23321) -#23331 := (or #4492 #15169) -#23334 := (iff #23331 #23321) -#23335 := [rewrite]: #23334 -#23332 := (iff #23322 #23331) -#15170 := (iff #15139 #15169) -#15167 := (iff #15136 #15166) -#15164 := (iff #15135 #15161) -#15151 := (+ #11895 #15126) -#15152 := (+ #2356 #15151) -#15155 := (= #15152 0::int) -#15162 := (iff #15155 #15161) -#15163 := [rewrite]: #15162 -#15156 := (iff #15135 #15155) -#15153 := (= #15134 #15152) -#15154 := [rewrite]: #15153 -#15157 := [monotonicity #15154]: #15156 -#15165 := [trans #15157 #15163]: #15164 -#15168 := [monotonicity #15165]: #15167 -#15149 := (iff #15138 #15146) -#15140 := (+ #2356 #11895) -#15143 := (>= #15140 0::int) -#15147 := (iff #15143 #15146) -#15148 := [rewrite]: #15147 -#15144 := (iff #15138 #15143) -#15141 := (= #15137 #15140) -#15142 := [rewrite]: #15141 -#15145 := [monotonicity #15142]: #15144 -#15150 := [trans #15145 #15148]: #15149 -#15171 := [monotonicity #15150 #15168]: #15170 -#23333 := [monotonicity #15171]: #23332 -#23337 := [trans #23333 #23335]: #23336 -#23330 := [quant-inst]: #23322 -#23338 := [mp #23330 #23337]: #23321 -#20754 := [unit-resolution #23338 #20068]: #15169 -#20663 := [unit-resolution #20754 #20700 #21305]: #15146 -#25941 := (not #15146) -#20620 := (or #19741 #25957 #25944 #25941 #25942 #8759) -#20724 := [th-lemma]: #20620 -#20713 := [unit-resolution #20724 #20664 #25935 #20756 #20663 #9311]: #19741 -#19738 := (not #19741) -#20001 := (or #10302 #19738 #21786) -#19729 := (= #9695 ?x75!20) -#19725 := (or #19729 #19738) -#19974 := (or #10302 #19725) -#19977 := (iff #19974 #20001) -#19723 := (or #19738 #21786) -#19976 := (or #10302 #19723) -#19980 := (iff #19976 #20001) -#19985 := [rewrite]: #19980 -#19981 := (iff #19974 #19976) -#19759 := (iff #19725 #19723) -#19727 := (or #21786 #19738) -#19755 := (iff #19727 #19723) -#19757 := [rewrite]: #19755 -#19728 := (iff #19725 #19727) -#19742 := (iff #19729 #21786) -#19724 := [rewrite]: #19742 -#19726 := [monotonicity #19724]: #19728 -#19753 := [trans #19726 #19757]: #19759 -#19982 := [monotonicity #19753]: #19981 -#19947 := [trans #19982 #19985]: #19977 -#20005 := [quant-inst]: #19974 -#19997 := [mp #20005 #19947]: #20001 -#20716 := [unit-resolution #19997 #4249 #20713]: #21786 -#19787 := (not #21786) -#20752 := (or #21794 #19787) -#19745 := (or #21794 #19787 #3924) -#19739 := [def-axiom]: #19745 -#20774 := [unit-resolution #19739 #7677]: #20752 -#20858 := [unit-resolution #20774 #20716]: #21794 -#19746 := (not #21794) -#19695 := (not #21797) -#19694 := (or #19695 #21791 #19746) -#19761 := [def-axiom]: #19694 -#20783 := [unit-resolution #19761 #20858 #20449]: #21791 -#20859 := [trans #20783 #20877]: #5170 -#5171 := (not #5170) -#5786 := (or #5171 #5780) -#18330 := (or #4458 #5171 #5780) -#5779 := (or #5776 #5171) -#18283 := (or #4458 #5779) -#18352 := (iff #18283 #18330) -#18337 := (or #4458 #5786) -#18335 := (iff #18337 #18330) -#18351 := [rewrite]: #18335 -#18336 := (iff #18283 #18337) -#5789 := (iff #5779 #5786) -#5783 := (or #5780 #5171) -#5787 := (iff #5783 #5786) -#5788 := [rewrite]: #5787 -#5784 := (iff #5779 #5783) -#5785 := [monotonicity #5782]: #5784 -#5790 := [trans #5785 #5788]: #5789 -#18331 := [monotonicity #5790]: #18336 -#18358 := [trans #18331 #18351]: #18352 -#18350 := [quant-inst]: #18283 -#18412 := [mp #18350 #18358]: #18330 -#20455 := [unit-resolution #18412 #25699]: #5786 -#20452 := [unit-resolution #20455 #20441]: #5171 -#20896 := [unit-resolution #20452 #20859]: false -#20973 := [lemma #20896]: #4495 -#4006 := (or #4504 #3499 #4498) -#4021 := [def-axiom]: #4006 -#19204 := [unit-resolution #4021 #20973 #16349]: #4504 -#4017 := (or #4507 #4501) -#4025 := [def-axiom]: #4017 -#19217 := [unit-resolution #4025 #19204]: #4507 -#11869 := (or #2283 #4458) -#8633 := (uf_1 uf_22 ?x65!15) -#8634 := (uf_10 #8633) -#5075 := (* -1::int #2282) -#8695 := (+ #5075 #8634) -#8696 := (+ #188 #8695) -#13182 := (<= #8696 0::int) -#8699 := (= #8696 0::int) -#8635 := (* -1::int #8634) -#8639 := (+ uf_9 #8635) -#8640 := (<= #8639 0::int) -#13547 := (not #8640) -#8579 := (uf_4 uf_14 ?x65!15) -#8589 := (* -1::int #8579) -#8655 := (+ #8589 #8634) -#8656 := (+ #188 #8655) -#8657 := (>= #8656 0::int) -#8662 := (or #8640 #8657) -#8665 := (not #8662) -#8645 := (= #2282 #8579) -#13653 := (not #8645) -#8618 := (+ #2282 #8589) -#13938 := (>= #8618 0::int) -#14032 := (not #13938) -#8826 := [hypothesis]: #2284 -#14033 := (or #14032 #2283) -#14029 := [hypothesis]: #13938 -#8778 := (>= #8579 0::int) -#13651 := (or #4311 #8778) -#13643 := [quant-inst]: #13651 -#14030 := [unit-resolution #13643 #10596]: #8778 -#14031 := [th-lemma #8826 #14030 #14029]: false -#14034 := [lemma #14031]: #14033 -#14041 := [unit-resolution #14034 #8826]: #14032 -#13631 := (or #13653 #13938) -#13654 := [th-lemma]: #13631 -#11935 := [unit-resolution #13654 #14041]: #13653 -#13403 := (or #4433 #8645 #8665) -#8636 := (+ #1455 #8635) -#8637 := (+ #8579 #8636) -#8638 := (<= #8637 0::int) -#8641 := (or #8640 #8638) -#8642 := (not #8641) -#8643 := (= #8579 #2282) -#8644 := (or #8643 #8642) -#13406 := (or #4433 #8644) -#13514 := (iff #13406 #13403) -#8668 := (or #8645 #8665) -#12773 := (or #4433 #8668) -#13027 := (iff #12773 #13403) -#13487 := [rewrite]: #13027 -#12976 := (iff #13406 #12773) -#8669 := (iff #8644 #8668) -#8666 := (iff #8642 #8665) -#8663 := (iff #8641 #8662) -#8660 := (iff #8638 #8657) -#8648 := (+ #8579 #8635) -#8649 := (+ #1455 #8648) -#8652 := (<= #8649 0::int) -#8658 := (iff #8652 #8657) -#8659 := [rewrite]: #8658 -#8653 := (iff #8638 #8652) -#8650 := (= #8637 #8649) -#8651 := [rewrite]: #8650 -#8654 := [monotonicity #8651]: #8653 -#8661 := [trans #8654 #8659]: #8660 -#8664 := [monotonicity #8661]: #8663 -#8667 := [monotonicity #8664]: #8666 -#8646 := (iff #8643 #8645) -#8647 := [rewrite]: #8646 -#8670 := [monotonicity #8647 #8667]: #8669 -#13475 := [monotonicity #8670]: #12976 -#13534 := [trans #13475 #13487]: #13514 -#12762 := [quant-inst]: #13406 -#13535 := [mp #12762 #13534]: #13403 -#11121 := [unit-resolution #13535 #10727 #11935]: #8665 -#13548 := (or #8662 #13547) -#13558 := [def-axiom]: #13548 -#11762 := [unit-resolution #13558 #11121]: #13547 -#13559 := (not #8657) -#13562 := (or #8662 #13559) -#13563 := [def-axiom]: #13562 -#11759 := [unit-resolution #13563 #11121]: #13559 -#8702 := (or #8640 #8657 #8699) -#13329 := (or #4441 #8640 #8657 #8699) -#8691 := (+ #8634 #5075) -#8692 := (+ #188 #8691) -#8693 := (= #8692 0::int) -#8694 := (or #8640 #8638 #8693) -#13330 := (or #4441 #8694) -#13187 := (iff #13330 #13329) -#13332 := (or #4441 #8702) -#13183 := (iff #13332 #13329) -#13184 := [rewrite]: #13183 -#13355 := (iff #13330 #13332) -#8703 := (iff #8694 #8702) -#8700 := (iff #8693 #8699) -#8697 := (= #8692 #8696) -#8698 := [rewrite]: #8697 -#8701 := [monotonicity #8698]: #8700 -#8704 := [monotonicity #8661 #8701]: #8703 -#13107 := [monotonicity #8704]: #13355 -#13265 := [trans #13107 #13184]: #13187 -#13331 := [quant-inst]: #13330 -#13285 := [mp #13331 #13265]: #13329 -#14047 := [unit-resolution #13285 #10785]: #8702 -#11757 := [unit-resolution #14047 #11759 #11762]: #8699 -#14049 := (not #8699) -#14050 := (or #14049 #13182) -#14051 := [th-lemma]: #14050 -#11817 := [unit-resolution #14051 #11757]: #13182 -#13904 := (uf_1 #9695 ?x65!15) -#13630 := (uf_10 #13904) -#13902 := (* -1::int #13630) -#13836 := (+ #8634 #13902) -#14015 := (>= #13836 0::int) -#13832 := (= #8634 #13630) -#14026 := (= #13630 #8634) -#14022 := (= #13904 #8633) -#14023 := [monotonicity #10708]: #14022 -#14027 := [monotonicity #14023]: #14026 -#14028 := [symm #14027]: #13832 -#14035 := (not #13832) -#14036 := (or #14035 #14015) -#14037 := [th-lemma]: #14036 -#14038 := [unit-resolution #14037 #14028]: #14015 -#13835 := (>= #13630 0::int) -#13660 := (<= #13630 0::int) -#13692 := (not #13660) -#13628 := (= ?x65!15 #9695) -#13668 := (not #13628) -#8269 := (uf_6 uf_15 ?x65!15) -#8270 := (= uf_8 #8269) -#13741 := (ite #13628 #3895 #8270) -#13822 := (not #13741) -#13691 := (uf_6 #10323 ?x65!15) -#13734 := (= uf_8 #13691) -#13768 := (iff #13734 #13741) -#13775 := (or #4987 #13768) -#13690 := (ite #13628 #4958 #8270) -#13689 := (= #13691 uf_8) -#13739 := (iff #13689 #13690) -#13769 := (or #4987 #13739) -#13699 := (iff #13769 #13775) -#13700 := (iff #13775 #13775) -#13746 := [rewrite]: #13700 -#13770 := (iff #13739 #13768) -#13772 := (iff #13690 #13741) -#13773 := [monotonicity #4971]: #13772 -#13738 := (iff #13689 #13734) -#13740 := [rewrite]: #13738 -#13774 := [monotonicity #13740 #13773]: #13770 -#13776 := [monotonicity #13774]: #13699 -#13747 := [trans #13776 #13746]: #13699 -#13777 := [quant-inst]: #13769 -#13821 := [mp #13777 #13747]: #13775 -#14053 := [unit-resolution #13821 #4222]: #13768 -#13869 := (not #13734) -#5078 := (uf_6 uf_23 ?x65!15) -#5079 := (= uf_8 #5078) -#5080 := (not #5079) -#14062 := (iff #5080 #13869) -#14060 := (iff #5079 #13734) -#14058 := (iff #13734 #5079) -#14056 := (= #13691 #5078) -#14057 := [monotonicity #13583]: #14056 -#14059 := [monotonicity #14057]: #14058 -#14061 := [symm #14059]: #14060 -#14063 := [monotonicity #14061]: #14062 -#12807 := (or #4458 #5080 #8645) -#12793 := (or #8643 #5080) -#12815 := (or #4458 #12793) -#12826 := (iff #12815 #12807) -#12790 := (or #5080 #8645) -#12845 := (or #4458 #12790) -#12847 := (iff #12845 #12807) -#12848 := [rewrite]: #12847 -#12846 := (iff #12815 #12845) -#12791 := (iff #12793 #12790) -#12794 := (or #8645 #5080) -#12785 := (iff #12794 #12790) -#12787 := [rewrite]: #12785 -#12788 := (iff #12793 #12794) -#12789 := [monotonicity #8647]: #12788 -#12814 := [trans #12789 #12787]: #12791 -#12844 := [monotonicity #12814]: #12846 -#12827 := [trans #12844 #12848]: #12826 -#12816 := [quant-inst]: #12815 -#12828 := [mp #12816 #12827]: #12807 -#10280 := [unit-resolution #12828 #7708 #11935]: #5080 -#10395 := [mp #10280 #14063]: #13869 -#13829 := (not #13768) -#13844 := (or #13829 #13734 #13822) -#13874 := [def-axiom]: #13844 -#11835 := [unit-resolution #13874 #10395 #14053]: #13822 -#14066 := (or #13741 #13668) -#13827 := (or #13741 #13668 #3924) -#13840 := [def-axiom]: #13827 -#14067 := [unit-resolution #13840 #7677]: #14066 -#12190 := [unit-resolution #14067 #11835]: #13668 -#13657 := (or #13628 #13692) -#14009 := (or #10302 #13628 #13692) -#13626 := (= #9695 ?x65!15) -#13627 := (or #13626 #13692) -#14004 := (or #10302 #13627) -#14021 := (iff #14004 #14009) -#14011 := (or #10302 #13657) -#14014 := (iff #14011 #14009) -#14020 := [rewrite]: #14014 -#14012 := (iff #14004 #14011) -#13742 := (iff #13627 #13657) -#13642 := (iff #13626 #13628) -#13640 := [rewrite]: #13642 -#13743 := [monotonicity #13640]: #13742 -#14013 := [monotonicity #13743]: #14012 -#14024 := [trans #14013 #14020]: #14021 -#14010 := [quant-inst]: #14004 -#14025 := [mp #14010 #14024]: #14009 -#14069 := [unit-resolution #14025 #4249]: #13657 -#12191 := [unit-resolution #14069 #12190]: #13692 -#14071 := (or #13835 #13660) -#14072 := [th-lemma]: #14071 -#12192 := [unit-resolution #14072 #12191]: #13835 -#11148 := [th-lemma #12192 #14038 #8826 #11817 #12530]: false -#11885 := [lemma #11148]: #11869 -#19815 := [unit-resolution #11885 #25699]: #2283 -#4090 := (or #4543 #4537) -#4091 := [def-axiom]: #4090 -#19829 := [unit-resolution #4091 #25698]: #4537 -#19826 := (or #4540 #4534) -#10106 := (uf_1 #9695 uf_11) -#10107 := (uf_10 #10106) -#10111 := (* -1::int #10107) -#4883 := (uf_1 uf_22 uf_11) -#4884 := (uf_10 #4883) -#10686 := (+ #4884 #10111) -#10690 := (>= #10686 0::int) -#10685 := (= #4884 #10107) -#10711 := (= #10107 #4884) -#10709 := (= #10106 #4883) -#10710 := [monotonicity #10708]: #10709 -#10712 := [monotonicity #10710]: #10711 -#10713 := [symm #10712]: #10685 -#10714 := (not #10685) -#10715 := (or #10714 #10690) -#10716 := [th-lemma]: #10715 -#10717 := [unit-resolution #10716 #10713]: #10690 -#3952 := (<= #108 0::int) -#5799 := (or #1749 #3952) -#5800 := [th-lemma]: #5799 -#6367 := [unit-resolution #5800 #5498]: #3952 -#4802 := (?x47!7 uf_22) -#4803 := (uf_4 uf_14 #4802) -#4804 := (* -1::int #4803) -#4805 := (+ #188 #4804) -#4806 := (<= #4805 0::int) -#9262 := (not #4806) -#4814 := (uf_6 uf_15 #4802) -#4815 := (= uf_8 #4814) -#4816 := (not #4815) -#4807 := (uf_1 #4802 uf_22) -#4808 := (uf_10 #4807) -#4809 := (* -1::int #4808) -#4810 := (+ #4804 #4809) -#4811 := (+ #188 #4810) -#4812 := (= #4811 0::int) -#4813 := (not #4812) -#4824 := (or #4806 #4813 #4816) -#4827 := (not #4824) -#4821 := (= uf_11 uf_22) -#8243 := (not #4821) -#10613 := [hypothesis]: #1492 -#10629 := (or #8243 #217 #10190) -#10625 := (= #216 #108) -#10621 := (= #188 #108) -#4819 := (= uf_22 uf_11) -#10614 := [hypothesis]: #4821 -#10615 := [symm #10614]: #4819 -#10622 := [monotonicity #10615]: #10621 -#10623 := (= #216 #188) -#10616 := [hypothesis]: #4741 -#10620 := [symm #10616]: #10619 -#10617 := (= #216 #4740) -#10618 := [monotonicity #10614]: #10617 -#10624 := [trans #10618 #10620]: #10623 -#10626 := [trans #10624 #10622]: #10625 -#10627 := [trans #10626 #5498]: #217 -#10628 := [unit-resolution #10613 #10627]: false -#10630 := [lemma #10628]: #10629 -#10730 := [unit-resolution #10630 #10613 #10729]: #8243 -#10732 := (or #4821 #4827) -#4053 := (or #4567 #1657) -#4054 := [def-axiom]: #4053 -#10731 := [unit-resolution #4054 #10726]: #1657 -#8960 := (or #4344 #1656 #4821 #4827) -#4817 := (or #4816 #4813 #4806) -#4818 := (not #4817) -#4820 := (or #4819 #1656 #4818) -#8966 := (or #4344 #4820) -#9267 := (iff #8966 #8960) -#4833 := (or #1656 #4821 #4827) -#9153 := (or #4344 #4833) -#8906 := (iff #9153 #8960) -#9205 := [rewrite]: #8906 -#9156 := (iff #8966 #9153) -#4836 := (iff #4820 #4833) -#4830 := (or #4821 #1656 #4827) -#4834 := (iff #4830 #4833) -#4835 := [rewrite]: #4834 -#4831 := (iff #4820 #4830) -#4828 := (iff #4818 #4827) -#4825 := (iff #4817 #4824) -#4826 := [rewrite]: #4825 -#4829 := [monotonicity #4826]: #4828 -#4822 := (iff #4819 #4821) -#4823 := [rewrite]: #4822 -#4832 := [monotonicity #4823 #4829]: #4831 -#4837 := [trans #4832 #4835]: #4836 -#9157 := [monotonicity #4837]: #9156 -#9268 := [trans #9157 #9205]: #9267 -#9217 := [quant-inst]: #8966 -#9238 := [mp #9217 #9268]: #8960 -#10733 := [unit-resolution #9238 #9243 #10731]: #10732 -#10734 := [unit-resolution #10733 #10730]: #4827 -#9269 := (or #4824 #9262) -#9261 := [def-axiom]: #9269 -#10735 := [unit-resolution #9261 #10734]: #9262 -#6905 := (>= #4803 0::int) -#10502 := (not #6905) -#10503 := [hypothesis]: #10502 -#10442 := (or #4311 #6905) -#10443 := [quant-inst]: #10442 -#10607 := [unit-resolution #10443 #10596 #10503]: false -#10608 := [lemma #10607]: #6905 -#4888 := (* -1::int #4884) -#4889 := (+ #1455 #4888) -#4890 := (+ #108 #4889) -#4891 := (<= #4890 0::int) -#9338 := (not #4891) -#4892 := (+ uf_9 #4888) -#4893 := (<= #4892 0::int) -#4927 := (or #4891 #4893) -#4930 := (not #4927) -#4925 := (= #108 #216) -#10743 := (not #4925) -#10744 := (iff #1492 #10743) -#10741 := (iff #217 #4925) -#10739 := (iff #4925 #217) -#10738 := [commutativity]: #1490 -#10736 := (iff #4925 #788) -#10737 := [monotonicity #5498]: #10736 -#10740 := [trans #10737 #10738]: #10739 -#10742 := [symm #10740]: #10741 -#10745 := [monotonicity #10742]: #10744 -#10746 := [mp #10613 #10745]: #10743 -#4933 := (or #4925 #4930) -#9308 := (or #4433 #4925 #4930) -#4923 := (or #4893 #4891) -#4924 := (not #4923) -#4926 := (or #4925 #4924) -#9309 := (or #4433 #4926) -#9334 := (iff #9309 #9308) -#9329 := (or #4433 #4933) -#9332 := (iff #9329 #9308) -#9333 := [rewrite]: #9332 -#9330 := (iff #9309 #9329) -#4934 := (iff #4926 #4933) -#4931 := (iff #4924 #4930) -#4928 := (iff #4923 #4927) -#4929 := [rewrite]: #4928 -#4932 := [monotonicity #4929]: #4931 -#4935 := [monotonicity #4932]: #4934 -#9331 := [monotonicity #4935]: #9330 -#9335 := [trans #9331 #9333]: #9334 -#9310 := [quant-inst]: #9309 -#9336 := [mp #9310 #9335]: #9308 -#10747 := [unit-resolution #9336 #10727]: #4933 -#10748 := [unit-resolution #10747 #10746]: #4930 -#9321 := (or #4927 #9338) -#9322 := [def-axiom]: #9321 -#10749 := [unit-resolution #9322 #10748]: #9338 -#10647 := (>= #10107 0::int) -#9978 := (<= #10107 0::int) -#9979 := (not #9978) -#10042 := (= uf_11 #9695) -#10207 := (not #10042) -#10754 := (iff #8243 #10207) -#10752 := (iff #4821 #10042) -#10750 := (iff #10042 #4821) -#10751 := [monotonicity #10708]: #10750 -#10753 := [symm #10751]: #10752 -#10755 := [monotonicity #10753]: #10754 -#10756 := [mp #10730 #10755]: #10207 -#10049 := (or #9979 #10042) -#10397 := (or #10302 #9979 #10042) -#10035 := (= #9695 uf_11) -#10036 := (or #10035 #9979) -#10418 := (or #10302 #10036) -#10633 := (iff #10418 #10397) -#10308 := (or #10302 #10049) -#10631 := (iff #10308 #10397) -#10632 := [rewrite]: #10631 -#10609 := (iff #10418 #10308) -#10065 := (iff #10036 #10049) -#10046 := (or #10042 #9979) -#10050 := (iff #10046 #10049) -#10051 := [rewrite]: #10050 -#10047 := (iff #10036 #10046) -#10044 := (iff #10035 #10042) -#10045 := [rewrite]: #10044 -#10048 := [monotonicity #10045]: #10047 -#10165 := [trans #10048 #10051]: #10065 -#10612 := [monotonicity #10165]: #10609 -#10634 := [trans #10612 #10632]: #10633 -#10413 := [quant-inst]: #10418 -#10635 := [mp #10413 #10634]: #10397 -#10757 := [unit-resolution #10635 #4249]: #10049 -#10758 := [unit-resolution #10757 #10756]: #9979 -#10759 := (or #10647 #9978) -#10760 := [th-lemma]: #10759 -#10761 := [unit-resolution #10760 #10758]: #10647 -#10762 := [th-lemma #10761 #10749 #10608 #10735 #6367 #10717]: false -#10763 := [lemma #10762]: #217 -#4100 := (or #4540 #1492 #4534) -#4086 := [def-axiom]: #4100 -#19860 := [unit-resolution #4086 #10763]: #19826 -#19861 := [unit-resolution #19860 #19829]: #4534 -#4109 := (or #4531 #4525) -#4093 := [def-axiom]: #4109 -#19854 := [unit-resolution #4093 #19861]: #4525 -#4106 := (or #4528 #2284 #4522) -#4107 := [def-axiom]: #4106 -#19851 := [unit-resolution #4107 #19854 #19815]: #4522 -#4101 := (or #4519 #4513) -#4103 := [def-axiom]: #4101 -#19863 := [unit-resolution #4103 #19851]: #4513 -#4123 := (or #4516 #3453 #4510) -#4110 := [def-axiom]: #4123 -#19864 := [unit-resolution #4110 #19863]: #4513 -#19859 := [unit-resolution #19864 #19217]: #3453 -#4134 := (or #3448 #4133) -#4135 := [def-axiom]: #4134 -#19869 := [unit-resolution #4135 #19859]: #4133 -#4148 := (or #3448 #2304) -#3989 := [def-axiom]: #4148 -#19866 := [unit-resolution #3989 #19859]: #2304 -#3990 := (or #3448 #2307) -#3991 := [def-axiom]: #3990 -#19868 := [unit-resolution #3991 #19859]: #2307 -#17736 := (or #3433 #2896 #2306) -#12004 := [hypothesis]: #4133 -#6675 := (uf_1 uf_22 ?x68!16) -#6676 := (uf_10 #6675) -#6701 := (+ #2894 #6676) -#6702 := (+ #188 #6701) -#16997 := (<= #6702 0::int) -#6705 := (= #6702 0::int) -#6642 := (uf_4 uf_14 ?x68!16) -#6659 := (* -1::int #6642) -#6694 := (+ #6659 #6676) -#6695 := (+ #188 #6694) -#6696 := (>= #6695 0::int) -#6680 := (* -1::int #6676) -#6684 := (+ uf_9 #6680) -#6685 := (<= #6684 0::int) -#6731 := (or #6685 #6696) -#6734 := (not #6731) -#6728 := (= #2300 #6642) -#14098 := (not #6728) -#6660 := (+ #2300 #6659) -#17022 := (>= #6660 0::int) -#14117 := (not #17022) -#6472 := (+ #188 #6659) -#6473 := (<= #6472 0::int) -#6496 := (uf_6 uf_15 ?x68!16) -#6497 := (= uf_8 #6496) -#16679 := (not #6497) -#13671 := (= ?x68!16 #9695) -#13592 := (ite #13671 #3895 #6497) -#15564 := (not #13592) -#13670 := (uf_6 #10323 ?x68!16) -#13649 := (= uf_8 #13670) -#13820 := (iff #13592 #13649) -#14101 := (or #4987 #13820) -#13645 := (ite #13671 #4958 #6497) -#13647 := (= #13670 uf_8) -#13648 := (iff #13647 #13645) -#15296 := (or #4987 #13648) -#15178 := (iff #15296 #14101) -#15561 := (iff #14101 #14101) -#15556 := [rewrite]: #15561 -#13826 := (iff #13648 #13820) -#13663 := (iff #13649 #13592) -#13819 := (iff #13663 #13820) -#13825 := [rewrite]: #13819 -#13664 := (iff #13648 #13663) -#13638 := (iff #13645 #13592) -#13662 := [monotonicity #4971]: #13638 -#13655 := (iff #13647 #13649) -#13661 := [rewrite]: #13655 -#13665 := [monotonicity #13661 #13662]: #13664 -#13828 := [trans #13665 #13825]: #13826 -#15560 := [monotonicity #13828]: #15178 -#15558 := [trans #15560 #15556]: #15178 -#15177 := [quant-inst]: #15296 -#15563 := [mp #15177 #15558]: #14101 -#17427 := [unit-resolution #15563 #4222]: #13820 -#16690 := (not #13649) -#17349 := (iff #2307 #16690) -#17657 := (iff #2306 #13649) -#17654 := (iff #13649 #2306) -#17353 := (= #13670 #2305) -#17653 := [monotonicity #13583]: #17353 -#17655 := [monotonicity #17653]: #17654 -#17300 := [symm #17655]: #17657 -#17434 := [monotonicity #17300]: #17349 -#17656 := [hypothesis]: #2307 -#17463 := [mp #17656 #17434]: #16690 -#16689 := (not #13820) -#16795 := (or #16689 #15564 #13649) -#16793 := [def-axiom]: #16795 -#17402 := [unit-resolution #16793 #17463 #17427]: #15564 -#15565 := (not #13671) -#17466 := (or #13592 #15565) -#15618 := (or #13592 #15565 #3924) -#15814 := [def-axiom]: #15618 -#17660 := [unit-resolution #15814 #7677]: #17466 -#17661 := [unit-resolution #17660 #17402]: #15565 -#16681 := (or #13592 #13671 #16679) -#16685 := [def-axiom]: #16681 -#17658 := [unit-resolution #16685 #17661 #17402]: #16679 -#6530 := (or #6473 #6497) -#17091 := (or #4423 #6473 #6497) -#6493 := (+ #6642 #1455) -#6494 := (>= #6493 0::int) -#6495 := (or #6497 #6494) -#17092 := (or #4423 #6495) -#16354 := (iff #17092 #17091) -#17099 := (or #4423 #6530) -#16352 := (iff #17099 #17091) -#16353 := [rewrite]: #16352 -#16351 := (iff #17092 #17099) -#6533 := (iff #6495 #6530) -#6527 := (or #6497 #6473) -#6531 := (iff #6527 #6530) -#6532 := [rewrite]: #6531 -#6528 := (iff #6495 #6527) -#6525 := (iff #6494 #6473) -#6467 := (+ #1455 #6642) -#6469 := (>= #6467 0::int) -#6474 := (iff #6469 #6473) -#6524 := [rewrite]: #6474 -#6470 := (iff #6494 #6469) -#6468 := (= #6493 #6467) -#6466 := [rewrite]: #6468 -#6471 := [monotonicity #6466]: #6470 -#6526 := [trans #6471 #6524]: #6525 -#6529 := [monotonicity #6526]: #6528 -#6534 := [trans #6529 #6532]: #6533 -#17076 := [monotonicity #6534]: #16351 -#16356 := [trans #17076 #16353]: #16354 -#17101 := [quant-inst]: #17092 -#16358 := [mp #17101 #16356]: #17091 -#17669 := [unit-resolution #16358 #17666]: #6530 -#17659 := [unit-resolution #17669 #17658]: #6473 -#6393 := (+ #2298 #4781) -#18006 := (<= #6393 0::int) -#17296 := (= #2298 #4740) -#6449 := (= ?x67!17 uf_22) -#14077 := (= ?x67!17 #9695) -#6439 := (uf_6 uf_15 ?x67!17) -#6440 := (= uf_8 #6439) -#14085 := (ite #14077 #3895 #6440) -#14079 := (uf_6 #10323 ?x67!17) -#14082 := (= uf_8 #14079) -#14088 := (iff #14082 #14085) -#16842 := (or #4987 #14088) -#14078 := (ite #14077 #4958 #6440) -#14080 := (= #14079 uf_8) -#14081 := (iff #14080 #14078) -#16843 := (or #4987 #14081) -#16827 := (iff #16843 #16842) -#16829 := (iff #16842 #16842) -#16830 := [rewrite]: #16829 -#14089 := (iff #14081 #14088) -#14086 := (iff #14078 #14085) -#14087 := [monotonicity #4971]: #14086 -#14083 := (iff #14080 #14082) -#14084 := [rewrite]: #14083 -#14090 := [monotonicity #14084 #14087]: #14089 -#16828 := [monotonicity #14090]: #16827 -#16825 := [trans #16828 #16830]: #16827 -#16822 := [quant-inst]: #16843 -#16780 := [mp #16822 #16825]: #16842 -#17670 := [unit-resolution #16780 #4222]: #14088 -#17684 := (= #2303 #14079) -#17672 := (= #14079 #2303) -#17688 := [monotonicity #13583]: #17672 -#17680 := [symm #17688]: #17684 -#17671 := [hypothesis]: #2304 -#17705 := [trans #17671 #17680]: #14082 -#16844 := (not #14082) -#16848 := (not #14088) -#16851 := (or #16848 #16844 #14085) -#16852 := [def-axiom]: #16851 -#17703 := [unit-resolution #16852 #17705 #17670]: #14085 -#16816 := (not #6440) -#6405 := (uf_4 uf_14 ?x67!17) -#17321 := (+ #6405 #9707) -#17316 := (<= #17321 0::int) -#14110 := (not #17316) -#14118 := (not #6473) -#17620 := (or #14110 #2896 #13671 #14118) -#17021 := (not #6685) -#5574 := (* -1::int #6405) -#5674 := (+ #2298 #5574) -#5698 := (<= #5674 0::int) -#16850 := (or #4449 #5698) -#5667 := (+ #6405 #2299) -#5668 := (>= #5667 0::int) -#16871 := (or #4449 #5668) -#16875 := (iff #16871 #16850) -#16878 := (iff #16850 #16850) -#16872 := [rewrite]: #16878 -#5701 := (iff #5668 #5698) -#5669 := (+ #2299 #6405) -#5671 := (>= #5669 0::int) -#5699 := (iff #5671 #5698) -#5700 := [rewrite]: #5699 -#5672 := (iff #5668 #5671) -#5664 := (= #5667 #5669) -#5670 := [rewrite]: #5664 -#5673 := [monotonicity #5670]: #5672 -#5702 := [trans #5673 #5700]: #5701 -#16877 := [monotonicity #5702]: #16875 -#16845 := [trans #16877 #16872]: #16875 -#16831 := [quant-inst]: #16871 -#16858 := [mp #16831 #16845]: #16850 -#12150 := [unit-resolution #16858 #10788]: #5698 -#14116 := [hypothesis]: #6473 -#14115 := [hypothesis]: #17316 -#14119 := (not #10581) -#14113 := (not #5698) -#14120 := (or #14117 #14118 #14113 #2896 #14110 #14119) -#14127 := [th-lemma]: #14120 -#14128 := [unit-resolution #14127 #14115 #14116 #12150 #12004 #12925]: #14117 -#14167 := (or #14098 #17022) -#14099 := [th-lemma]: #14167 -#14170 := [unit-resolution #14099 #14128]: #14098 -#6737 := (or #6728 #6734) -#17003 := (or #4433 #6728 #6734) -#6681 := (+ #1455 #6680) -#6682 := (+ #6642 #6681) -#6683 := (<= #6682 0::int) -#6724 := (or #6685 #6683) -#6725 := (not #6724) -#6726 := (= #6642 #2300) -#6727 := (or #6726 #6725) -#17006 := (or #4433 #6727) -#17015 := (iff #17006 #17003) -#16994 := (or #4433 #6737) -#17013 := (iff #16994 #17003) -#17012 := [rewrite]: #17013 -#17007 := (iff #17006 #16994) -#6738 := (iff #6727 #6737) -#6735 := (iff #6725 #6734) -#6732 := (iff #6724 #6731) -#6699 := (iff #6683 #6696) -#6687 := (+ #6642 #6680) -#6688 := (+ #1455 #6687) -#6691 := (<= #6688 0::int) -#6697 := (iff #6691 #6696) -#6698 := [rewrite]: #6697 -#6692 := (iff #6683 #6691) -#6689 := (= #6682 #6688) -#6690 := [rewrite]: #6689 -#6693 := [monotonicity #6690]: #6692 -#6700 := [trans #6693 #6698]: #6699 -#6733 := [monotonicity #6700]: #6732 -#6736 := [monotonicity #6733]: #6735 -#6729 := (iff #6726 #6728) -#6730 := [rewrite]: #6729 -#6739 := [monotonicity #6730 #6736]: #6738 -#17008 := [monotonicity #6739]: #17007 -#17016 := [trans #17008 #17012]: #17015 -#17005 := [quant-inst]: #17006 -#17017 := [mp #17005 #17016]: #17003 -#14323 := [unit-resolution #17017 #10727]: #6737 -#14462 := [unit-resolution #14323 #14170]: #6734 -#17024 := (or #6731 #17021) -#17014 := [def-axiom]: #17024 -#14131 := [unit-resolution #17014 #14462]: #17021 -#17023 := (not #6696) -#17025 := (or #6731 #17023) -#17026 := [def-axiom]: #17025 -#14463 := [unit-resolution #17026 #14462]: #17023 -#6708 := (or #6685 #6696 #6705) -#16986 := (or #4441 #6685 #6696 #6705) -#6677 := (+ #6676 #2894) -#6678 := (+ #188 #6677) -#6679 := (= #6678 0::int) -#6686 := (or #6685 #6683 #6679) -#16942 := (or #4441 #6686) -#16967 := (iff #16942 #16986) -#16939 := (or #4441 #6708) -#16965 := (iff #16939 #16986) -#16966 := [rewrite]: #16965 -#16958 := (iff #16942 #16939) -#6709 := (iff #6686 #6708) -#6706 := (iff #6679 #6705) -#6703 := (= #6678 #6702) -#6704 := [rewrite]: #6703 -#6707 := [monotonicity #6704]: #6706 -#6710 := [monotonicity #6700 #6707]: #6709 -#16981 := [monotonicity #6710]: #16958 -#16968 := [trans #16981 #16966]: #16967 -#16943 := [quant-inst]: #16942 -#16957 := [mp #16943 #16968]: #16986 -#14091 := [unit-resolution #16957 #10785]: #6708 -#15021 := [unit-resolution #14091 #14463 #14131]: #6705 -#15016 := (not #6705) -#15301 := (or #15016 #16997) -#16191 := [th-lemma]: #15301 -#16210 := [unit-resolution #16191 #15021]: #16997 -#17555 := (uf_1 #9695 ?x68!16) -#17556 := (uf_10 #17555) -#11882 := (* -1::int #17556) -#11971 := (+ #6676 #11882) -#12082 := (>= #11971 0::int) -#12012 := (= #6676 #17556) -#16213 := (= #17556 #6676) -#15939 := (= #17555 #6675) -#16211 := [monotonicity #10708]: #15939 -#16214 := [monotonicity #16211]: #16213 -#16541 := [symm #16214]: #12012 -#16559 := (not #12012) -#16520 := (or #16559 #12082) -#16540 := [th-lemma]: #16520 -#16560 := [unit-resolution #16540 #16541]: #12082 -#17561 := (<= #17556 0::int) -#17562 := (not #17561) -#16607 := [hypothesis]: #15565 -#17589 := (or #10302 #13671 #17562) -#17574 := (= #9695 ?x68!16) -#17571 := (or #17574 #17562) -#17590 := (or #10302 #17571) -#11861 := (iff #17590 #17589) -#17587 := (or #13671 #17562) -#17606 := (or #10302 #17587) -#17600 := (iff #17606 #17589) -#17601 := [rewrite]: #17600 -#17593 := (iff #17590 #17606) -#17569 := (iff #17571 #17587) -#17585 := (iff #17574 #13671) -#17586 := [rewrite]: #17585 -#17588 := [monotonicity #17586]: #17569 -#17599 := [monotonicity #17588]: #17593 -#17598 := [trans #17599 #17601]: #11861 -#17583 := [quant-inst]: #17590 -#11866 := [mp #17583 #17598]: #17589 -#17621 := [unit-resolution #11866 #4249 #16607]: #17562 -#17166 := [th-lemma #12150 #12004 #14115 #12925 #17621 #16560 #16210]: false -#17622 := [lemma #17166]: #17620 -#17722 := [unit-resolution #17622 #17661 #12004 #17659]: #14110 -#18133 := (or #16816 #17316) -#18126 := [hypothesis]: #14110 -#18130 := [hypothesis]: #6440 -#18002 := (or #4328 #16816 #9686 #17316) -#17278 := (+ #9701 #5574) -#17277 := (>= #17278 0::int) -#17276 := (or #9686 #16816 #17277) -#18007 := (or #4328 #17276) -#17984 := (iff #18007 #18002) -#17337 := (or #16816 #9686 #17316) -#17982 := (or #4328 #17337) -#17989 := (iff #17982 #18002) -#17990 := [rewrite]: #17989 -#17983 := (iff #18007 #17982) -#17345 := (iff #17276 #17337) -#17333 := (or #9686 #16816 #17316) -#17346 := (iff #17333 #17337) -#17341 := [rewrite]: #17346 -#17336 := (iff #17276 #17333) -#17332 := (iff #17277 #17316) -#17303 := (+ #5574 #9701) -#17297 := (>= #17303 0::int) -#17320 := (iff #17297 #17316) -#17326 := [rewrite]: #17320 -#17306 := (iff #17277 #17297) -#17304 := (= #17278 #17303) -#17305 := [rewrite]: #17304 -#17317 := [monotonicity #17305]: #17306 -#17325 := [trans #17317 #17326]: #17332 -#17324 := [monotonicity #17325]: #17336 -#17347 := [trans #17324 #17341]: #17345 -#17971 := [monotonicity #17347]: #17983 -#17988 := [trans #17971 #17990]: #17984 -#17980 := [quant-inst]: #18007 -#17991 := [mp #17980 #17988]: #18002 -#18132 := [unit-resolution #17991 #13967 #13969 #18130 #18126]: false -#18134 := [lemma #18132]: #18133 -#17723 := [unit-resolution #18134 #17722]: #16816 -#16801 := (not #14085) -#16815 := (or #16801 #14077 #6440) -#16832 := [def-axiom]: #16815 -#17724 := [unit-resolution #16832 #17723 #17703]: #14077 -#17720 := [trans #17724 #10708]: #6449 -#17697 := [monotonicity #17720]: #17296 -#17700 := (not #17296) -#17701 := (or #17700 #18006) -#17693 := [th-lemma]: #17701 -#17673 := [unit-resolution #17693 #17697]: #18006 -#18044 := (not #18006) -#18045 := (or #18044 #14117 #2896 #14118) -#18043 := [hypothesis]: #18006 -#18041 := [hypothesis]: #17022 -#18042 := [th-lemma #18041 #12004 #14116 #9311 #18043]: false -#18046 := [lemma #18042]: #18045 -#17699 := [unit-resolution #18046 #17673 #12004 #17659]: #14117 -#17676 := [unit-resolution #14099 #17699]: #14098 -#17677 := [unit-resolution #14323 #17676]: #6734 -#17164 := (or #6731 #6705) -#17180 := [hypothesis]: #15016 -#17209 := [hypothesis]: #6734 -#17210 := [unit-resolution #17014 #17209]: #17021 -#17207 := [unit-resolution #17026 #17209]: #17023 -#17212 := [unit-resolution #14091 #17207 #17210 #17180]: false -#17211 := [lemma #17212]: #17164 -#17678 := [unit-resolution #17211 #17677]: #6705 -#17681 := [unit-resolution #16191 #17678]: #16997 -#17675 := [unit-resolution #11866 #4249 #17661]: #17562 -#17735 := [th-lemma #17673 #9311 #17675 #16560 #17681 #12004]: false -#17721 := [lemma #17735]: #17736 -[unit-resolution #17721 #19868 #19866 #19869]: false +#7850 := [unit-resolution #3970 #7839]: #4399 +#3982 := (or #4402 #2168 #4396) +#3976 := [def-axiom]: #3982 +#7851 := [unit-resolution #3976 #7850 #7816]: #2168 +#8005 := (not #7578) +#8006 := (or #7967 #2167 #8005) +#7964 := [hypothesis]: #7578 +#7965 := [hypothesis]: #7959 +#8460 := [hypothesis]: #2168 +#7966 := [th-lemma #8460 #7965 #7964]: false +#8007 := [lemma #7966]: #8006 +#7852 := [unit-resolution #8007 #7851 #7815]: #7967 +#7885 := (or #8448 #7959) +#7881 := [hypothesis]: #7967 +#7882 := [hypothesis]: #6927 +#7886 := [th-lemma]: #7885 +#7887 := [unit-resolution #7886 #7882 #7881]: false +#7888 := [lemma #7887]: #7885 +#7879 := [unit-resolution #7888 #7852]: #8448 +#7448 := (or #6927 #7445) +#7451 := (or #4307 #6927 #7445) +#7296 := (+ #1357 #7295) +#7297 := (+ #6919 #7296) +#7298 := (<= #7297 0::int) +#7393 := (or #7350 #7298) +#7394 := (not #7393) +#6920 := (= #6919 #2166) +#7395 := (or #6920 #7394) +#7452 := (or #4307 #7395) +#7432 := (iff #7452 #7451) +#7454 := (or #4307 #7448) +#7457 := (iff #7454 #7451) +#7431 := [rewrite]: #7457 +#7455 := (iff #7452 #7454) +#7449 := (iff #7395 #7448) +#7446 := (iff #7394 #7445) +#7443 := (iff #7393 #7440) +#7396 := (or #7350 #7340) +#7441 := (iff #7396 #7440) +#7442 := [rewrite]: #7441 +#7397 := (iff #7393 #7396) +#7337 := (iff #7298 #7340) +#7352 := (+ #6919 #7295) +#7353 := (+ #1357 #7352) +#7356 := (<= #7353 0::int) +#7341 := (iff #7356 #7340) +#7342 := [rewrite]: #7341 +#7357 := (iff #7298 #7356) +#7354 := (= #7297 #7353) +#7355 := [rewrite]: #7354 +#7358 := [monotonicity #7355]: #7357 +#7343 := [trans #7358 #7342]: #7337 +#7439 := [monotonicity #7343]: #7397 +#7444 := [trans #7439 #7442]: #7443 +#7447 := [monotonicity #7444]: #7446 +#6928 := (iff #6920 #6927) +#6932 := [rewrite]: #6928 +#7450 := [monotonicity #6932 #7447]: #7449 +#7456 := [monotonicity #7450]: #7455 +#7430 := [trans #7456 #7431]: #7432 +#7453 := [quant-inst]: #7452 +#7433 := [mp #7453 #7430]: #7451 +#8450 := [unit-resolution #7433 #6843]: #7448 +#7883 := [unit-resolution #8450 #7879]: #7445 +#7435 := (or #7440 #7434) +#7436 := [def-axiom]: #7435 +#7878 := [unit-resolution #7436 #7883]: #7434 +#7437 := (not #7350) +#7438 := (or #7440 #7437) +#7500 := [def-axiom]: #7438 +#7884 := [unit-resolution #7500 #7883]: #7437 +#7402 := (or #7340 #7350 #7362) +#7407 := (or #4315 #7340 #7350 #7362) +#7293 := (+ #7292 #4945) +#7294 := (+ #182 #7293) +#7289 := (= #7294 0::int) +#7351 := (or #7350 #7298 #7289) +#7408 := (or #4315 #7351) +#7415 := (iff #7408 #7407) +#7410 := (or #4315 #7402) +#7413 := (iff #7410 #7407) +#7414 := [rewrite]: #7413 +#7411 := (iff #7408 #7410) +#7405 := (iff #7351 #7402) +#7399 := (or #7350 #7340 #7362) +#7403 := (iff #7399 #7402) +#7404 := [rewrite]: #7403 +#7400 := (iff #7351 #7399) +#7363 := (iff #7289 #7362) +#7346 := (= #7294 #7345) +#7347 := [rewrite]: #7346 +#7398 := [monotonicity #7347]: #7363 +#7401 := [monotonicity #7343 #7398]: #7400 +#7406 := [trans #7401 #7404]: #7405 +#7412 := [monotonicity #7406]: #7411 +#7390 := [trans #7412 #7414]: #7415 +#7409 := [quant-inst]: #7408 +#7391 := [mp #7409 #7390]: #7407 +#8454 := [unit-resolution #7391 #6847]: #7402 +#7713 := [unit-resolution #8454 #7884 #7878]: #7362 +#8456 := (not #7362) +#8457 := (or #8456 #7389) +#8458 := [th-lemma]: #8457 +#7714 := [unit-resolution #8458 #7713]: #7389 +#7790 := (>= #7292 0::int) +#7701 := (<= #7292 0::int) +#7702 := (not #7701) +#7603 := (= uf_22 ?x65!15) +#7464 := (not #7603) +#7505 := (up_6 uf_15 ?x65!15) +#7628 := (or #7505 #7603) +#4543 := (not #7628) +#7584 := (up_6 #188 ?x65!15) +#7611 := (iff #7584 #7628) +#7612 := (or #6627 #7611) +#7597 := (= ?x65!15 uf_22) +#7598 := (ite #7597 #3770 #7505) +#7599 := (iff #7584 #7598) +#7607 := (or #6627 #7599) +#7614 := (iff #7607 #7612) +#7467 := (iff #7612 #7612) +#7468 := [rewrite]: #7467 +#7627 := (iff #7599 #7611) +#7609 := (iff #7598 #7628) +#7606 := (ite #7603 true #7505) +#7608 := (iff #7606 #7628) +#7586 := [rewrite]: #7608 +#7602 := (iff #7598 #7606) +#7604 := (iff #7597 #7603) +#7605 := [rewrite]: #7604 +#7620 := [monotonicity #7605 #3762]: #7602 +#7610 := [trans #7620 #7586]: #7609 +#7585 := [monotonicity #7610]: #7627 +#7615 := [monotonicity #7585]: #7614 +#7460 := [trans #7615 #7468]: #7614 +#7613 := [quant-inst]: #7607 +#7461 := [mp #7613 #7460]: #7612 +#7705 := [unit-resolution #7461 #4096]: #7611 +#7575 := (not #7584) +#4948 := (up_6 uf_23 ?x65!15) +#4949 := (not #4948) +#7912 := (iff #4949 #7575) +#7910 := (iff #4948 #7584) +#7908 := (iff #7584 #4948) +#7909 := [monotonicity #7203]: #7908 +#7911 := [symm #7909]: #7910 +#7907 := [monotonicity #7911]: #7912 +#6933 := (or #4949 #6927) +#6943 := (or #4332 #4949 #6927) +#6921 := (or #4949 #6920) +#6944 := (or #4332 #6921) +#7042 := (iff #6944 #6943) +#7039 := (or #4332 #6933) +#7036 := (iff #7039 #6943) +#7037 := [rewrite]: #7036 +#7040 := (iff #6944 #7039) +#6934 := (iff #6921 #6933) +#6935 := [monotonicity #6932]: #6934 +#7041 := [monotonicity #6935]: #7040 +#7043 := [trans #7041 #7037]: #7042 +#7038 := [quant-inst]: #6944 +#7044 := [mp #7038 #7043]: #6943 +#7700 := [unit-resolution #7044 #7832]: #6933 +#7880 := [unit-resolution #7700 #7879]: #4949 +#7913 := [mp #7880 #7907]: #7575 +#7471 := (not #7611) +#7574 := (or #7471 #7584 #4543) +#3825 := [def-axiom]: #7574 +#7914 := [unit-resolution #3825 #7913 #7705]: #4543 +#7465 := (or #7628 #7464) +#7466 := [def-axiom]: #7465 +#7915 := [unit-resolution #7466 #7914]: #7464 +#7703 := (or #7603 #7702) +#7750 := (or #7140 #7603 #7702) +#7754 := (or #7140 #7703) +#7757 := (iff #7754 #7750) +#7758 := [rewrite]: #7757 +#7756 := [quant-inst]: #7754 +#7759 := [mp #7756 #7758]: #7750 +#7916 := [unit-resolution #7759 #4123]: #7703 +#7917 := [unit-resolution #7916 #7915]: #7702 +#7661 := (or #7790 #7701) +#7662 := [th-lemma]: #7661 +#7711 := [unit-resolution #7662 #7917]: #7790 +#7712 := [th-lemma #7711 #7851 #7714 #7811]: false +#7918 := [lemma #7712]: #7840 +#11066 := [unit-resolution #7918 #10914 #10462 #9067 #10469 #10124]: #11065 +#11067 := [unit-resolution #11066 #10919]: #4396 +#3987 := (or #4393 #4387) +#3988 := [def-axiom]: #3987 +#27286 := [unit-resolution #3988 #11067]: #4387 +#3986 := (or #4390 #3329 #4384) +#3978 := [def-axiom]: #3986 +#27289 := [unit-resolution #3978 #27286]: #4387 +#27290 := [unit-resolution #27289 #13940]: #4384 +#3900 := (or #4381 #4375) +#3901 := [def-axiom]: #3900 +#27291 := [unit-resolution #3901 #27290]: #4375 +#27292 := (or #4378 #4372) +#7000 := (uf_1 uf_22 ?x71!19) +#7001 := (uf_10 #7000) +#6954 := (uf_4 uf_14 ?x71!19) +#6984 := (* -1::int #6954) +#7019 := (+ #6984 #7001) +#7020 := (+ #182 #7019) +#7021 := (>= #7020 0::int) +#18941 := (not #7021) +#7005 := (* -1::int #7001) +#19226 := (+ #2212 #7005) +#19230 := (>= #19226 0::int) +#19225 := (= #2212 #7001) +#19092 := (= #2211 #7000) +#5993 := (= ?x72!18 uf_22) +#15489 := (= ?x72!18 #10571) +#5992 := (up_6 uf_15 ?x72!18) +#6705 := (not #5992) +#5963 := (uf_4 uf_14 ?x72!18) +#7080 := (+ #5963 #6984) +#7081 := (+ #2212 #7080) +#7082 := (>= #7081 0::int) +#19649 := (not #7082) +#6985 := (+ #2207 #6984) +#6986 := (<= #6985 0::int) +#18752 := (or #4323 #6986) +#6976 := (+ #6954 #2208) +#6977 := (>= #6976 0::int) +#18750 := (or #4323 #6977) +#18782 := (iff #18750 #18752) +#18807 := (iff #18752 #18752) +#18838 := [rewrite]: #18807 +#6989 := (iff #6977 #6986) +#6978 := (+ #2208 #6954) +#6981 := (>= #6978 0::int) +#6987 := (iff #6981 #6986) +#6988 := [rewrite]: #6987 +#6982 := (iff #6977 #6981) +#6979 := (= #6976 #6978) +#6980 := [rewrite]: #6979 +#6983 := [monotonicity #6980]: #6982 +#6990 := [trans #6983 #6988]: #6989 +#18837 := [monotonicity #6990]: #18782 +#18839 := [trans #18837 #18838]: #18782 +#18781 := [quant-inst]: #18750 +#18834 := [mp #18781 #18839]: #18752 +#19630 := [unit-resolution #18834 #10924]: #6986 +#3844 := (not #2799) +#19636 := [hypothesis]: #3375 +#3845 := (or #3370 #3844) +#3998 := [def-axiom]: #3845 +#19637 := [unit-resolution #3998 #19636]: #3844 +#6055 := (* -1::int #5963) +#6056 := (+ #2209 #6055) +#17904 := (>= #6056 0::int) +#5968 := (= #2209 #5963) +#4013 := (or #3370 #2219) +#3842 := [def-axiom]: #4013 +#19638 := [unit-resolution #3842 #19636]: #2219 +#10920 := [unit-resolution #3965 #10919]: #4327 +#16950 := (or #4332 #3355 #5968) +#5964 := (= #5963 #2209) +#5967 := (or #3355 #5964) +#16945 := (or #4332 #5967) +#17123 := (iff #16945 #16950) +#5971 := (or #3355 #5968) +#16952 := (or #4332 #5971) +#16954 := (iff #16952 #16950) +#16815 := [rewrite]: #16954 +#16953 := (iff #16945 #16952) +#5972 := (iff #5967 #5971) +#5969 := (iff #5964 #5968) +#5970 := [rewrite]: #5969 +#5973 := [monotonicity #5970]: #5972 +#16949 := [monotonicity #5973]: #16953 +#17124 := [trans #16949 #16815]: #17123 +#16951 := [quant-inst]: #16945 +#17131 := [mp #16951 #17124]: #16950 +#19604 := [unit-resolution #17131 #10920 #19638]: #5968 +#19640 := (not #5968) +#19647 := (or #19640 #17904) +#19648 := [th-lemma]: #19647 +#19646 := [unit-resolution #19648 #19604]: #17904 +#19668 := (not #6986) +#19667 := (not #17904) +#19669 := (or #19649 #19667 #19668 #2799) +#19674 := [th-lemma]: #19669 +#19675 := [unit-resolution #19674 #19646 #19637 #19630]: #19649 +#19673 := (or #6705 #7082) +#4012 := (or #3370 #2218) +#4006 := [def-axiom]: #4012 +#19664 := [unit-resolution #4006 #19636]: #2218 +#18969 := (or #4193 #2217 #6705 #7082) +#7083 := (or #6705 #2217 #7082) +#18974 := (or #4193 #7083) +#18875 := (iff #18974 #18969) +#7084 := (or #2217 #6705 #7082) +#18976 := (or #4193 #7084) +#18944 := (iff #18976 #18969) +#18874 := [rewrite]: #18944 +#18977 := (iff #18974 #18976) +#7085 := (iff #7083 #7084) +#7086 := [rewrite]: #7085 +#18943 := [monotonicity #7086]: #18977 +#18873 := [trans #18943 #18874]: #18875 +#18975 := [quant-inst]: #18974 +#18942 := [mp #18975 #18873]: #18969 +#18871 := [unit-resolution #18942 #10131 #19664]: #19673 +#19651 := [unit-resolution #18871 #19675]: #6705 +#15504 := (or #5992 #15489) +#15499 := (up_6 #11533 ?x72!18) +#15509 := (iff #15499 #15504) +#17157 := (or #6627 #15509) +#15490 := (ite #15489 #3770 #5992) +#15500 := (iff #15499 #15490) +#17130 := (or #6627 #15500) +#17160 := (iff #17130 #17157) +#17164 := (iff #17157 #17157) +#17122 := [rewrite]: #17164 +#15510 := (iff #15500 #15509) +#15507 := (iff #15490 #15504) +#15501 := (ite #15489 true #5992) +#15505 := (iff #15501 #15504) +#15506 := [rewrite]: #15505 +#15502 := (iff #15490 #15501) +#15503 := [monotonicity #3762]: #15502 +#15508 := [trans #15503 #15506]: #15507 +#15511 := [monotonicity #15508]: #15510 +#17158 := [monotonicity #15511]: #17160 +#17165 := [trans #17158 #17122]: #17160 +#17159 := [quant-inst]: #17130 +#17166 := [mp #17159 #17165]: #17157 +#19656 := [unit-resolution #17166 #4096]: #15509 +#19655 := (iff #2219 #15499) +#19650 := (iff #15499 #2219) +#19657 := [monotonicity #13613]: #19650 +#19665 := [symm #19657]: #19655 +#19666 := [mp #19638 #19665]: #15499 +#17221 := (not #15499) +#17223 := (not #15509) +#17226 := (or #17223 #17221 #15504) +#17227 := [def-axiom]: #17226 +#19660 := [unit-resolution #17227 #19666 #19656]: #15504 +#17201 := (not #15504) +#17222 := (or #17201 #5992 #15489) +#17217 := [def-axiom]: #17222 +#19635 := [unit-resolution #17217 #19660 #19651]: #15489 +#19038 := [trans #19635 #13436]: #5993 +#19241 := [monotonicity #19038]: #19092 +#19355 := [monotonicity #19241]: #19225 +#19410 := (not #19225) +#18872 := (or #19410 #19230) +#19416 := [th-lemma]: #18872 +#19513 := [unit-resolution #19416 #19355]: #19230 +#7165 := (uf_2 #2211) +#7171 := (uf_4 uf_14 #7165) +#7185 := (* -1::int #7171) +#7186 := (+ #182 #7185) +#7187 := (<= #7186 0::int) +#19218 := (= #182 #7171) +#19098 := (= #7171 #182) +#19114 := (= #7165 uf_22) +#19115 := (= #7165 #10571) +#19577 := (= #7165 ?x72!18) +#7166 := (= ?x72!18 #7165) +#19027 := (or #8504 #7166) +#19028 := [quant-inst]: #19027 +#19514 := [unit-resolution #19028 #4082]: #7166 +#19578 := [symm #19514]: #19577 +#19116 := [trans #19578 #19635]: #19115 +#19205 := [trans #19116 #13436]: #19114 +#19206 := [monotonicity #19205]: #19098 +#19213 := [symm #19206]: #19218 +#19214 := (not #19218) +#19207 := (or #19214 #7187) +#19215 := [th-lemma]: #19207 +#19583 := [unit-resolution #19215 #19213]: #7187 +#19048 := (+ #5963 #7185) +#19031 := (>= #19048 0::int) +#19047 := (= #5963 #7171) +#19592 := [monotonicity #19514]: #19047 +#19803 := (not #19047) +#19804 := (or #19803 #19031) +#19805 := [th-lemma]: #19804 +#19806 := [unit-resolution #19805 #19592]: #19031 +#19929 := (not #19230) +#19808 := (not #19031) +#19807 := (not #7187) +#19809 := (or #18941 #19668 #2799 #19807 #19808 #19667 #19929) +#19810 := [th-lemma]: #19809 +#19811 := [unit-resolution #19810 #19630 #19646 #19637 #19806 #19583 #19513]: #18941 +#7009 := (+ uf_9 #7005) +#7010 := (<= #7009 0::int) +#18939 := (not #7010) +#19930 := (or #18939 #19929 #2217) +#19925 := [hypothesis]: #2218 +#19926 := [hypothesis]: #7010 +#19927 := [hypothesis]: #19230 +#19928 := [th-lemma #19927 #19926 #19925]: false +#19931 := [lemma #19928]: #19930 +#19837 := [unit-resolution #19931 #19513 #19664]: #18939 +#7026 := (+ #2208 #7001) +#7027 := (+ #182 #7026) +#7030 := (= #7027 0::int) +#19841 := (not #7030) +#18789 := (>= #7027 0::int) +#19838 := (not #18789) +#19839 := (or #19838 #2799 #19807 #19808 #19667 #19929) +#19835 := [th-lemma]: #19839 +#19836 := [unit-resolution #19835 #19646 #19637 #19806 #19583 #19513]: #19838 +#19842 := (or #19841 #18789) +#19843 := [th-lemma]: #19842 +#19840 := [unit-resolution #19843 #19836]: #19841 +#7033 := (or #7010 #7021 #7030) +#18840 := (or #4315 #7010 #7021 #7030) +#7002 := (+ #7001 #2208) +#7003 := (+ #182 #7002) +#7004 := (= #7003 0::int) +#7006 := (+ #1357 #7005) +#7007 := (+ #6954 #7006) +#7008 := (<= #7007 0::int) +#7011 := (or #7010 #7008 #7004) +#18841 := (or #4315 #7011) +#18786 := (iff #18841 #18840) +#18900 := (or #4315 #7033) +#18780 := (iff #18900 #18840) +#18785 := [rewrite]: #18780 +#18784 := (iff #18841 #18900) +#7034 := (iff #7011 #7033) +#7031 := (iff #7004 #7030) +#7028 := (= #7003 #7027) +#7029 := [rewrite]: #7028 +#7032 := [monotonicity #7029]: #7031 +#7024 := (iff #7008 #7021) +#7012 := (+ #6954 #7005) +#7013 := (+ #1357 #7012) +#7016 := (<= #7013 0::int) +#7022 := (iff #7016 #7021) +#7023 := [rewrite]: #7022 +#7017 := (iff #7008 #7016) +#7014 := (= #7007 #7013) +#7015 := [rewrite]: #7014 +#7018 := [monotonicity #7015]: #7017 +#7025 := [trans #7018 #7023]: #7024 +#7035 := [monotonicity #7025 #7032]: #7034 +#18779 := [monotonicity #7035]: #18784 +#18783 := [trans #18779 #18785]: #18786 +#18905 := [quant-inst]: #18841 +#18787 := [mp #18905 #18783]: #18840 +#19844 := [unit-resolution #18787 #10914]: #7033 +#19845 := [unit-resolution #19844 #19840 #19837 #19811]: false +#19871 := [lemma #19845]: #3370 +#3897 := (or #4378 #3375 #4372) +#3898 := [def-axiom]: #3897 +#27293 := [unit-resolution #3898 #19871]: #27292 +#27294 := [unit-resolution #27293 #27291]: #4372 +#4002 := (or #4369 #2249) +#4000 := [def-axiom]: #4002 +#27295 := [unit-resolution #4000 #27294]: #2249 +#5681 := (+ #2236 #5680) +#18550 := (>= #5681 0::int) +#5655 := (= #2236 #5650) +#3846 := (or #4369 #4361) +#3994 := [def-axiom]: #3846 +#27296 := [unit-resolution #3994 #27294]: #4361 +#18659 := (or #5655 #4366) +#15149 := (uf_10 #15148) +#15175 := (* -1::int #15149) +#11814 := (uf_24 #10571) +#11812 := (* -1::int #11814) +#15176 := (+ #11812 #15175) +#15177 := (+ #2236 #15176) +#15830 := (>= #15177 0::int) +#5696 := (uf_1 uf_22 ?x75!20) +#5697 := (uf_10 #5696) +#15921 := (+ #5697 #15175) +#15923 := (>= #15921 0::int) +#15920 := (= #5697 #15149) +#18516 := (= #15149 #5697) +#18514 := (= #15148 #5696) +#18515 := [monotonicity #13436]: #18514 +#18517 := [monotonicity #18515]: #18516 +#18518 := [symm #18517]: #15920 +#18513 := (not #15920) +#18519 := (or #18513 #15923) +#18520 := [th-lemma]: #18519 +#18521 := [unit-resolution #18520 #18518]: #15923 +#11766 := (+ #4615 #11812) +#8751 := (>= #11766 0::int) +#8693 := (= #4615 #11814) +#18522 := (= #11814 #4615) +#18523 := [monotonicity #13436]: #18522 +#18530 := [symm #18523]: #8693 +#18531 := (not #8693) +#18529 := (or #18531 #8751) +#18532 := [th-lemma]: #18529 +#18533 := [unit-resolution #18532 #18530]: #8751 +#5722 := (+ #2237 #5697) +#5723 := (+ #182 #5722) +#15649 := (<= #5723 0::int) +#5726 := (= #5723 0::int) +#5701 := (* -1::int #5697) +#5705 := (+ uf_9 #5701) +#5706 := (<= #5705 0::int) +#15666 := (not #5706) +#5715 := (+ #5680 #5697) +#5716 := (+ #182 #5715) +#5717 := (>= #5716 0::int) +#5748 := (or #5706 #5717) +#5751 := (not #5748) +#18607 := (not #5655) +#18534 := [hypothesis]: #18607 +#5754 := (or #5655 #5751) +#15653 := (or #4307 #5655 #5751) +#5702 := (+ #1357 #5701) +#5703 := (+ #5650 #5702) +#5704 := (<= #5703 0::int) +#5745 := (or #5706 #5704) +#5746 := (not #5745) +#5651 := (= #5650 #2236) +#5747 := (or #5651 #5746) +#15654 := (or #4307 #5747) +#15663 := (iff #15654 #15653) +#15656 := (or #4307 #5754) +#15659 := (iff #15656 #15653) +#15660 := [rewrite]: #15659 +#15657 := (iff #15654 #15656) +#5755 := (iff #5747 #5754) +#5752 := (iff #5746 #5751) +#5749 := (iff #5745 #5748) +#5720 := (iff #5704 #5717) +#5708 := (+ #5650 #5701) +#5709 := (+ #1357 #5708) +#5712 := (<= #5709 0::int) +#5718 := (iff #5712 #5717) +#5719 := [rewrite]: #5718 +#5713 := (iff #5704 #5712) +#5710 := (= #5703 #5709) +#5711 := [rewrite]: #5710 +#5714 := [monotonicity #5711]: #5713 +#5721 := [trans #5714 #5719]: #5720 +#5750 := [monotonicity #5721]: #5749 +#5753 := [monotonicity #5750]: #5752 +#5656 := (iff #5651 #5655) +#5657 := [rewrite]: #5656 +#5756 := [monotonicity #5657 #5753]: #5755 +#15658 := [monotonicity #5756]: #15657 +#15664 := [trans #15658 #15660]: #15663 +#15655 := [quant-inst]: #15654 +#15665 := [mp #15655 #15664]: #15653 +#18538 := [unit-resolution #15665 #10462]: #5754 +#18539 := [unit-resolution #18538 #18534]: #5751 +#15667 := (or #5748 #15666) +#15697 := [def-axiom]: #15667 +#18542 := [unit-resolution #15697 #18539]: #15666 +#15813 := (not #5717) +#15814 := (or #5748 #15813) +#15815 := [def-axiom]: #15814 +#18543 := [unit-resolution #15815 #18539]: #15813 +#5729 := (or #5706 #5717 #5726) +#15441 := (or #4315 #5706 #5717 #5726) +#5698 := (+ #5697 #2237) +#5699 := (+ #182 #5698) +#5700 := (= #5699 0::int) +#5707 := (or #5706 #5704 #5700) +#15442 := (or #4315 #5707) +#15615 := (iff #15442 #15441) +#15466 := (or #4315 #5729) +#15594 := (iff #15466 #15441) +#15595 := [rewrite]: #15594 +#15497 := (iff #15442 #15466) +#5730 := (iff #5707 #5729) +#5727 := (iff #5700 #5726) +#5724 := (= #5699 #5723) +#5725 := [rewrite]: #5724 +#5728 := [monotonicity #5725]: #5727 +#5731 := [monotonicity #5721 #5728]: #5730 +#15498 := [monotonicity #5731]: #15497 +#15638 := [trans #15498 #15595]: #15615 +#15465 := [quant-inst]: #15442 +#15639 := [mp #15465 #15638]: #15441 +#18579 := [unit-resolution #15639 #10914]: #5729 +#18580 := [unit-resolution #18579 #18543 #18542]: #5726 +#18581 := (not #5726) +#18582 := (or #18581 #15649) +#18583 := [th-lemma]: #18582 +#18584 := [unit-resolution #18583 #18580]: #15649 +#18588 := (not #15923) +#18587 := (not #4858) +#18586 := (not #8751) +#18585 := (not #15649) +#18589 := (or #15830 #18585 #18586 #18587 #18588) +#18590 := [th-lemma]: #18589 +#18591 := [unit-resolution #18590 #18584 #18533 #10925 #18521]: #15830 +#15829 := (<= #15177 0::int) +#15922 := (<= #15921 0::int) +#18592 := (or #18513 #15922) +#18593 := [th-lemma]: #18592 +#18594 := [unit-resolution #18593 #18518]: #15922 +#9376 := (<= #4857 0::int) +#4616 := (= #182 #4615) +#4865 := (up_6 uf_23 uf_22) +#3772 := (up_6 #188 uf_22) +#10910 := (iff #3772 #4865) +#10908 := (iff #4865 #3772) +#10909 := [monotonicity #10469]: #10908 +#10911 := [symm #10909]: #10910 +#46 := (:var 0 T5) +#45 := (:var 2 T4) +#47 := (uf_7 #45 #10 #46) +#4105 := (pattern #47) +#335 := (= uf_8 #46) +#48 := (up_6 #47 #10) +#339 := (iff #48 #335) +#4106 := (forall (vars (?x17 T4) (?x18 T2) (?x19 T5)) (:pat #4105) #339) +#342 := (forall (vars (?x17 T4) (?x18 T2) (?x19 T5)) #339) +#4109 := (iff #342 #4106) +#4107 := (iff #339 #339) +#4108 := [refl]: #4107 +#4110 := [quant-intro #4108]: #4109 +#1739 := (~ #342 #342) +#1777 := (~ #339 #339) +#1778 := [refl]: #1777 +#1740 := [nnf-pos #1778]: #1739 +#49 := (= #46 uf_8) +#50 := (iff #48 #49) +#51 := (forall (vars (?x17 T4) (?x18 T2) (?x19 T5)) #50) +#343 := (iff #51 #342) +#340 := (iff #50 #339) +#337 := (iff #49 #335) +#338 := [rewrite]: #337 +#341 := [monotonicity #338]: #340 +#344 := [quant-intro #341]: #343 +#334 := [asserted]: #51 +#347 := [mp #334 #344]: #342 +#1779 := [mp~ #347 #1740]: #342 +#4111 := [mp #1779 #4110]: #4106 +#8930 := (not #4106) +#8932 := (or #8930 #3772) +#3771 := (iff #3772 #3770) +#8926 := (or #8930 #3771) +#8933 := (iff #8926 #8932) +#8935 := (iff #8932 #8932) +#8936 := [rewrite]: #8935 +#3757 := (iff #3771 #3772) +#3763 := (iff #3772 true) +#3765 := (iff #3763 #3772) +#3766 := [rewrite]: #3765 +#3764 := (iff #3771 #3763) +#3756 := [monotonicity #3762]: #3764 +#3767 := [trans #3756 #3766]: #3757 +#8934 := [monotonicity #3767]: #8933 +#8931 := [trans #8934 #8936]: #8933 +#8927 := [quant-inst]: #8926 +#9499 := [mp #8927 #8931]: #8932 +#10907 := [unit-resolution #9499 #4111]: #3772 +#10912 := [mp #10907 #10911]: #4865 +#4866 := (not #4865) +#4870 := (or #4616 #4866) +#10280 := (or #4332 #4616 #4866) +#4869 := (or #4866 #4616) +#10281 := (or #4332 #4869) +#10339 := (iff #10281 #10280) +#10282 := (or #4332 #4870) +#10337 := (iff #10282 #10280) +#10338 := [rewrite]: #10337 +#10283 := (iff #10281 #10282) +#4871 := (iff #4869 #4870) +#4872 := [rewrite]: #4871 +#10336 := [monotonicity #4872]: #10283 +#10341 := [trans #10336 #10338]: #10339 +#10279 := [quant-inst]: #10281 +#10342 := [mp #10279 #10341]: #10280 +#10921 := [unit-resolution #10342 #10920]: #4870 +#10922 := [unit-resolution #10921 #10912]: #4616 +#9432 := (not #4616) +#9433 := (or #9432 #9376) +#9434 := [th-lemma]: #9433 +#10923 := [unit-resolution #9434 #10922]: #9376 +#11761 := (<= #11766 0::int) +#18595 := (or #18531 #11761) +#18596 := [th-lemma]: #18595 +#18597 := [unit-resolution #18596 #18530]: #11761 +#15650 := (>= #5723 0::int) +#18571 := (or #18581 #15650) +#18572 := [th-lemma]: #18571 +#18570 := [unit-resolution #18572 #18580]: #15650 +#18576 := (not #15922) +#18575 := (not #9376) +#18574 := (not #11761) +#18573 := (not #15650) +#18577 := (or #15829 #18573 #18574 #18575 #18576) +#18578 := [th-lemma]: #18577 +#17865 := [unit-resolution #18578 #18570 #18597 #10923 #18594]: #15829 +#15178 := (= #15177 0::int) +#15183 := (not #15178) +#15085 := (+ #2236 #11812) +#15163 := (<= #15085 0::int) +#18640 := (not #15163) +#17249 := (uf_3 #5917) +#18036 := (uf_1 #10571 #17249) +#18037 := (uf_10 #18036) +#18039 := (* -1::int #18037) +#18208 := (+ #5697 #18039) +#18250 := (>= #18208 0::int) +#18205 := (= #5697 #18037) +#18060 := (= #18037 #5697) +#18054 := (= #18036 #5696) +#17915 := (= #17249 ?x75!20) +#17250 := (= ?x75!20 #17249) +#17253 := (or #7845 #17250) +#17254 := [quant-inst]: #17253 +#17866 := [unit-resolution #17254 #4076]: #17250 +#17916 := [symm #17866]: #17915 +#18059 := [monotonicity #13436 #17916]: #18054 +#18063 := [monotonicity #18059]: #18060 +#18064 := [symm #18063]: #18205 +#18065 := (not #18205) +#18068 := (or #18065 #18250) +#18126 := [th-lemma]: #18068 +#18127 := [unit-resolution #18126 #18064]: #18250 +#18137 := (<= #18037 0::int) +#18138 := (not #18137) +#18556 := (= #10571 #17249) +#17987 := (not #18556) +#18551 := (up_6 uf_15 #17249) +#18562 := (or #18551 #18556) +#18015 := (not #18562) +#18554 := (up_6 #11533 #17249) +#18567 := (iff #18554 #18562) +#17962 := (or #6627 #18567) +#18552 := (= #17249 #10571) +#18553 := (ite #18552 #3770 #18551) +#18555 := (iff #18554 #18553) +#17963 := (or #6627 #18555) +#17965 := (iff #17963 #17962) +#17981 := (iff #17962 #17962) +#17982 := [rewrite]: #17981 +#18568 := (iff #18555 #18567) +#18565 := (iff #18553 #18562) +#18559 := (ite #18556 true #18551) +#18563 := (iff #18559 #18562) +#18564 := [rewrite]: #18563 +#18560 := (iff #18553 #18559) +#18557 := (iff #18552 #18556) +#18558 := [rewrite]: #18557 +#18561 := [monotonicity #18558 #3762]: #18560 +#18566 := [trans #18561 #18564]: #18565 +#18569 := [monotonicity #18566]: #18568 +#17980 := [monotonicity #18569]: #17965 +#17983 := [trans #17980 #17982]: #17965 +#17964 := [quant-inst]: #17963 +#17984 := [mp #17964 #17983]: #17962 +#18426 := [unit-resolution #17984 #4096]: #18567 +#18020 := (not #18554) +#5037 := (up_6 uf_23 ?x75!20) +#5038 := (not #5037) +#18541 := (iff #5038 #18020) +#18441 := (iff #5037 #18554) +#18430 := (iff #18554 #5037) +#18431 := [monotonicity #13613 #17916]: #18430 +#18540 := [symm #18431]: #18441 +#18544 := [monotonicity #18540]: #18541 +#5658 := (or #5038 #5655) +#15006 := (or #4332 #5038 #5655) +#5654 := (or #5038 #5651) +#15007 := (or #4332 #5654) +#15427 := (iff #15007 #15006) +#15242 := (or #4332 #5658) +#15290 := (iff #15242 #15006) +#15291 := [rewrite]: #15290 +#15251 := (iff #15007 #15242) +#5659 := (iff #5654 #5658) +#5660 := [monotonicity #5657]: #5659 +#15252 := [monotonicity #5660]: #15251 +#15428 := [trans #15252 #15291]: #15427 +#15241 := [quant-inst]: #15007 +#15429 := [mp #15241 #15428]: #15006 +#18605 := [unit-resolution #15429 #10920]: #5658 +#18427 := [unit-resolution #18605 #18534]: #5038 +#18545 := [mp #18427 #18544]: #18020 +#18018 := (not #18567) +#18019 := (or #18018 #18554 #18015) +#18014 := [def-axiom]: #18019 +#18546 := [unit-resolution #18014 #18545 #18426]: #18015 +#17988 := (or #18562 #17987) +#17989 := [def-axiom]: #17988 +#18549 := [unit-resolution #17989 #18546]: #17987 +#18153 := (or #18138 #18556) +#18155 := (or #7140 #18138 #18556) +#18152 := (or #18556 #18138) +#18156 := (or #7140 #18152) +#18170 := (iff #18156 #18155) +#18162 := (or #7140 #18153) +#18164 := (iff #18162 #18155) +#18165 := [rewrite]: #18164 +#18160 := (iff #18156 #18162) +#18151 := (iff #18152 #18153) +#18154 := [rewrite]: #18151 +#18163 := [monotonicity #18154]: #18160 +#18171 := [trans #18163 #18165]: #18170 +#18161 := [quant-inst]: #18156 +#18169 := [mp #18161 #18171]: #18155 +#18638 := [unit-resolution #18169 #4123]: #18153 +#18639 := [unit-resolution #18638 #18549]: #18138 +#18641 := (not #18250) +#18642 := (or #18640 #18585 #18586 #18587 #18137 #18641) +#18643 := [th-lemma]: #18642 +#18644 := [unit-resolution #18643 #18584 #18533 #10925 #18639 #18127]: #18640 +#18651 := (or #15163 #15183) +#11817 := (up_6 uf_23 #10571) +#18647 := (iff #3772 #11817) +#18645 := (iff #11817 #3772) +#18646 := [monotonicity #10469 #13436]: #18645 +#18648 := [symm #18646]: #18647 +#18649 := [mp #10907 #18648]: #11817 +#18650 := [hypothesis]: #4361 +#11821 := (not #11817) +#15818 := (or #4366 #11821 #15163 #15183) +#15150 := (+ #2237 #15149) +#15151 := (+ #11814 #15150) +#15152 := (= #15151 0::int) +#15153 := (not #15152) +#15154 := (+ #11814 #2237) +#15155 := (>= #15154 0::int) +#15156 := (or #11821 #15155 #15153) +#15819 := (or #4366 #15156) +#15826 := (iff #15819 #15818) +#15186 := (or #11821 #15163 #15183) +#15821 := (or #4366 #15186) +#15824 := (iff #15821 #15818) +#15825 := [rewrite]: #15824 +#15822 := (iff #15819 #15821) +#15187 := (iff #15156 #15186) +#15184 := (iff #15153 #15183) +#15181 := (iff #15152 #15178) +#15168 := (+ #11814 #15149) +#15169 := (+ #2237 #15168) +#15172 := (= #15169 0::int) +#15179 := (iff #15172 #15178) +#15180 := [rewrite]: #15179 +#15173 := (iff #15152 #15172) +#15170 := (= #15151 #15169) +#15171 := [rewrite]: #15170 +#15174 := [monotonicity #15171]: #15173 +#15182 := [trans #15174 #15180]: #15181 +#15185 := [monotonicity #15182]: #15184 +#15166 := (iff #15155 #15163) +#15157 := (+ #2237 #11814) +#15160 := (>= #15157 0::int) +#15164 := (iff #15160 #15163) +#15165 := [rewrite]: #15164 +#15161 := (iff #15155 #15160) +#15158 := (= #15154 #15157) +#15159 := [rewrite]: #15158 +#15162 := [monotonicity #15159]: #15161 +#15167 := [trans #15162 #15165]: #15166 +#15188 := [monotonicity #15167 #15185]: #15187 +#15823 := [monotonicity #15188]: #15822 +#15827 := [trans #15823 #15825]: #15826 +#15820 := [quant-inst]: #15819 +#15828 := [mp #15820 #15827]: #15818 +#18652 := [unit-resolution #15828 #18650 #18649]: #18651 +#18653 := [unit-resolution #18652 #18644]: #15183 +#18655 := (not #15830) +#18654 := (not #15829) +#18656 := (or #15178 #18654 #18655) +#18657 := [th-lemma]: #18656 +#18658 := [unit-resolution #18657 #18653 #17865 #18591]: false +#18660 := [lemma #18658]: #18659 +#27297 := [unit-resolution #18660 #27296]: #5655 +#18608 := (or #18607 #18550) +#18609 := [th-lemma]: #18608 +#27298 := [unit-resolution #18609 #27297]: #18550 +#22669 := (not #18550) +#22675 := (or #22674 #22669 #2248) +#22670 := [hypothesis]: #2249 +#22671 := [hypothesis]: #18550 +#22672 := [hypothesis]: #5929 +#22673 := [th-lemma #22672 #22671 #22670]: false +#22676 := [lemma #22673]: #22675 +#27299 := [unit-resolution #22676 #27298 #27295]: #22674 +#4003 := (or #4369 #2813) +#3885 := [def-axiom]: #4003 +#27300 := [unit-resolution #3885 #27294]: #2813 +#16375 := (or #4218 #2810 #5929 #5934) +#5926 := (or #5925 #5923 #5916) +#5927 := (not #5926) +#5930 := (or #2250 #5929 #5927) +#16398 := (or #4218 #5930) +#16553 := (iff #16398 #16375) +#5937 := (or #2810 #5929 #5934) +#16114 := (or #4218 #5937) +#16503 := (iff #16114 #16375) +#16391 := [rewrite]: #16503 +#16534 := (iff #16398 #16114) +#5938 := (iff #5930 #5937) +#5935 := (iff #5927 #5934) +#5932 := (iff #5926 #5931) +#5933 := [rewrite]: #5932 +#5936 := [monotonicity #5933]: #5935 +#5939 := [monotonicity #2812 #5936]: #5938 +#16550 := [monotonicity #5939]: #16534 +#16502 := [trans #16550 #16391]: #16553 +#16396 := [quant-inst]: #16398 +#16533 := [mp #16396 #16502]: #16375 +#27301 := [unit-resolution #16533 #10531 #27300 #27299]: #5934 +#16782 := (or #5931 #5924) +#16643 := [def-axiom]: #16782 +#27302 := [unit-resolution #16643 #27301]: #5924 +#27310 := [mp #27302 #27309]: #25982 +#25983 := (not #25982) +#27187 := (or #27170 #25983) +#27188 := [def-axiom]: #27187 +#27311 := [unit-resolution #27188 #27310]: #27170 +#27192 := (not #27170) +#27196 := (or #27195 #27162 #27192) +#27197 := [def-axiom]: #27196 +#27313 := [unit-resolution #27197 #27311]: #27312 +#27314 := [unit-resolution #27313 #27285]: #27162 +#27323 := [unit-resolution #27314 #27322]: false +#27324 := [lemma #27323]: #16889 +#16887 := (uf_24 #5912) +#16906 := (* -1::int #16887) +#17099 := (+ #2236 #16906) +#17100 := (<= #17099 0::int) +#22648 := (not #17100) +#15991 := (not #5916) +#16678 := (or #5931 #15991) +#16501 := [def-axiom]: #16678 +#22641 := [unit-resolution #16501 #27301]: #15991 +#16907 := (+ #5913 #16906) +#16908 := (>= #16907 0::int) +#16989 := (or #4323 #16908) +#16027 := [quant-inst]: #16989 +#22647 := [unit-resolution #16027 #10924]: #16908 +#22633 := (not #16908) +#23110 := (or #22648 #5916 #22669 #22633) +#22643 := [th-lemma]: #23110 +#18144 := [unit-resolution #22643 #27298 #22647 #22641]: #22648 +#17066 := (+ #5919 #16906) +#17067 := (+ #2236 #17066) +#17110 := (= #17067 0::int) +#20033 := (>= #17067 0::int) +#9449 := (>= #5921 0::int) +#16586 := (or #5931 #5922) +#16707 := [def-axiom]: #16586 +#16131 := [unit-resolution #16707 #27301]: #5922 +#21450 := (or #5923 #9449) +#21454 := [th-lemma]: #21450 +#23041 := [unit-resolution #21454 #16131]: #9449 +#23063 := (not #9449) +#23122 := (or #20033 #23063 #22669 #22633) +#23065 := [th-lemma]: #23122 +#23044 := [unit-resolution #23065 #23041 #22647 #27298]: #20033 +#17068 := (<= #17067 0::int) +#22638 := (<= #16907 0::int) +#16888 := (= #5913 #16887) +#16892 := (or #16888 #16890) +#17827 := (or #4332 #16888 #16890) +#16891 := (or #16890 #16888) +#18121 := (or #4332 #16891) +#16026 := (iff #18121 #17827) +#18876 := (or #4332 #16892) +#19063 := (iff #18876 #17827) +#19159 := [rewrite]: #19063 +#19153 := (iff #18121 #18876) +#16893 := (iff #16891 #16892) +#16894 := [rewrite]: #16893 +#17533 := [monotonicity #16894]: #19153 +#19171 := [trans #17533 #19159]: #16026 +#19129 := [quant-inst]: #18121 +#17856 := [mp #19129 #19171]: #17827 +#18906 := [unit-resolution #17856 #10920]: #16892 +#23139 := [unit-resolution #18906 #27324]: #16888 +#23113 := (not #16888) +#23108 := (or #23113 #22638) +#23136 := [th-lemma]: #23108 +#23104 := [unit-resolution #23136 #23139]: #22638 +#5682 := (<= #5681 0::int) +#20530 := (not #5682) +#20531 := [hypothesis]: #20530 +#20442 := (or #4323 #5682) +#5672 := (+ #5650 #2237) +#5673 := (>= #5672 0::int) +#20459 := (or #4323 #5673) +#20466 := (iff #20459 #20442) +#20473 := (iff #20442 #20442) +#20476 := [rewrite]: #20473 +#5685 := (iff #5673 #5682) +#5674 := (+ #2237 #5650) +#5677 := (>= #5674 0::int) +#5683 := (iff #5677 #5682) +#5684 := [rewrite]: #5683 +#5678 := (iff #5673 #5677) +#5675 := (= #5672 #5674) +#5676 := [rewrite]: #5675 +#5679 := [monotonicity #5676]: #5678 +#5686 := [trans #5679 #5684]: #5685 +#20472 := [monotonicity #5686]: #20466 +#20477 := [trans #20472 #20476]: #20466 +#20465 := [quant-inst]: #20459 +#20527 := [mp #20465 #20477]: #20442 +#20526 := [unit-resolution #20527 #10924 #20531]: false +#20532 := [lemma #20526]: #5682 +#15989 := (<= #5921 0::int) +#23166 := (or #5923 #15989) +#23129 := [th-lemma]: #23166 +#23111 := [unit-resolution #23129 #16131]: #15989 +#23142 := (not #22638) +#23025 := (not #15989) +#23268 := (or #17068 #23025 #20530 #23142) +#23150 := [th-lemma]: #23268 +#23164 := [unit-resolution #23150 #23111 #20532 #23104]: #17068 +#23270 := (not #20033) +#23269 := (not #17068) +#23148 := (or #17110 #23269 #23270) +#23146 := [th-lemma]: #23148 +#23271 := [unit-resolution #23146 #23164 #23044]: #17110 +#17115 := (not #17110) +#17118 := (or #16890 #17100 #17115) +#19968 := (or #4366 #16890 #17100 #17115) +#17087 := (+ #2237 #5918) +#17088 := (+ #16887 #17087) +#17089 := (= #17088 0::int) +#17090 := (not #17089) +#17051 := (+ #16887 #2237) +#17091 := (>= #17051 0::int) +#17092 := (or #16890 #17091 #17090) +#19969 := (or #4366 #17092) +#19939 := (iff #19969 #19968) +#19962 := (or #4366 #17118) +#20004 := (iff #19962 #19968) +#19963 := [rewrite]: #20004 +#20227 := (iff #19969 #19962) +#17119 := (iff #17092 #17118) +#17116 := (iff #17090 #17115) +#17113 := (iff #17089 #17110) +#17059 := (+ #5918 #16887) +#17060 := (+ #2237 #17059) +#17107 := (= #17060 0::int) +#17111 := (iff #17107 #17110) +#17112 := [rewrite]: #17111 +#17108 := (iff #17089 #17107) +#17105 := (= #17088 #17060) +#17106 := [rewrite]: #17105 +#17109 := [monotonicity #17106]: #17108 +#17114 := [trans #17109 #17112]: #17113 +#17117 := [monotonicity #17114]: #17116 +#17103 := (iff #17091 #17100) +#17093 := (+ #2237 #16887) +#17096 := (>= #17093 0::int) +#17101 := (iff #17096 #17100) +#17102 := [rewrite]: #17101 +#17097 := (iff #17091 #17096) +#17094 := (= #17051 #17093) +#17095 := [rewrite]: #17094 +#17098 := [monotonicity #17095]: #17097 +#17104 := [trans #17098 #17102]: #17103 +#17120 := [monotonicity #17104 #17117]: #17119 +#20114 := [monotonicity #17120]: #20227 +#20212 := [trans #20114 #19963]: #19939 +#19967 := [quant-inst]: #19969 +#20005 := [mp #19967 #20212]: #19968 +#23170 := [unit-resolution #20005 #27296]: #17118 +[unit-resolution #23170 #23271 #18144 #27324]: false unsat diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/Boogie/Tools/boogie_loader.ML --- a/src/HOL/Boogie/Tools/boogie_loader.ML Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/Boogie/Tools/boogie_loader.ML Mon Dec 07 11:18:44 2009 +0100 @@ -12,10 +12,10 @@ structure Boogie_Loader: BOOGIE_LOADER = struct -fun log verbose text args thy = - if verbose - then (Pretty.writeln (Pretty.big_list text (map Pretty.str args)); thy) - else thy +fun log verbose text args x = + if verbose andalso not (null args) + then (Pretty.writeln (Pretty.big_list text (map Pretty.str args)); x) + else x val isabelle_name = let @@ -35,7 +35,7 @@ fun label_name line col = "L_" ^ string_of_int line ^ "_" ^ string_of_int col -datatype attribute_value = StringValue of string | TermValue of Term.term +datatype attribute_value = StringValue of string | TermValue of term @@ -51,27 +51,28 @@ else NONE end + fun log_new bname name = bname ^ " (as " ^ name ^ ")" + fun log_ex bname name = "[" ^ bname ^ " has already been declared as " ^ + name ^ "]" + fun declare (name, arity) thy = let val isa_name = isabelle_name name in (case lookup_type_name thy isa_name arity of - SOME type_name => ((type_name, false), thy) + SOME type_name => (((name, type_name), log_ex name type_name), thy) | NONE => let val args = Name.variant_list [] (replicate arity "'") val (T, thy') = ObjectLogic.typedecl (Binding.name isa_name, args, NoSyn) thy val type_name = fst (Term.dest_Type T) - in ((type_name, true), thy') end) + in (((name, type_name), log_new name type_name), thy') end) end - - fun type_names ((name, _), (new_name, new)) = - if new then SOME (new_name ^ " (was " ^ name ^ ")") else NONE in fun declare_types verbose tys = - fold_map declare tys #-> (fn tds => - log verbose "Declared types:" (map_filter type_names (tys ~~ tds)) #> - rpair (Symtab.make (map fst tys ~~ map fst tds))) + fold_map declare tys #>> split_list #-> (fn (tds, logs) => + log verbose "Declared types:" logs #> + rpair (Symtab.make tds)) end @@ -146,23 +147,26 @@ else NONE end - fun declare (name, ((Ts, T), atts)) thy = - let val isa_name = isabelle_name name and U = Ts ---> T - in - (case lookup_const thy isa_name U of - SOME t => (((name, t), false), thy) - | NONE => - (case maybe_builtin U atts of - SOME t => (((name, t), false), thy) - | NONE => - thy - |> Sign.declare_const ((Binding.name isa_name, U), - mk_syntax name (length Ts)) - |> apfst (rpair true o pair name))) - end + fun log_term thy t = Syntax.string_of_term_global thy t + fun log_new thy name t = name ^ " (as " ^ log_term thy t ^ ")" + fun log_ex thy name t = "[" ^ name ^ " has already been declared as " ^ + log_term thy t ^ "]" + fun log_builtin thy name t = "[" ^ name ^ " has been identified as " ^ + log_term thy t ^ "]" - fun new_names ((name, t), new) = - if new then SOME (fst (Term.dest_Const t) ^ " (as " ^ name ^ ")") else NONE + fun declare' name isa_name T arity atts thy = + (case lookup_const thy isa_name T of + SOME t => (((name, t), log_ex thy name t), thy) + | NONE => + (case maybe_builtin T atts of + SOME t => (((name, t), log_builtin thy name t), thy) + | NONE => + thy + |> Sign.declare_const ((Binding.name isa_name, T), + mk_syntax name arity) + |> (fn (t, thy') => (((name, t), log_new thy' name t), thy')))) + fun declare (name, ((Ts, T), atts)) = + declare' name (isabelle_name name) (Ts ---> T) (length Ts) atts fun uniques fns fds = let @@ -182,9 +186,9 @@ end in fun declare_functions verbose fns = - fold_map declare fns #-> (fn fds => - log verbose "Declared constants:" (map_filter new_names fds) #> - rpair (` (uniques fns) (Symtab.make (map fst fds)))) + fold_map declare fns #>> split_list #-> (fn (fds, logs) => + log verbose "Loaded constants:" logs #> + rpair (` (uniques fns) (Symtab.make fds))) end @@ -194,17 +198,41 @@ let fun mk_name idx = "axiom_" ^ string_of_int (idx + 1) in map_index (fn (idx, t) => (mk_name idx, HOLogic.mk_Trueprop t)) axs end - fun only_new_boogie_axioms thy = - let val baxs = map Thm.prop_of (Boogie_Axioms.get (ProofContext.init thy)) - in filter_out (member (op aconv) baxs o snd) end + datatype kind = Unused of thm | Used of thm | New of string + + fun mark (name, t) axs = + (case Termtab.lookup axs t of + SOME (Unused thm) => Termtab.update (t, Used thm) axs + | NONE => Termtab.update (t, New name) axs + | SOME _ => axs) + + val sort_fst_str = sort (prod_ord fast_string_ord (K EQUAL)) + fun split_list_kind thy axs = + let + fun split (_, Used thm) (used, new) = (thm :: used, new) + | split (t, New name) (used, new) = (used, (name, t) :: new) + | split (t, Unused thm) (used, new) = + (warning (Pretty.str_of + (Pretty.big_list "This background axiom has not been loaded:" + [Display.pretty_thm_global thy thm])); + (used, new)) + in apsnd sort_fst_str (fold split axs ([], [])) end + + fun mark_axioms thy axs = + Boogie_Axioms.get (ProofContext.init thy) + |> Termtab.make o map (fn thm => (Thm.prop_of thm, Unused thm)) + |> fold mark axs + |> split_list_kind thy o Termtab.dest in fun add_axioms verbose axs thy = - let val axs' = only_new_boogie_axioms thy (name_axioms axs) + let val (used, new) = mark_axioms thy (name_axioms axs) in thy - |> PureThy.add_axioms (map (rpair [] o apfst Binding.name) axs') + |> PureThy.add_axioms (map (rpair [] o apfst Binding.name) new) |-> Context.theory_map o fold Boogie_Axioms.add_thm - |> log verbose "The following axioms were added:" (map fst axs') + |> log verbose "The following axioms were added:" (map fst new) + |> (fn thy' => log verbose "The following axioms already existed:" + (map (Display.string_of_thm_global thy') used) thy') |> Context.theory_map (fn context => fold Split_VC_SMT_Rules.add_thm (Boogie_Axioms.get (Context.proof_of context)) context) end diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/Complete_Lattice.thy --- a/src/HOL/Complete_Lattice.thy Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/Complete_Lattice.thy Mon Dec 07 11:18:44 2009 +0100 @@ -7,10 +7,10 @@ begin notation - less_eq (infix "\" 50) and + less_eq (infix "\" 50) and less (infix "\" 50) and - inf (infixl "\" 70) and - sup (infixl "\" 65) and + inf (infixl "\" 70) and + sup (infixl "\" 65) and top ("\") and bot ("\") @@ -25,7 +25,7 @@ subsection {* Abstract complete lattices *} -class complete_lattice = lattice + bot + top + Inf + Sup + +class complete_lattice = bounded_lattice + Inf + Sup + assumes Inf_lower: "x \ A \ \A \ x" and Inf_greatest: "(\x. x \ A \ z \ x) \ z \ \A" assumes Sup_upper: "x \ A \ x \ \A" @@ -34,22 +34,23 @@ lemma dual_complete_lattice: "complete_lattice Sup Inf (op \) (op >) (op \) (op \) \ \" - by (auto intro!: complete_lattice.intro dual_lattice - bot.intro top.intro dual_preorder, unfold_locales) - (fact bot_least top_greatest - Sup_upper Sup_least Inf_lower Inf_greatest)+ + by (auto intro!: complete_lattice.intro dual_bounded_lattice) + (unfold_locales, (fact bot_least top_greatest + Sup_upper Sup_least Inf_lower Inf_greatest)+) -lemma Inf_Sup: "\A = \{b. \a \ A. b \ a}" +lemma Inf_Sup: "\A = \{b. \a \ A. b \ a}" by (auto intro: antisym Inf_lower Inf_greatest Sup_upper Sup_least) -lemma Sup_Inf: "\A = \{b. \a \ A. a \ b}" +lemma Sup_Inf: "\A = \{b. \a \ A. a \ b}" by (auto intro: antisym Inf_lower Inf_greatest Sup_upper Sup_least) -lemma Inf_Univ: "\UNIV = \{}" - unfolding Sup_Inf by auto +lemma Inf_empty: + "\{} = \" + by (auto intro: antisym Inf_greatest) -lemma Sup_Univ: "\UNIV = \{}" - unfolding Inf_Sup by auto +lemma Sup_empty: + "\{} = \" + by (auto intro: antisym Sup_least) lemma Inf_insert: "\insert a A = a \ \A" by (auto intro: le_infI le_infI1 le_infI2 antisym Inf_greatest Inf_lower) @@ -65,37 +66,21 @@ "\{a} = a" by (auto intro: antisym Sup_upper Sup_least) -lemma Inf_insert_simp: - "\insert a A = (if A = {} then a else a \ \A)" - by (cases "A = {}") (simp_all, simp add: Inf_insert) - -lemma Sup_insert_simp: - "\insert a A = (if A = {} then a else a \ \A)" - by (cases "A = {}") (simp_all, simp add: Sup_insert) - lemma Inf_binary: "\{a, b} = a \ b" - by (auto simp add: Inf_insert_simp) + by (simp add: Inf_empty Inf_insert) lemma Sup_binary: "\{a, b} = a \ b" - by (auto simp add: Sup_insert_simp) - -lemma bot_def: - "bot = \{}" - by (auto intro: antisym Sup_least) + by (simp add: Sup_empty Sup_insert) -lemma top_def: - "top = \{}" - by (auto intro: antisym Inf_greatest) +lemma Inf_UNIV: + "\UNIV = bot" + by (simp add: Sup_Inf Sup_empty [symmetric]) -lemma sup_bot [simp]: - "x \ bot = x" - using bot_least [of x] by (simp add: sup_commute sup_absorb2) - -lemma inf_top [simp]: - "x \ top = x" - using top_greatest [of x] by (simp add: inf_commute inf_absorb2) +lemma Sup_UNIV: + "\UNIV = top" + by (simp add: Inf_Sup Inf_empty [symmetric]) definition SUPR :: "'b set \ ('b \ 'a) \ 'a" where "SUPR A f = \ (f ` A)" @@ -129,16 +114,16 @@ context complete_lattice begin -lemma le_SUPI: "i : A \ M i \ (SUP i:A. M i)" +lemma le_SUPI: "i : A \ M i \ (SUP i:A. M i)" by (auto simp add: SUPR_def intro: Sup_upper) -lemma SUP_leI: "(\i. i : A \ M i \ u) \ (SUP i:A. M i) \ u" +lemma SUP_leI: "(\i. i : A \ M i \ u) \ (SUP i:A. M i) \ u" by (auto simp add: SUPR_def intro: Sup_least) -lemma INF_leI: "i : A \ (INF i:A. M i) \ M i" +lemma INF_leI: "i : A \ (INF i:A. M i) \ M i" by (auto simp add: INFI_def intro: Inf_lower) -lemma le_INFI: "(\i. i : A \ u \ M i) \ u \ (INF i:A. M i)" +lemma le_INFI: "(\i. i : A \ u \ M i) \ u \ (INF i:A. M i)" by (auto simp add: INFI_def intro: Inf_greatest) lemma SUP_const[simp]: "A \ {} \ (SUP i:A. M) = M" diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/Finite_Set.thy --- a/src/HOL/Finite_Set.thy Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/Finite_Set.thy Mon Dec 07 11:18:44 2009 +0100 @@ -2937,37 +2937,6 @@ end -context complete_lattice -begin - -text {* - Coincidence on finite sets in complete lattices: -*} - -lemma Inf_fin_Inf: - assumes "finite A" and "A \ {}" - shows "\\<^bsub>fin\<^esub>A = Inf A" -proof - - interpret ab_semigroup_idem_mult inf - by (rule ab_semigroup_idem_mult_inf) - from assms show ?thesis - unfolding Inf_fin_def by (induct A set: finite) - (simp_all add: Inf_insert_simp) -qed - -lemma Sup_fin_Sup: - assumes "finite A" and "A \ {}" - shows "\\<^bsub>fin\<^esub>A = Sup A" -proof - - interpret ab_semigroup_idem_mult sup - by (rule ab_semigroup_idem_mult_sup) - from assms show ?thesis - unfolding Sup_fin_def by (induct A set: finite) - (simp_all add: Sup_insert_simp) -qed - -end - subsubsection {* Fold1 in linear orders with @{const min} and @{const max} *} @@ -3345,15 +3314,15 @@ proof qed auto -lemma fun_left_comm_idem_inter: - "fun_left_comm_idem op \" +lemma (in lower_semilattice) fun_left_comm_idem_inf: + "fun_left_comm_idem inf" proof -qed auto - -lemma fun_left_comm_idem_union: - "fun_left_comm_idem op \" +qed (auto simp add: inf_left_commute) + +lemma (in upper_semilattice) fun_left_comm_idem_sup: + "fun_left_comm_idem sup" proof -qed auto +qed (auto simp add: sup_left_commute) lemma union_fold_insert: assumes "finite A" @@ -3371,60 +3340,95 @@ from `finite A` show ?thesis by (induct A arbitrary: B) auto qed -lemma inter_Inter_fold_inter: +context complete_lattice +begin + +lemma inf_Inf_fold_inf: assumes "finite A" - shows "B \ Inter A = fold (op \) B A" + shows "inf B (Inf A) = fold inf B A" proof - - interpret fun_left_comm_idem "op \" by (fact fun_left_comm_idem_inter) + interpret fun_left_comm_idem inf by (fact fun_left_comm_idem_inf) from `finite A` show ?thesis by (induct A arbitrary: B) - (simp_all add: fold_fun_comm Int_commute) + (simp_all add: Inf_empty Inf_insert inf_commute fold_fun_comm) qed -lemma union_Union_fold_union: +lemma sup_Sup_fold_sup: assumes "finite A" - shows "B \ Union A = fold (op \) B A" + shows "sup B (Sup A) = fold sup B A" proof - - interpret fun_left_comm_idem "op \" by (fact fun_left_comm_idem_union) + interpret fun_left_comm_idem sup by (fact fun_left_comm_idem_sup) from `finite A` show ?thesis by (induct A arbitrary: B) - (simp_all add: fold_fun_comm Un_commute) + (simp_all add: Sup_empty Sup_insert sup_commute fold_fun_comm) qed -lemma Inter_fold_inter: +lemma Inf_fold_inf: assumes "finite A" - shows "Inter A = fold (op \) UNIV A" - using assms inter_Inter_fold_inter [of A UNIV] by simp - -lemma Union_fold_union: + shows "Inf A = fold inf top A" + using assms inf_Inf_fold_inf [of A top] by (simp add: inf_absorb2) + +lemma Sup_fold_sup: assumes "finite A" - shows "Union A = fold (op \) {} A" - using assms union_Union_fold_union [of A "{}"] by simp - -lemma inter_INTER_fold_inter: - assumes "finite A" - shows "B \ INTER A f = fold (\A. op \ (f A)) B A" (is "?inter = ?fold") -proof (rule sym) - interpret fun_left_comm_idem "op \" by (fact fun_left_comm_idem_inter) - interpret fun_left_comm_idem "\A. op \ (f A)" by (fact fun_left_comm_idem_apply) - from `finite A` show "?fold = ?inter" by (induct A arbitrary: B) auto + shows "Sup A = fold sup bot A" + using assms sup_Sup_fold_sup [of A bot] by (simp add: sup_absorb2) + +lemma Inf_fin_Inf: + assumes "finite A" and "A \ {}" + shows "\\<^bsub>fin\<^esub>A = Inf A" +proof - + interpret ab_semigroup_idem_mult inf + by (rule ab_semigroup_idem_mult_inf) + from `A \ {}` obtain b B where "A = insert b B" by auto + moreover with `finite A` have "finite B" by simp + ultimately show ?thesis + by (simp add: Inf_fin_def fold1_eq_fold_idem inf_Inf_fold_inf [symmetric]) + (simp add: Inf_fold_inf) qed -lemma union_UNION_fold_union: +lemma Sup_fin_Sup: + assumes "finite A" and "A \ {}" + shows "\\<^bsub>fin\<^esub>A = Sup A" +proof - + interpret ab_semigroup_idem_mult sup + by (rule ab_semigroup_idem_mult_sup) + from `A \ {}` obtain b B where "A = insert b B" by auto + moreover with `finite A` have "finite B" by simp + ultimately show ?thesis + by (simp add: Sup_fin_def fold1_eq_fold_idem sup_Sup_fold_sup [symmetric]) + (simp add: Sup_fold_sup) +qed + +lemma inf_INFI_fold_inf: assumes "finite A" - shows "B \ UNION A f = fold (\A. op \ (f A)) B A" (is "?union = ?fold") + shows "inf B (INFI A f) = fold (\A. inf (f A)) B A" (is "?inf = ?fold") proof (rule sym) - interpret fun_left_comm_idem "op \" by (fact fun_left_comm_idem_union) - interpret fun_left_comm_idem "\A. op \ (f A)" by (fact fun_left_comm_idem_apply) - from `finite A` show "?fold = ?union" by (induct A arbitrary: B) auto + interpret fun_left_comm_idem inf by (fact fun_left_comm_idem_inf) + interpret fun_left_comm_idem "\A. inf (f A)" by (fact fun_left_comm_idem_apply) + from `finite A` show "?fold = ?inf" + by (induct A arbitrary: B) + (simp_all add: INFI_def Inf_empty Inf_insert inf_left_commute) qed -lemma INTER_fold_inter: +lemma sup_SUPR_fold_sup: assumes "finite A" - shows "INTER A f = fold (\A. op \ (f A)) UNIV A" - using assms inter_INTER_fold_inter [of A UNIV] by simp - -lemma UNION_fold_union: + shows "sup B (SUPR A f) = fold (\A. sup (f A)) B A" (is "?sup = ?fold") +proof (rule sym) + interpret fun_left_comm_idem sup by (fact fun_left_comm_idem_sup) + interpret fun_left_comm_idem "\A. sup (f A)" by (fact fun_left_comm_idem_apply) + from `finite A` show "?fold = ?sup" + by (induct A arbitrary: B) + (simp_all add: SUPR_def Sup_empty Sup_insert sup_left_commute) +qed + +lemma INFI_fold_inf: assumes "finite A" - shows "UNION A f = fold (\A. op \ (f A)) {} A" - using assms union_UNION_fold_union [of A "{}"] by simp + shows "INFI A f = fold (\A. inf (f A)) top A" + using assms inf_INFI_fold_inf [of A top] by simp + +lemma SUPR_fold_sup: + assumes "finite A" + shows "SUPR A f = fold (\A. sup (f A)) bot A" + using assms sup_SUPR_fold_sup [of A bot] by simp end + +end diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/Lattices.thy --- a/src/HOL/Lattices.thy Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/Lattices.thy Mon Dec 07 11:18:44 2009 +0100 @@ -70,7 +70,7 @@ lemma mono_inf: fixes f :: "'a \ 'b\lower_semilattice" - shows "mono f \ f (A \ B) \ f A \ f B" + shows "mono f \ f (A \ B) \ f A \ f B" by (auto simp add: mono_def intro: Lattices.inf_greatest) end @@ -104,7 +104,7 @@ lemma mono_sup: fixes f :: "'a \ 'b\upper_semilattice" - shows "mono f \ f A \ f B \ f (A \ B)" + shows "mono f \ f A \ f B \ f (A \ B)" by (auto simp add: mono_def intro: Lattices.sup_least) end @@ -241,22 +241,22 @@ begin lemma less_supI1: - "x < a \ x < a \ b" + "x \ a \ x \ a \ b" proof - interpret dual: lower_semilattice "op \" "op >" sup by (fact dual_semilattice) - assume "x < a" - then show "x < a \ b" + assume "x \ a" + then show "x \ a \ b" by (fact dual.less_infI1) qed lemma less_supI2: - "x < b \ x < a \ b" + "x \ b \ x \ a \ b" proof - interpret dual: lower_semilattice "op \" "op >" sup by (fact dual_semilattice) - assume "x < b" - then show "x < a \ b" + assume "x \ b" + then show "x \ a \ b" by (fact dual.less_infI2) qed @@ -294,58 +294,46 @@ end -subsection {* Boolean algebras *} +subsection {* Bounded lattices and boolean algebras *} -class boolean_algebra = distrib_lattice + top + bot + minus + uminus + - assumes inf_compl_bot: "x \ - x = bot" - and sup_compl_top: "x \ - x = top" - assumes diff_eq: "x - y = x \ - y" +class bounded_lattice = lattice + top + bot begin -lemma dual_boolean_algebra: - "boolean_algebra (\x y. x \ - y) uminus (op \) (op >) (op \) (op \) top bot" - by (rule boolean_algebra.intro, rule dual_distrib_lattice) - (unfold_locales, - auto simp add: inf_compl_bot sup_compl_top diff_eq less_le_not_le) - -lemma compl_inf_bot: - "- x \ x = bot" - by (simp add: inf_commute inf_compl_bot) - -lemma compl_sup_top: - "- x \ x = top" - by (simp add: sup_commute sup_compl_top) +lemma dual_bounded_lattice: + "bounded_lattice (op \) (op >) (op \) (op \) \ \" + by (rule bounded_lattice.intro, rule dual_lattice) + (unfold_locales, auto simp add: less_le_not_le) lemma inf_bot_left [simp]: - "bot \ x = bot" + "\ \ x = \" by (rule inf_absorb1) simp lemma inf_bot_right [simp]: - "x \ bot = bot" + "x \ \ = \" by (rule inf_absorb2) simp lemma sup_top_left [simp]: - "top \ x = top" + "\ \ x = \" by (rule sup_absorb1) simp lemma sup_top_right [simp]: - "x \ top = top" + "x \ \ = \" by (rule sup_absorb2) simp lemma inf_top_left [simp]: - "top \ x = x" + "\ \ x = x" by (rule inf_absorb2) simp lemma inf_top_right [simp]: - "x \ top = x" + "x \ \ = x" by (rule inf_absorb1) simp lemma sup_bot_left [simp]: - "bot \ x = x" + "\ \ x = x" by (rule sup_absorb2) simp lemma sup_bot_right [simp]: - "x \ bot = x" + "x \ \ = x" by (rule sup_absorb1) simp lemma inf_eq_top_eq1: @@ -354,8 +342,8 @@ proof (cases "B = \") case True with assms show ?thesis by simp next - case False with top_greatest have "B < \" by (auto intro: neq_le_trans) - then have "A \ B < \" by (rule less_infI2) + case False with top_greatest have "B \ \" by (auto intro: neq_le_trans) + then have "A \ B \ \" by (rule less_infI2) with assms show ?thesis by simp qed @@ -368,8 +356,8 @@ assumes "A \ B = \" shows "A = \" proof - - interpret dual: boolean_algebra "\x y. x \ - y" uminus "op \" "op >" "op \" "op \" top bot - by (rule dual_boolean_algebra) + interpret dual: bounded_lattice "op \" "op >" "op \" "op \" \ \ + by (rule dual_bounded_lattice) from dual.inf_eq_top_eq1 assms show ?thesis . qed @@ -377,14 +365,35 @@ assumes "A \ B = \" shows "B = \" proof - - interpret dual: boolean_algebra "\x y. x \ - y" uminus "op \" "op >" "op \" "op \" top bot - by (rule dual_boolean_algebra) + interpret dual: bounded_lattice "op \" "op >" "op \" "op \" \ \ + by (rule dual_bounded_lattice) from dual.inf_eq_top_eq2 assms show ?thesis . qed +end + +class boolean_algebra = distrib_lattice + bounded_lattice + minus + uminus + + assumes inf_compl_bot: "x \ - x = \" + and sup_compl_top: "x \ - x = \" + assumes diff_eq: "x - y = x \ - y" +begin + +lemma dual_boolean_algebra: + "boolean_algebra (\x y. x \ - y) uminus (op \) (op >) (op \) (op \) \ \" + by (rule boolean_algebra.intro, rule dual_bounded_lattice, rule dual_distrib_lattice) + (unfold_locales, auto simp add: inf_compl_bot sup_compl_top diff_eq) + +lemma compl_inf_bot: + "- x \ x = \" + by (simp add: inf_commute inf_compl_bot) + +lemma compl_sup_top: + "- x \ x = \" + by (simp add: sup_commute sup_compl_top) + lemma compl_unique: - assumes "x \ y = bot" - and "x \ y = top" + assumes "x \ y = \" + and "x \ y = \" shows "- x = y" proof - have "(x \ - x) \ (- x \ y) = (x \ y) \ (- x \ y)" @@ -393,7 +402,7 @@ by (simp add: inf_commute) then have "- x \ (x \ y) = y \ (x \ - x)" by (simp add: inf_sup_distrib1) - then have "- x \ top = y \ top" + then have "- x \ \ = y \ \" using sup_compl_top assms(2) by simp then show "- x = y" by (simp add: inf_top_right) qed @@ -406,8 +415,8 @@ "- x = - y \ x = y" proof assume "- x = - y" - then have "- x \ y = bot" - and "- x \ y = top" + then have "- x \ y = \" + and "- x \ y = \" by (simp_all add: compl_inf_bot compl_sup_top) then have "- (- x) = y" by (rule compl_unique) then show "x = y" by simp @@ -417,16 +426,16 @@ qed lemma compl_bot_eq [simp]: - "- bot = top" + "- \ = \" proof - - from sup_compl_top have "bot \ - bot = top" . + from sup_compl_top have "\ \ - \ = \" . then show ?thesis by simp qed lemma compl_top_eq [simp]: - "- top = bot" + "- \ = \" proof - - from inf_compl_bot have "top \ - top = bot" . + from inf_compl_bot have "\ \ - \ = \" . then show ?thesis by simp qed @@ -437,21 +446,21 @@ by (rule inf_sup_distrib1) also have "... = (y \ (x \ - x)) \ (x \ (y \ - y))" by (simp only: inf_commute inf_assoc inf_left_commute) - finally show "(x \ y) \ (- x \ - y) = bot" + finally show "(x \ y) \ (- x \ - y) = \" by (simp add: inf_compl_bot) next have "(x \ y) \ (- x \ - y) = (x \ (- x \ - y)) \ (y \ (- x \ - y))" by (rule sup_inf_distrib2) also have "... = (- y \ (x \ - x)) \ (- x \ (y \ - y))" by (simp only: sup_commute sup_assoc sup_left_commute) - finally show "(x \ y) \ (- x \ - y) = top" + finally show "(x \ y) \ (- x \ - y) = \" by (simp add: sup_compl_top) qed lemma compl_sup [simp]: "- (x \ y) = - x \ - y" proof - - interpret boolean_algebra "\x y. x \ - y" uminus "op \" "op >" "op \" "op \" top bot + interpret boolean_algebra "\x y. x \ - y" uminus "op \" "op >" "op \" "op \" \ \ by (rule dual_boolean_algebra) then show ?thesis by simp qed @@ -463,26 +472,26 @@ lemma (in lower_semilattice) inf_unique: fixes f (infixl "\" 70) - assumes le1: "\x y. x \ y \ x" and le2: "\x y. x \ y \ y" - and greatest: "\x y z. x \ y \ x \ z \ x \ y \ z" + assumes le1: "\x y. x \ y \ x" and le2: "\x y. x \ y \ y" + and greatest: "\x y z. x \ y \ x \ z \ x \ y \ z" shows "x \ y = x \ y" proof (rule antisym) - show "x \ y \ x \ y" by (rule le_infI) (rule le1, rule le2) + show "x \ y \ x \ y" by (rule le_infI) (rule le1, rule le2) next - have leI: "\x y z. x \ y \ x \ z \ x \ y \ z" by (blast intro: greatest) - show "x \ y \ x \ y" by (rule leI) simp_all + have leI: "\x y z. x \ y \ x \ z \ x \ y \ z" by (blast intro: greatest) + show "x \ y \ x \ y" by (rule leI) simp_all qed lemma (in upper_semilattice) sup_unique: fixes f (infixl "\" 70) - assumes ge1 [simp]: "\x y. x \ x \ y" and ge2: "\x y. y \ x \ y" - and least: "\x y z. y \ x \ z \ x \ y \ z \ x" + assumes ge1 [simp]: "\x y. x \ x \ y" and ge2: "\x y. y \ x \ y" + and least: "\x y z. y \ x \ z \ x \ y \ z \ x" shows "x \ y = x \ y" proof (rule antisym) - show "x \ y \ x \ y" by (rule le_supI) (rule ge1, rule ge2) + show "x \ y \ x \ y" by (rule le_supI) (rule ge1, rule ge2) next - have leI: "\x y z. x \ z \ y \ z \ x \ y \ z" by (blast intro: least) - show "x \ y \ x \ y" by (rule leI) simp_all + have leI: "\x y z. x \ z \ y \ z \ x \ y \ z" by (blast intro: least) + show "x \ y \ x \ y" by (rule leI) simp_all qed @@ -568,6 +577,8 @@ proof qed (simp_all add: inf_fun_eq sup_fun_eq sup_inf_distrib1) +instance "fun" :: (type, bounded_lattice) bounded_lattice .. + instantiation "fun" :: (type, uminus) uminus begin diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/Library/Crude_Executable_Set.thy --- a/src/HOL/Library/Crude_Executable_Set.thy Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/Library/Crude_Executable_Set.thy Mon Dec 07 11:18:44 2009 +0100 @@ -236,12 +236,12 @@ lemma Inf_inf [code]: "Inf (Set xs) = foldl inf (top :: 'a::complete_lattice) xs" "Inf (Coset []) = (bot :: 'a::complete_lattice)" - by (simp_all add: Inf_Univ bot_def [symmetric] Inf_set_fold) + by (simp_all add: Inf_UNIV Inf_set_fold) lemma Sup_sup [code]: "Sup (Set xs) = foldl sup (bot :: 'a::complete_lattice) xs" "Sup (Coset []) = (top :: 'a::complete_lattice)" - by (simp_all add: Sup_Univ top_def [symmetric] Sup_set_fold) + by (simp_all add: Sup_UNIV Sup_set_fold) lemma Inter_inter [code]: "Inter (Set xs) = foldl inter (Coset []) xs" diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/Library/List_Set.thy --- a/src/HOL/Library/List_Set.thy Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/Library/List_Set.thy Mon Dec 07 11:18:44 2009 +0100 @@ -85,50 +85,6 @@ "project P (set xs) = set (filter P xs)" by (auto simp add: project_def) -text {* FIXME move the following to @{text Finite_Set.thy} *} - -lemma fun_left_comm_idem_inf: - "fun_left_comm_idem inf" -proof -qed (auto simp add: inf_left_commute) - -lemma fun_left_comm_idem_sup: - "fun_left_comm_idem sup" -proof -qed (auto simp add: sup_left_commute) - -lemma inf_Inf_fold_inf: - fixes A :: "'a::complete_lattice set" - assumes "finite A" - shows "inf B (Inf A) = fold inf B A" -proof - - interpret fun_left_comm_idem inf by (fact fun_left_comm_idem_inf) - from `finite A` show ?thesis by (induct A arbitrary: B) - (simp_all add: top_def [symmetric] Inf_insert inf_commute fold_fun_comm) -qed - -lemma sup_Sup_fold_sup: - fixes A :: "'a::complete_lattice set" - assumes "finite A" - shows "sup B (Sup A) = fold sup B A" -proof - - interpret fun_left_comm_idem sup by (fact fun_left_comm_idem_sup) - from `finite A` show ?thesis by (induct A arbitrary: B) - (simp_all add: bot_def [symmetric] Sup_insert sup_commute fold_fun_comm) -qed - -lemma Inf_fold_inf: - fixes A :: "'a::complete_lattice set" - assumes "finite A" - shows "Inf A = fold inf top A" - using assms inf_Inf_fold_inf [of A top] by (simp add: inf_absorb2) - -lemma Sup_fold_sup: - fixes A :: "'a::complete_lattice set" - assumes "finite A" - shows "Sup A = fold sup bot A" - using assms sup_Sup_fold_sup [of A bot] by (simp add: sup_absorb2) - subsection {* Functorial set operations *} @@ -149,14 +105,6 @@ by (simp add: minus_fold_remove [of _ A] fold_set) qed -lemma INFI_set_fold: -- "FIXME move to List.thy" - "INFI (set xs) f = foldl (\y x. inf (f x) y) top xs" - unfolding INFI_def image_set Inf_set_fold foldl_map by (simp add: inf_commute) - -lemma SUPR_set_fold: -- "FIXME move to List.thy" - "SUPR (set xs) f = foldl (\y x. sup (f x) y) bot xs" - unfolding SUPR_def image_set Sup_set_fold foldl_map by (simp add: sup_commute) - subsection {* Derived set operations *} diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/List.thy --- a/src/HOL/List.thy Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/List.thy Mon Dec 07 11:18:44 2009 +0100 @@ -2359,15 +2359,29 @@ lemma (in complete_lattice) Inf_set_fold [code_unfold]: "Inf (set xs) = foldl inf top xs" - by (cases xs) - (simp_all add: Inf_fin_Inf [symmetric] Inf_fin_set_fold - inf_commute del: set.simps, simp add: top_def) +proof - + interpret fun_left_comm_idem "inf :: 'a \ 'a \ 'a" + by (fact fun_left_comm_idem_inf) + show ?thesis by (simp add: Inf_fold_inf fold_set inf_commute) +qed lemma (in complete_lattice) Sup_set_fold [code_unfold]: "Sup (set xs) = foldl sup bot xs" - by (cases xs) - (simp_all add: Sup_fin_Sup [symmetric] Sup_fin_set_fold - sup_commute del: set.simps, simp add: bot_def) +proof - + interpret fun_left_comm_idem "sup :: 'a \ 'a \ 'a" + by (fact fun_left_comm_idem_sup) + show ?thesis by (simp add: Sup_fold_sup fold_set sup_commute) +qed + +lemma (in complete_lattice) INFI_set_fold: + "INFI (set xs) f = foldl (\y x. inf (f x) y) top xs" + unfolding INFI_def set_map [symmetric] Inf_set_fold foldl_map + by (simp add: inf_commute) + +lemma (in complete_lattice) SUPR_set_fold: + "SUPR (set xs) f = foldl (\y x. sup (f x) y) bot xs" + unfolding SUPR_def set_map [symmetric] Sup_set_fold foldl_map + by (simp add: sup_commute) subsubsection {* List summation: @{const listsum} and @{text"\"}*} diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/Predicate.thy --- a/src/HOL/Predicate.thy Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/Predicate.thy Mon Dec 07 11:18:44 2009 +0100 @@ -726,7 +726,7 @@ proof (cases "f ()") case Empty thus ?thesis - unfolding Seq_def by (simp add: sup_commute [of "\"] sup_bot) + unfolding Seq_def by (simp add: sup_commute [of "\"]) next case Insert thus ?thesis diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/SMT/Examples/cert/z3_bv_02 --- a/src/HOL/SMT/Examples/cert/z3_bv_02 Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/SMT/Examples/cert/z3_bv_02 Mon Dec 07 11:18:44 2009 +0100 @@ -1,12 +1,12 @@ (benchmark Isabelle :extrasorts ( T2 T1) :extrafuns ( - (uf_2 T1) - (uf_1 BitVec[4] BitVec[4] T1) - (uf_3 T1 T2) - (uf_4 BitVec[4]) + (uf_4 T1) + (uf_2 BitVec[4] BitVec[4] T1) + (uf_1 T1 T2) + (uf_3 BitVec[4]) ) -:assumption (forall (?x1 BitVec[4]) (?x2 BitVec[4]) (iff (= (uf_1 ?x1 ?x2) uf_2) (bvule ?x1 ?x2))) -:assumption (not (= (uf_3 (uf_1 bv0[4] uf_4)) (uf_3 uf_2))) +:assumption (not (= (uf_1 (uf_2 bv0[4] uf_3)) (uf_1 uf_4))) +:assumption (forall (?x1 BitVec[4]) (?x2 BitVec[4]) (iff (= (uf_2 ?x1 ?x2) uf_4) (bvule ?x1 ?x2))) :formula true ) diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/SMT/Examples/cert/z3_hol_03 --- a/src/HOL/SMT/Examples/cert/z3_hol_03 Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/SMT/Examples/cert/z3_hol_03 Mon Dec 07 11:18:44 2009 +0100 @@ -3,11 +3,13 @@ :extrafuns ( (uf_3 T2) (uf_1 T1 T1) - (uf_2 T2 T2) (uf_4 T1) ) +:extrapreds ( + (up_2 T2) + ) :assumption (forall (?x1 T1) (= (uf_1 ?x1) ?x1)) -:assumption (forall (?x2 T2) (iff (= (uf_2 ?x2) uf_3) (= ?x2 uf_3))) -:assumption (not (and (= (uf_1 uf_4) uf_4) (iff (= (uf_2 uf_3) uf_3) true))) +:assumption (forall (?x2 T2) (iff (up_2 ?x2) (= ?x2 uf_3))) +:assumption (not (and (= (uf_1 uf_4) uf_4) (iff (up_2 uf_3) true))) :formula true ) diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/SMT/Examples/cert/z3_hol_03.proof --- a/src/HOL/SMT/Examples/cert/z3_hol_03.proof Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/SMT/Examples/cert/z3_hol_03.proof Mon Dec 07 11:18:44 2009 +0100 @@ -1,120 +1,115 @@ #2 := false -decl uf_1 :: (-> T1 T1) -decl uf_4 :: T1 -#15 := uf_4 -#16 := (uf_1 uf_4) -#48 := (= uf_4 #16) -#83 := (not #48) -decl uf_2 :: (-> T2 T2) +decl up_2 :: (-> T2 bool) decl uf_3 :: T2 #10 := uf_3 -#18 := (uf_2 uf_3) -#51 := (= uf_3 #18) -#84 := (not #51) -#556 := [hypothesis]: #84 -#8 := (:var 0 T2) -#9 := (uf_2 #8) -#575 := (pattern #9) -#12 := (= #8 uf_3) -#11 := (= #9 uf_3) -#13 := (iff #11 #12) -#576 := (forall (vars (?x2 T2)) (:pat #575) #13) -#14 := (forall (vars (?x2 T2)) #13) -#579 := (iff #14 #576) -#577 := (iff #13 #13) -#578 := [refl]: #577 -#580 := [quant-intro #578]: #579 -#70 := (~ #14 #14) -#80 := (~ #13 #13) -#81 := [refl]: #80 -#67 := [nnf-pos #81]: #70 -#45 := [asserted]: #14 -#82 := [mp~ #45 #67]: #14 -#581 := [mp #82 #580]: #576 -#242 := (not #576) -#170 := (or #242 #51) -#150 := (= uf_3 uf_3) -#19 := (= #18 uf_3) -#237 := (iff #19 #150) -#243 := (or #242 #237) -#244 := (iff #243 #170) -#560 := (iff #170 #170) -#562 := [rewrite]: #560 -#230 := (iff #237 #51) -#1 := true -#54 := (iff #51 true) -#57 := (iff #54 #51) -#58 := [rewrite]: #57 -#152 := (iff #237 #54) -#151 := (iff #150 true) -#238 := [rewrite]: #151 -#52 := (iff #19 #51) -#53 := [rewrite]: #52 -#239 := [monotonicity #53 #238]: #152 -#241 := [trans #239 #58]: #230 -#223 := [monotonicity #241]: #244 -#217 := [trans #223 #562]: #244 -#240 := [quant-inst]: #243 -#349 := [mp #240 #217]: #170 -#228 := [unit-resolution #349 #581 #556]: false -#229 := [lemma #228]: #51 -#71 := (or #83 #84) -#61 := (and #48 #51) -#64 := (not #61) -#90 := (iff #64 #71) -#72 := (not #71) -#85 := (not #72) -#88 := (iff #85 #71) -#89 := [rewrite]: #88 -#86 := (iff #64 #85) -#73 := (iff #61 #72) -#74 := [rewrite]: #73 -#87 := [monotonicity #74]: #86 -#91 := [trans #87 #89]: #90 -#20 := (iff #19 true) -#17 := (= #16 uf_4) -#21 := (and #17 #20) -#22 := (not #21) -#65 := (iff #22 #64) -#62 := (iff #21 #61) -#59 := (iff #20 #51) -#55 := (iff #20 #54) -#56 := [monotonicity #53]: #55 -#60 := [trans #56 #58]: #59 -#49 := (iff #17 #48) -#50 := [rewrite]: #49 -#63 := [monotonicity #50 #60]: #62 -#66 := [monotonicity #63]: #65 -#46 := [asserted]: #22 -#69 := [mp #46 #66]: #64 -#92 := [mp #69 #91]: #71 -#563 := [unit-resolution #92 #229]: #83 +#17 := (up_2 uf_3) +#78 := (not #17) +decl uf_1 :: (-> T1 T1) +decl uf_4 :: T1 +#14 := uf_4 +#15 := (uf_1 uf_4) +#46 := (= uf_4 #15) +#79 := (not #46) +#145 := [hypothesis]: #79 #4 := (:var 0 T1) #5 := (uf_1 #4) -#568 := (pattern #5) -#39 := (= #4 #5) -#569 := (forall (vars (?x1 T1)) (:pat #568) #39) -#42 := (forall (vars (?x1 T1)) #39) -#572 := (iff #42 #569) -#570 := (iff #39 #39) -#571 := [refl]: #570 -#573 := [quant-intro #571]: #572 -#77 := (~ #42 #42) -#75 := (~ #39 #39) -#76 := [refl]: #75 -#78 := [nnf-pos #76]: #77 +#563 := (pattern #5) +#37 := (= #4 #5) +#564 := (forall (vars (?x1 T1)) (:pat #563) #37) +#40 := (forall (vars (?x1 T1)) #37) +#567 := (iff #40 #564) +#565 := (iff #37 #37) +#566 := [refl]: #565 +#568 := [quant-intro #566]: #567 +#72 := (~ #40 #40) +#70 := (~ #37 #37) +#71 := [refl]: #70 +#73 := [nnf-pos #71]: #72 #6 := (= #5 #4) #7 := (forall (vars (?x1 T1)) #6) -#43 := (iff #7 #42) -#40 := (iff #6 #39) -#41 := [rewrite]: #40 -#44 := [quant-intro #41]: #43 -#38 := [asserted]: #7 -#47 := [mp #38 #44]: #42 -#79 := [mp~ #47 #78]: #42 -#574 := [mp #79 #573]: #569 -#565 := (not #569) -#566 := (or #565 #48) -#561 := [quant-inst]: #566 -[unit-resolution #561 #574 #563]: false +#41 := (iff #7 #40) +#38 := (iff #6 #37) +#39 := [rewrite]: #38 +#42 := [quant-intro #39]: #41 +#36 := [asserted]: #7 +#45 := [mp #36 #42]: #40 +#74 := [mp~ #45 #73]: #40 +#569 := [mp #74 #568]: #564 +#146 := (not #564) +#233 := (or #146 #46) +#147 := [quant-inst]: #233 +#232 := [unit-resolution #147 #569 #145]: false +#234 := [lemma #232]: #46 +#66 := (or #78 #79) +#54 := (and #17 #46) +#59 := (not #54) +#85 := (iff #59 #66) +#67 := (not #66) +#80 := (not #67) +#83 := (iff #80 #66) +#84 := [rewrite]: #83 +#81 := (iff #59 #80) +#68 := (iff #54 #67) +#69 := [rewrite]: #68 +#82 := [monotonicity #69]: #81 +#86 := [trans #82 #84]: #85 +#1 := true +#18 := (iff #17 true) +#16 := (= #15 uf_4) +#19 := (and #16 #18) +#20 := (not #19) +#60 := (iff #20 #59) +#57 := (iff #19 #54) +#51 := (and #46 #17) +#55 := (iff #51 #54) +#56 := [rewrite]: #55 +#52 := (iff #19 #51) +#49 := (iff #18 #17) +#50 := [rewrite]: #49 +#47 := (iff #16 #46) +#48 := [rewrite]: #47 +#53 := [monotonicity #48 #50]: #52 +#58 := [trans #53 #56]: #57 +#61 := [monotonicity #58]: #60 +#44 := [asserted]: #20 +#64 := [mp #44 #61]: #59 +#87 := [mp #64 #86]: #66 +#561 := [unit-resolution #87 #234]: #78 +#8 := (:var 0 T2) +#9 := (up_2 #8) +#570 := (pattern #9) +#11 := (= #8 uf_3) +#12 := (iff #9 #11) +#571 := (forall (vars (?x2 T2)) (:pat #570) #12) +#13 := (forall (vars (?x2 T2)) #12) +#574 := (iff #13 #571) +#572 := (iff #12 #12) +#573 := [refl]: #572 +#575 := [quant-intro #573]: #574 +#65 := (~ #13 #13) +#75 := (~ #12 #12) +#76 := [refl]: #75 +#62 := [nnf-pos #76]: #65 +#43 := [asserted]: #13 +#77 := [mp~ #43 #62]: #13 +#576 := [mp #77 #575]: #571 +#555 := (not #571) +#557 := (or #555 #17) +#225 := (= uf_3 uf_3) +#236 := (iff #17 #225) +#212 := (or #555 #236) +#551 := (iff #212 #557) +#224 := (iff #557 #557) +#558 := [rewrite]: #224 +#239 := (iff #236 #17) +#238 := (iff #236 #18) +#237 := (iff #225 true) +#165 := [rewrite]: #237 +#235 := [monotonicity #165]: #238 +#218 := [trans #235 #50]: #239 +#223 := [monotonicity #218]: #551 +#559 := [trans #223 #558]: #551 +#344 := [quant-inst]: #212 +#560 := [mp #344 #559]: #557 +[unit-resolution #560 #576 #561]: false unsat diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/SMT/Examples/cert/z3_linarith_07 --- a/src/HOL/SMT/Examples/cert/z3_linarith_07 Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/SMT/Examples/cert/z3_linarith_07 Mon Dec 07 11:18:44 2009 +0100 @@ -1,11 +1,11 @@ (benchmark Isabelle :extrasorts ( T2 T1) :extrafuns ( - (uf_2 T1) - (uf_1 Int Int T1) - (uf_3 T1 T2) + (uf_3 T1) + (uf_2 Int Int T1) + (uf_1 T1 T2) ) -:assumption (forall (?x1 Int) (?x2 Int) (iff (= (uf_1 ?x1 ?x2) uf_2) (< ?x1 ?x2))) -:assumption (not (= (uf_3 (uf_1 2 3)) (uf_3 uf_2))) +:assumption (not (= (uf_1 (uf_2 2 3)) (uf_1 uf_3))) +:assumption (forall (?x1 Int) (?x2 Int) (iff (= (uf_2 ?x1 ?x2) uf_3) (< ?x1 ?x2))) :formula true ) diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/SMT/Examples/cert/z3_linarith_07.proof --- a/src/HOL/SMT/Examples/cert/z3_linarith_07.proof Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/SMT/Examples/cert/z3_linarith_07.proof Mon Dec 07 11:18:44 2009 +0100 @@ -1,105 +1,124 @@ #2 := false -decl uf_3 :: (-> T1 T2) -decl uf_2 :: T1 -#7 := uf_2 -#16 := (uf_3 uf_2) -decl uf_1 :: (-> int int T1) -#13 := 3::int -#12 := 2::int -#14 := (uf_1 2::int 3::int) -#15 := (uf_3 #14) -#17 := (= #15 #16) -#516 := (= #16 #15) -#194 := (= uf_2 #14) -#5 := (:var 0 int) -#4 := (:var 1 int) -#6 := (uf_1 #4 #5) -#530 := (pattern #6) -#39 := 0::int -#37 := -1::int -#41 := (* -1::int #5) -#42 := (+ #4 #41) -#40 := (>= #42 0::int) -#38 := (not #40) -#8 := (= #6 uf_2) -#45 := (iff #8 #38) -#531 := (forall (vars (?x1 int) (?x2 int)) (:pat #530) #45) -#48 := (forall (vars (?x1 int) (?x2 int)) #45) -#534 := (iff #48 #531) -#532 := (iff #45 #45) -#533 := [refl]: #532 -#535 := [quant-intro #533]: #534 -#58 := (~ #48 #48) -#56 := (~ #45 #45) -#57 := [refl]: #56 -#59 := [nnf-pos #57]: #58 -#9 := (< #4 #5) -#10 := (iff #8 #9) -#11 := (forall (vars (?x1 int) (?x2 int)) #10) -#49 := (iff #11 #48) -#46 := (iff #10 #45) -#43 := (iff #9 #38) +decl uf_1 :: (-> T1 T2) +decl uf_3 :: T1 +#8 := uf_3 +#9 := (uf_1 uf_3) +decl uf_2 :: (-> int int T1) +#5 := 3::int +#4 := 2::int +#6 := (uf_2 2::int 3::int) +#7 := (uf_1 #6) +#10 := (= #7 #9) +#225 := (= #6 uf_3) +#13 := (:var 0 int) +#12 := (:var 1 int) +#14 := (uf_2 #12 #13) +#549 := (pattern #14) +#52 := 0::int +#50 := -1::int +#54 := (* -1::int #13) +#55 := (+ #12 #54) +#53 := (>= #55 0::int) +#51 := (not #53) +#36 := (= uf_3 #14) +#61 := (iff #36 #51) +#550 := (forall (vars (?x1 int) (?x2 int)) (:pat #549) #61) +#66 := (forall (vars (?x1 int) (?x2 int)) #61) +#553 := (iff #66 #550) +#551 := (iff #61 #61) +#552 := [refl]: #551 +#554 := [quant-intro #552]: #553 +#79 := (~ #66 #66) +#77 := (~ #61 #61) +#78 := [refl]: #77 +#80 := [nnf-pos #78]: #79 +#16 := (< #12 #13) +#15 := (= #14 uf_3) +#17 := (iff #15 #16) +#18 := (forall (vars (?x1 int) (?x2 int)) #17) +#69 := (iff #18 #66) +#42 := (iff #16 #36) +#47 := (forall (vars (?x1 int) (?x2 int)) #42) +#67 := (iff #47 #66) +#64 := (iff #42 #61) +#58 := (iff #51 #36) +#62 := (iff #58 #61) +#63 := [rewrite]: #62 +#59 := (iff #42 #58) +#56 := (iff #16 #51) +#57 := [rewrite]: #56 +#60 := [monotonicity #57]: #59 +#65 := [trans #60 #63]: #64 +#68 := [quant-intro #65]: #67 +#48 := (iff #18 #47) +#45 := (iff #17 #42) +#39 := (iff #36 #16) +#43 := (iff #39 #42) #44 := [rewrite]: #43 -#47 := [monotonicity #44]: #46 -#50 := [quant-intro #47]: #49 +#40 := (iff #17 #39) +#37 := (iff #15 #36) +#38 := [rewrite]: #37 +#41 := [monotonicity #38]: #40 +#46 := [trans #41 #44]: #45 +#49 := [quant-intro #46]: #48 +#70 := [trans #49 #68]: #69 +#35 := [asserted]: #18 +#71 := [mp #35 #70]: #66 +#74 := [mp~ #71 #80]: #66 +#555 := [mp #74 #554]: #550 +#529 := (not #550) +#530 := (or #529 #225) +#220 := (* -1::int 3::int) +#221 := (+ 2::int #220) +#222 := (>= #221 0::int) +#213 := (not #222) +#135 := (= uf_3 #6) +#224 := (iff #135 #213) +#525 := (or #529 #224) +#169 := (iff #525 #530) +#534 := (iff #530 #530) +#174 := [rewrite]: #534 +#527 := (iff #224 #225) +#1 := true +#187 := (iff #225 true) +#190 := (iff #187 #225) +#526 := [rewrite]: #190 +#188 := (iff #224 #187) +#183 := (iff #213 true) +#198 := (not false) +#199 := (iff #198 true) +#540 := [rewrite]: #199 +#203 := (iff #213 #198) +#548 := (iff #222 false) +#544 := (>= -1::int 0::int) +#547 := (iff #544 false) +#542 := [rewrite]: #547 +#545 := (iff #222 #544) +#211 := (= #221 -1::int) +#223 := -3::int +#541 := (+ 2::int -3::int) +#330 := (= #541 -1::int) +#537 := [rewrite]: #330 +#543 := (= #221 #541) +#227 := (= #220 -3::int) +#206 := [rewrite]: #227 +#200 := [monotonicity #206]: #543 +#212 := [trans #200 #537]: #211 +#546 := [monotonicity #212]: #545 +#538 := [trans #546 #542]: #548 +#539 := [monotonicity #538]: #203 +#524 := [trans #539 #540]: #183 +#153 := (iff #135 #225) +#226 := [rewrite]: #153 +#189 := [monotonicity #226 #524]: #188 +#528 := [trans #189 #526]: #527 +#532 := [monotonicity #528]: #169 +#175 := [trans #532 #174]: #169 +#531 := [quant-inst]: #525 +#535 := [mp #531 #175]: #530 +#533 := [unit-resolution #535 #555]: #225 +#536 := [monotonicity #533]: #10 +#11 := (not #10) #34 := [asserted]: #11 -#51 := [mp #34 #50]: #48 -#60 := [mp~ #51 #59]: #48 -#536 := [mp #60 #535]: #531 -#508 := (not #531) -#509 := (or #508 #194) -#201 := (* -1::int 3::int) -#115 := (+ 2::int #201) -#202 := (>= #115 0::int) -#116 := (not #202) -#114 := (= #14 uf_2) -#203 := (iff #114 #116) -#510 := (or #508 #203) -#506 := (iff #510 #509) -#150 := (iff #509 #509) -#513 := [rewrite]: #150 -#171 := (iff #203 #194) -#1 := true -#164 := (iff #194 true) -#169 := (iff #164 #194) -#170 := [rewrite]: #169 -#505 := (iff #203 #164) -#180 := (iff #116 true) -#529 := (not false) -#184 := (iff #529 true) -#520 := [rewrite]: #184 -#519 := (iff #116 #529) -#528 := (iff #202 false) -#192 := (>= -1::int 0::int) -#526 := (iff #192 false) -#527 := [rewrite]: #526 -#193 := (iff #202 #192) -#311 := (= #115 -1::int) -#134 := -3::int -#208 := (+ 2::int -3::int) -#524 := (= #208 -1::int) -#181 := [rewrite]: #524 -#187 := (= #115 #208) -#207 := (= #201 -3::int) -#204 := [rewrite]: #207 -#522 := [monotonicity #204]: #187 -#518 := [trans #522 #181]: #311 -#525 := [monotonicity #518]: #193 -#523 := [trans #525 #527]: #528 -#179 := [monotonicity #523]: #519 -#521 := [trans #179 #520]: #180 -#205 := (iff #114 #194) -#206 := [rewrite]: #205 -#168 := [monotonicity #206 #521]: #505 -#507 := [trans #168 #170]: #171 -#512 := [monotonicity #507]: #506 -#515 := [trans #512 #513]: #506 -#511 := [quant-inst]: #510 -#155 := [mp #511 #515]: #509 -#156 := [unit-resolution #155 #536]: #194 -#514 := [monotonicity #156]: #516 -#517 := [symm #514]: #17 -#18 := (not #17) -#35 := [asserted]: #18 -[unit-resolution #35 #517]: false +[unit-resolution #34 #536]: false unsat diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/SMT/Examples/cert/z3_linarith_13 --- a/src/HOL/SMT/Examples/cert/z3_linarith_13 Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/SMT/Examples/cert/z3_linarith_13 Mon Dec 07 11:18:44 2009 +0100 @@ -1,13 +1,13 @@ (benchmark Isabelle :extrasorts ( T1) :extrafuns ( - (uf_2 T1) - (uf_3 Int Int T1) + (uf_4 T1) (uf_1 Int Int T1) - (uf_4 Int) + (uf_3 Int Int T1) + (uf_2 Int) ) -:assumption (forall (?x1 Int) (?x2 Int) (iff (= (uf_1 ?x1 ?x2) uf_2) (<= ?x1 ?x2))) -:assumption (forall (?x3 Int) (?x4 Int) (iff (= (uf_3 ?x3 ?x4) uf_2) (< ?x3 ?x4))) -:assumption (not (distinct (uf_3 uf_4 3) (uf_1 3 uf_4))) +:assumption (not (distinct (uf_1 uf_2 3) (uf_3 3 uf_2))) +:assumption (forall (?x1 Int) (?x2 Int) (iff (= (uf_3 ?x1 ?x2) uf_4) (<= ?x1 ?x2))) +:assumption (forall (?x3 Int) (?x4 Int) (iff (= (uf_1 ?x3 ?x4) uf_4) (< ?x3 ?x4))) :formula true ) diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/SMT/Examples/cert/z3_linarith_13.proof --- a/src/HOL/SMT/Examples/cert/z3_linarith_13.proof Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/SMT/Examples/cert/z3_linarith_13.proof Mon Dec 07 11:18:44 2009 +0100 @@ -1,212 +1,212 @@ #2 := false -decl uf_3 :: (-> int int T1) -#18 := 3::int -decl uf_4 :: int -#17 := uf_4 -#19 := (uf_3 uf_4 3::int) -decl uf_2 :: T1 -#7 := uf_2 -#221 := (= uf_2 #19) +decl uf_4 :: T1 +#13 := uf_4 decl uf_1 :: (-> int int T1) -#20 := (uf_1 3::int uf_4) -#256 := (= uf_2 #20) -#531 := (iff #256 #221) -#529 := (iff #221 #256) -#87 := (= #19 #20) -#21 := (distinct #19 #20) -#22 := (not #21) -#96 := (iff #22 #87) -#88 := (not #87) -#91 := (not #88) -#94 := (iff #91 #87) -#95 := [rewrite]: #94 -#92 := (iff #22 #91) -#89 := (iff #21 #88) -#90 := [rewrite]: #89 -#93 := [monotonicity #90]: #92 -#97 := [trans #93 #95]: #96 -#86 := [asserted]: #22 -#100 := [mp #86 #97]: #87 -#530 := [monotonicity #100]: #529 -#525 := [symm #530]: #531 -#548 := (not #221) -#232 := (not #256) -#526 := (iff #232 #548) -#532 := [monotonicity #525]: #526 -#536 := [hypothesis]: #232 -#533 := [mp #536 #532]: #548 -#259 := (>= uf_4 3::int) -#576 := (not #259) -#542 := (or #256 #576) -#257 := (iff #256 #259) -#5 := (:var 0 int) -#4 := (:var 1 int) -#6 := (uf_1 #4 #5) -#583 := (pattern #6) -#44 := 0::int -#41 := -1::int -#42 := (* -1::int #5) -#43 := (+ #4 #42) -#45 := (<= #43 0::int) -#8 := (= #6 uf_2) -#48 := (iff #8 #45) -#584 := (forall (vars (?x1 int) (?x2 int)) (:pat #583) #48) -#51 := (forall (vars (?x1 int) (?x2 int)) #48) -#587 := (iff #51 #584) -#585 := (iff #48 #48) -#586 := [refl]: #585 -#588 := [quant-intro #586]: #587 -#108 := (~ #51 #51) -#106 := (~ #48 #48) +#5 := 3::int +decl uf_2 :: int +#4 := uf_2 +#6 := (uf_1 uf_2 3::int) +#559 := (= #6 uf_4) +decl uf_3 :: (-> int int T1) +#7 := (uf_3 3::int uf_2) +#254 := (= #7 uf_4) +#524 := (iff #254 #559) +#529 := (iff #559 #254) +#39 := (= #6 #7) +#8 := (distinct #6 #7) +#9 := (not #8) +#48 := (iff #9 #39) +#40 := (not #39) +#43 := (not #40) +#46 := (iff #43 #39) +#47 := [rewrite]: #46 +#44 := (iff #9 #43) +#41 := (iff #8 #40) +#42 := [rewrite]: #41 +#45 := [monotonicity #42]: #44 +#49 := [trans #45 #47]: #48 +#38 := [asserted]: #9 +#52 := [mp #38 #49]: #39 +#523 := [monotonicity #52]: #529 +#530 := [symm #523]: #524 +#547 := (not #559) +#570 := (not #254) +#531 := (iff #570 #547) +#525 := [monotonicity #530]: #531 +#540 := [hypothesis]: #570 +#532 := [mp #540 #525]: #547 +#256 := (>= uf_2 3::int) +#579 := (not #256) +#541 := (or #254 #579) +#258 := (iff #254 #256) +#11 := (:var 0 int) +#10 := (:var 1 int) +#12 := (uf_3 #10 #11) +#581 := (pattern #12) +#57 := 0::int +#54 := -1::int +#55 := (* -1::int #11) +#56 := (+ #10 #55) +#58 := (<= #56 0::int) +#14 := (= #12 uf_4) +#61 := (iff #14 #58) +#582 := (forall (vars (?x1 int) (?x2 int)) (:pat #581) #61) +#64 := (forall (vars (?x1 int) (?x2 int)) #61) +#585 := (iff #64 #582) +#583 := (iff #61 #61) +#584 := [refl]: #583 +#586 := [quant-intro #584]: #585 +#108 := (~ #64 #64) +#106 := (~ #61 #61) #107 := [refl]: #106 #109 := [nnf-pos #107]: #108 -#9 := (<= #4 #5) -#10 := (iff #8 #9) -#11 := (forall (vars (?x1 int) (?x2 int)) #10) -#52 := (iff #11 #51) -#49 := (iff #10 #48) -#46 := (iff #9 #45) -#47 := [rewrite]: #46 -#50 := [monotonicity #47]: #49 -#53 := [quant-intro #50]: #52 -#38 := [asserted]: #11 -#54 := [mp #38 #53]: #51 -#110 := [mp~ #54 #109]: #51 -#589 := [mp #110 #588]: #584 -#575 := (not #584) -#577 := (or #575 #257) -#167 := (* -1::int uf_4) -#254 := (+ 3::int #167) -#168 := (<= #254 0::int) -#255 := (= #20 uf_2) -#169 := (iff #255 #168) -#234 := (or #575 #169) -#571 := (iff #234 #577) -#246 := (iff #577 #577) -#578 := [rewrite]: #246 -#261 := (iff #169 #257) -#187 := (iff #168 #259) -#260 := [rewrite]: #187 -#247 := (iff #255 #256) -#258 := [rewrite]: #247 -#240 := [monotonicity #258 #260]: #261 -#245 := [monotonicity #240]: #571 -#579 := [trans #245 #578]: #571 -#364 := [quant-inst]: #234 -#580 := [mp #364 #579]: #577 -#541 := [unit-resolution #580 #589]: #257 -#581 := (not #257) -#582 := (or #581 #256 #576) -#572 := [def-axiom]: #582 -#537 := [unit-resolution #572 #541]: #542 -#543 := [unit-resolution #537 #536]: #576 -#385 := (or #221 #259) -#552 := (iff #221 #576) -#12 := (uf_3 #4 #5) -#590 := (pattern #12) -#69 := (>= #43 0::int) -#68 := (not #69) -#40 := (= uf_2 #12) -#75 := (iff #40 #68) -#591 := (forall (vars (?x3 int) (?x4 int)) (:pat #590) #75) -#80 := (forall (vars (?x3 int) (?x4 int)) #75) -#594 := (iff #80 #591) -#592 := (iff #75 #75) -#593 := [refl]: #592 -#595 := [quant-intro #593]: #594 -#101 := (~ #80 #80) -#111 := (~ #75 #75) -#112 := [refl]: #111 -#98 := [nnf-pos #112]: #101 -#14 := (< #4 #5) -#13 := (= #12 uf_2) -#15 := (iff #13 #14) -#16 := (forall (vars (?x3 int) (?x4 int)) #15) -#83 := (iff #16 #80) -#60 := (iff #14 #40) -#65 := (forall (vars (?x3 int) (?x4 int)) #60) -#81 := (iff #65 #80) -#78 := (iff #60 #75) -#72 := (iff #68 #40) -#76 := (iff #72 #75) -#77 := [rewrite]: #76 -#73 := (iff #60 #72) -#70 := (iff #14 #68) -#71 := [rewrite]: #70 -#74 := [monotonicity #71]: #73 -#79 := [trans #74 #77]: #78 -#82 := [quant-intro #79]: #81 -#66 := (iff #16 #65) -#63 := (iff #15 #60) -#57 := (iff #40 #14) -#61 := (iff #57 #60) -#62 := [rewrite]: #61 -#58 := (iff #15 #57) -#55 := (iff #13 #40) -#56 := [rewrite]: #55 -#59 := [monotonicity #56]: #58 -#64 := [trans #59 #62]: #63 -#67 := [quant-intro #64]: #66 -#84 := [trans #67 #82]: #83 -#39 := [asserted]: #16 -#85 := [mp #39 #84]: #80 -#113 := [mp~ #85 #98]: #80 -#596 := [mp #113 #595]: #591 -#276 := (not #591) -#550 := (or #276 #552) -#222 := (* -1::int 3::int) -#223 := (+ uf_4 #222) -#224 := (>= #223 0::int) -#560 := (not #224) -#561 := (iff #221 #560) -#554 := (or #276 #561) -#555 := (iff #554 #550) -#266 := (iff #550 #550) -#267 := [rewrite]: #266 -#553 := (iff #561 #552) -#282 := (iff #560 #576) -#280 := (iff #224 #259) +#15 := (<= #10 #11) +#16 := (iff #14 #15) +#17 := (forall (vars (?x1 int) (?x2 int)) #16) +#65 := (iff #17 #64) +#62 := (iff #16 #61) +#59 := (iff #15 #58) +#60 := [rewrite]: #59 +#63 := [monotonicity #60]: #62 +#66 := [quant-intro #63]: #65 +#50 := [asserted]: #17 +#67 := [mp #50 #66]: #64 +#101 := [mp~ #67 #109]: #64 +#587 := [mp #101 #586]: #582 +#238 := (not #582) +#573 := (or #238 #258) +#167 := (* -1::int uf_2) +#252 := (+ 3::int #167) +#253 := (<= #252 0::int) +#245 := (iff #254 #253) +#575 := (or #238 #245) +#362 := (iff #575 #573) +#243 := (iff #573 #573) +#244 := [rewrite]: #243 +#255 := (iff #245 #258) +#257 := (iff #253 #256) +#185 := [rewrite]: #257 +#259 := [monotonicity #185]: #255 +#569 := [monotonicity #259]: #362 +#576 := [trans #569 #244]: #362 +#232 := [quant-inst]: #575 +#577 := [mp #232 #576]: #573 +#535 := [unit-resolution #577 #587]: #258 +#578 := (not #258) +#574 := (or #578 #254 #579) +#580 := [def-axiom]: #574 +#382 := [unit-resolution #580 #535]: #541 +#383 := [unit-resolution #382 #540]: #579 +#526 := (or #559 #256) +#273 := (iff #559 #579) +#18 := (uf_1 #10 #11) +#588 := (pattern #18) +#82 := (>= #56 0::int) +#81 := (not #82) +#53 := (= uf_4 #18) +#88 := (iff #53 #81) +#589 := (forall (vars (?x3 int) (?x4 int)) (:pat #588) #88) +#93 := (forall (vars (?x3 int) (?x4 int)) #88) +#592 := (iff #93 #589) +#590 := (iff #88 #88) +#591 := [refl]: #590 +#593 := [quant-intro #591]: #592 +#102 := (~ #93 #93) +#99 := (~ #88 #88) +#110 := [refl]: #99 +#103 := [nnf-pos #110]: #102 +#20 := (< #10 #11) +#19 := (= #18 uf_4) +#21 := (iff #19 #20) +#22 := (forall (vars (?x3 int) (?x4 int)) #21) +#96 := (iff #22 #93) +#73 := (iff #20 #53) +#78 := (forall (vars (?x3 int) (?x4 int)) #73) +#94 := (iff #78 #93) +#91 := (iff #73 #88) +#85 := (iff #81 #53) +#89 := (iff #85 #88) +#90 := [rewrite]: #89 +#86 := (iff #73 #85) +#83 := (iff #20 #81) +#84 := [rewrite]: #83 +#87 := [monotonicity #84]: #86 +#92 := [trans #87 #90]: #91 +#95 := [quant-intro #92]: #94 +#79 := (iff #22 #78) +#76 := (iff #21 #73) +#70 := (iff #53 #20) +#74 := (iff #70 #73) +#75 := [rewrite]: #74 +#71 := (iff #21 #70) +#68 := (iff #19 #53) +#69 := [rewrite]: #68 +#72 := [monotonicity #69]: #71 +#77 := [trans #72 #75]: #76 +#80 := [quant-intro #77]: #79 +#97 := [trans #80 #95]: #96 +#51 := [asserted]: #22 +#98 := [mp #51 #97]: #93 +#111 := [mp~ #98 #103]: #93 +#594 := [mp #111 #593]: #589 +#552 := (not #589) +#549 := (or #552 #273) +#219 := (* -1::int 3::int) +#220 := (+ uf_2 #219) +#221 := (>= #220 0::int) +#222 := (not #221) +#556 := (= uf_4 #6) +#558 := (iff #556 #222) +#553 := (or #552 #558) +#264 := (iff #553 #549) +#266 := (iff #549 #549) +#544 := [rewrite]: #266 +#274 := (iff #558 #273) +#550 := (iff #222 #579) +#280 := (iff #221 #256) #562 := -3::int -#566 := (+ -3::int uf_4) -#567 := (>= #566 0::int) -#557 := (iff #567 #259) -#279 := [rewrite]: #557 -#570 := (iff #224 #567) -#209 := (= #223 #566) -#559 := (+ uf_4 -3::int) -#568 := (= #559 #566) -#208 := [rewrite]: #568 -#565 := (= #223 #559) -#563 := (= #222 -3::int) -#564 := [rewrite]: #563 -#203 := [monotonicity #564]: #565 -#569 := [trans #203 #208]: #209 -#556 := [monotonicity #569]: #570 -#281 := [trans #556 #279]: #280 -#175 := [monotonicity #281]: #282 -#275 := [monotonicity #175]: #553 -#265 := [monotonicity #275]: #555 -#268 := [trans #265 #267]: #555 -#551 := [quant-inst]: #554 -#546 := [mp #551 #268]: #550 -#384 := [unit-resolution #546 #596]: #552 -#547 := (not #552) -#262 := (or #547 #221 #259) -#544 := [def-axiom]: #262 -#386 := [unit-resolution #544 #384]: #385 -#528 := [unit-resolution #386 #543]: #221 -#527 := [unit-resolution #528 #533]: false -#534 := [lemma #527]: #256 -#523 := [mp #534 #525]: #221 -#363 := (or #232 #259) -#237 := (or #581 #232 #259) -#573 := [def-axiom]: #237 -#365 := [unit-resolution #573 #541]: #363 -#366 := [unit-resolution #365 #534]: #259 -#519 := (or #548 #576) -#545 := (or #547 #548 #576) -#549 := [def-axiom]: #545 -#520 := [unit-resolution #549 #384]: #519 -#522 := [unit-resolution #520 #366]: #548 -[unit-resolution #522 #523]: false +#206 := (+ -3::int uf_2) +#554 := (>= #206 0::int) +#278 := (iff #554 #256) +#279 := [rewrite]: #278 +#555 := (iff #221 #554) +#565 := (= #220 #206) +#201 := (+ uf_2 -3::int) +#207 := (= #201 #206) +#567 := [rewrite]: #207 +#564 := (= #220 #201) +#557 := (= #219 -3::int) +#563 := [rewrite]: #557 +#566 := [monotonicity #563]: #564 +#568 := [trans #566 #567]: #565 +#277 := [monotonicity #568]: #555 +#173 := [trans #277 #279]: #280 +#551 := [monotonicity #173]: #550 +#560 := (iff #556 #559) +#561 := [rewrite]: #560 +#548 := [monotonicity #561 #551]: #274 +#265 := [monotonicity #548]: #264 +#545 := [trans #265 #544]: #264 +#263 := [quant-inst]: #553 +#260 := [mp #263 #545]: #549 +#384 := [unit-resolution #260 #594]: #273 +#542 := (not #273) +#546 := (or #542 #559 #256) +#543 := [def-axiom]: #546 +#527 := [unit-resolution #543 #384]: #526 +#528 := [unit-resolution #527 #383]: #559 +#361 := [unit-resolution #528 #532]: false +#363 := [lemma #361]: #254 +#522 := [mp #363 #530]: #559 +#364 := (or #570 #256) +#230 := (or #578 #570 #256) +#235 := [def-axiom]: #230 +#517 := [unit-resolution #235 #535]: #364 +#518 := [unit-resolution #517 #363]: #256 +#520 := (or #547 #579) +#536 := (or #542 #547 #579) +#537 := [def-axiom]: #536 +#521 := [unit-resolution #537 #384]: #520 +#519 := [unit-resolution #521 #518]: #547 +[unit-resolution #519 #522]: false unsat diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/SMT/Tools/smt_monomorph.ML --- a/src/HOL/SMT/Tools/smt_monomorph.ML Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/SMT/Tools/smt_monomorph.ML Mon Dec 07 11:18:44 2009 +0100 @@ -74,16 +74,18 @@ fun incr_tvar_indices i t = let - val incrT = Logic.incr_tvar i + val incrT = Logic.incr_tvar_same i fun incr t = (case t of Const (n, T) => Const (n, incrT T) | Free (n, T) => Free (n, incrT T) - | Abs (n, T, t1) => Abs (n, incrT T, incr t1) - | t1 $ t2 => incr t1 $ incr t2 - | _ => t) - in incr t end + | Abs (n, T, t1) => (Abs (n, incrT T, incr t1 handle Same.SAME => t1) + handle Same.SAME => Abs (n, T, incr t1)) + | t1 $ t2 => (incr t1 $ (incr t2 handle Same.SAME => t2) + handle Same.SAME => t1 $ incr t2) + | _ => Same.same t) + in incr t handle Same.SAME => t end val monomorph_limit = 10 @@ -93,18 +95,17 @@ create copies of terms containing those constants. To prevent non-termination, there is an upper limit for the number of recursions involved in the fixpoint construction. *) -fun monomorph thy ts = +fun monomorph thy = let - val (ps, ms) = List.partition term_has_tvars ts + fun incr t idx = (incr_tvar_indices idx t, idx + Term.maxidx_of_term t + 1) + fun incr_indices ts = fst (fold_map incr ts 0) fun with_tvar (n, Ts) = let val Ts' = filter typ_has_tvars Ts in if null Ts' then NONE else SOME (n, Ts') end - fun incr t idx = (incr_tvar_indices idx t, idx + Term.maxidx_of_term t + 1) - val rps = fst (fold_map incr ps 0) - |> map (fn r => (r, map_filter with_tvar (consts_of [r]))) + fun extract_consts_with_tvar t = (t, map_filter with_tvar (consts_of [t])) - fun mono count is ces cs ts = + fun mono rps count is ces cs ts = let val spec = specialize thy cs is val (ces', (ts', is')) = fold_map spec (rps ~~ ces) (ts, []) @@ -113,8 +114,15 @@ if null is' then ts' else if count > monomorph_limit then (warning "monomorphization limit reached"; ts') - else mono (count + 1) is' ces' cs' ts' + else mono rps (count + 1) is' ces' cs' ts' end - in mono 0 (consts_of ms) (map (K []) rps) [] ms end + fun mono_all rps ms = if null rps then ms + else mono rps 0 (consts_of ms) (map (K []) rps) [] ms + in + List.partition term_has_tvars + #>> incr_indices + #>> map extract_consts_with_tvar + #-> mono_all + end end diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/SMT/Tools/smt_normalize.ML --- a/src/HOL/SMT/Tools/smt_normalize.ML Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/SMT/Tools/smt_normalize.ML Mon Dec 07 11:18:44 2009 +0100 @@ -75,8 +75,26 @@ | Abs _ => Conv.abs_conv (norm_conv o snd) | _ $ _ => Conv.comb_conv o norm_conv | _ => K Conv.all_conv) ctxt ct + + fun is_normed t = + (case t of + Const (@{const_name All}, _) $ Abs (_, _, u) => is_normed u + | Const (@{const_name All}, _) $ _ => false + | Const (@{const_name All}, _) => false + | Const (@{const_name Ex}, _) $ Abs (_, _, u) => is_normed u + | Const (@{const_name Ex}, _) $ _ => false + | Const (@{const_name Ex}, _) => false + | Const (@{const_name Let}, _) $ u1 $ Abs (_, _, u2) => + is_normed u1 andalso is_normed u2 + | Const (@{const_name Let}, _) $ _ $ _ => false + | Const (@{const_name Let}, _) $ _ => false + | Const (@{const_name Let}, _) => false + | Abs (_, _, u) => is_normed u + | u1 $ u2 => is_normed u1 andalso is_normed u2 + | _ => true) in -val norm_binder_conv = norm_conv +fun norm_binder_conv ctxt ct = + if is_normed (Thm.term_of ct) then Conv.all_conv ct else norm_conv ctxt ct end fun cert ctxt = Thm.cterm_of (ProofContext.theory_of ctxt) @@ -94,6 +112,19 @@ norm_def ctxt (thm RS @{thm fun_cong}) | _ => thm) +fun atomize_conv ctxt ct = + (case Thm.term_of ct of + @{term "op ==>"} $ _ $ _ => + Conv.binop_conv (atomize_conv ctxt) then_conv + Conv.rewr_conv @{thm atomize_imp} + | Const (@{const_name "=="}, _) $ _ $ _ => + Conv.binop_conv (atomize_conv ctxt) then_conv + Conv.rewr_conv @{thm atomize_eq} + | Const (@{const_name all}, _) $ Abs _ => + More_Conv.binder_conv atomize_conv ctxt then_conv + Conv.rewr_conv @{thm atomize_all} + | _ => Conv.all_conv) ct + fun normalize_rule ctxt = Conv.fconv_rule ( Thm.beta_conversion true then_conv @@ -101,7 +132,7 @@ norm_binder_conv ctxt) #> norm_def ctxt #> Drule.forall_intr_vars #> - Conv.fconv_rule (ObjectLogic.atomize then_conv norm_binder_conv ctxt) + Conv.fconv_rule (atomize_conv ctxt) fun instantiate_free (cv, ct) thm = if Term.exists_subterm (equal (Thm.term_of cv)) (Thm.prop_of thm) @@ -289,14 +320,20 @@ fun add_sym t = if AList.defined (op =) defs t then insert (op =) t else I fun add_syms thms = fold (Term.fold_aterms add_sym o Thm.prop_of) thms [] - fun unfold_conv ct = - (case AList.lookup (op =) defs (Term.head_of (Thm.term_of ct)) of + fun unfold_def_conv ds ct = + (case AList.lookup (op =) ds (Term.head_of (Thm.term_of ct)) of SOME (_, eq) => Conv.rewr_conv eq | NONE => Conv.all_conv) ct + + fun unfold_conv ctxt thm = + (case filter (member (op =) (add_syms [thm]) o fst) defs of + [] => thm + | ds => thm |> Conv.fconv_rule + (More_Conv.bottom_conv (K (unfold_def_conv ds)) ctxt)) in fun add_abs_min_max_rules ctxt thms = if Config.get ctxt unfold_defs - then map (Conv.fconv_rule (More_Conv.bottom_conv (K unfold_conv) ctxt)) thms + then map (unfold_conv ctxt) thms else map fst (map_filter (AList.lookup (op =) defs) (add_syms thms)) @ thms end @@ -361,13 +398,23 @@ in_abs repl cvs ct #-> (fn thm => replace ctxt cvs (Thm.rhs_of thm) #>> Thm.transitive thm) in repl [] end + + fun has_free_lambdas t = + (case t of + Const (@{const_name All}, _) $ Abs (_, _, u) => has_free_lambdas u + | Const (@{const_name Ex}, _) $ Abs (_, _, u) => has_free_lambdas u + | Const (@{const_name Let}, _) $ u1 $ Abs (_, _, u2) => + has_free_lambdas u1 orelse has_free_lambdas u2 + | Abs _ => true + | u1 $ u2 => has_free_lambdas u1 orelse has_free_lambdas u2 + | _ => false) in fun lift_lambdas ctxt thms = let val declare_frees = fold (Thm.fold_terms Term.declare_term_frees) fun rewrite f thm cx = - let val (thm', cx') = f (Thm.cprop_of thm) cx - in (Thm.equal_elim thm' thm, cx') end + if not (has_free_lambdas (Thm.prop_of thm)) then (thm, cx) + else f (Thm.cprop_of thm) cx |>> (fn thm' => Thm.equal_elim thm' thm) val rev_int_fst_ord = rev_order o int_ord o pairself fst fun ordered_values tab = @@ -425,8 +472,18 @@ Conv.rewr_conv apply_rule then_conv binop_conv (apply_conv tb ctxt (i-1)) (sub_conv tb ctxt)) ct + fun needs_exp_app tab = Term.exists_subterm (fn + Bound _ $ _ => true + | Const (n, _) => Symtab.defined tab (const n) + | Free (n, _) => Symtab.defined tab (free n) + | _ => false) + + fun rewrite tab ctxt thm = + if not (needs_exp_app tab (Thm.prop_of thm)) then thm + else Conv.fconv_rule (sub_conv tab ctxt) thm + val tab = prune_tab (fold (traverse o Thm.prop_of) thms Symtab.empty) - in map (Conv.fconv_rule (sub_conv tab ctxt)) thms end + in map (rewrite tab ctxt) thms end end diff -r bbd146caa6b2 -r f215f52b7ff1 src/HOL/SMT/Tools/smt_translate.ML --- a/src/HOL/SMT/Tools/smt_translate.ML Mon Dec 07 00:02:54 2009 +0100 +++ b/src/HOL/SMT/Tools/smt_translate.ML Mon Dec 07 11:18:44 2009 +0100 @@ -241,15 +241,42 @@ specifying their meaning are added. *) local - (** Add the marker symbols "term" and "formulas" to separate formulas and + local + fun cons_nr (SConst _) = 0 + | cons_nr (SFree _) = 1 + | cons_nr (SNum _) = 2 + + fun struct_ord (t, u) = int_ord (cons_nr t, cons_nr u) + + fun atoms_ord (SConst (n, _), SConst (m, _)) = fast_string_ord (n, m) + | atoms_ord (SFree (n, _), SFree (m, _)) = fast_string_ord (n, m) + | atoms_ord (SNum (i, _), SNum (j, _)) = int_ord (i, j) + | atoms_ord _ = sys_error "atoms_ord" + + fun types_ord (SConst (_, T), SConst (_, U)) = TermOrd.typ_ord (T, U) + | types_ord (SFree (_, T), SFree (_, U)) = TermOrd.typ_ord (T, U) + | types_ord (SNum (_, T), SNum (_, U)) = TermOrd.typ_ord (T, U) + | types_ord _ = sys_error "types_ord" + + fun fast_sym_ord tu = + (case struct_ord tu of + EQUAL => (case atoms_ord tu of EQUAL => types_ord tu | ord => ord) + | ord => ord) + in + structure Stab = Table(type key = sym val ord = fast_sym_ord) + end + + + (** Add the marker symbols "term" and "formula" to separate formulas and terms. **) val connectives = map make_sconst [@{term True}, @{term False}, @{term Not}, @{term "op &"}, @{term "op |"}, @{term "op -->"}, @{term "op = :: bool => _"}] - fun note false c (ps, fs) = (insert (op =) c ps, fs) - | note true c (ps, fs) = (ps, insert (op =) c fs) + fun insert_sym c = Stab.map_default (c, ()) I + fun note false c (ps, fs) = (insert_sym c ps, fs) + | note true c (ps, fs) = (ps, insert_sym c fs) val term_marker = SConst (@{const_name term}, Term.dummyT) val formula_marker = SConst (@{const_name formula}, Term.dummyT) @@ -316,7 +343,7 @@ val rule = Conv.fconv_rule (unterm_conv ctxt) thm val prop = Thm.prop_of thm val inst = instantiate (Term.add_tvar_names prop []) - fun inst_for T = (singleton intermediate (inst T prop), rule) + fun inst_for T = (rule, singleton intermediate (inst T prop)) in (make_sconst (head_of (Thm.prop_of rule)), inst_for) end val logicals = map (prepare @{context}) @@ -342,10 +369,15 @@ (n = m) andalso Sign.typ_instance thy (T, U) | is_instance _ _ = false - fun lookup_logical thy (c as SConst (_, T)) = - AList.lookup (is_instance thy) logicals c - |> Option.map (fn inst_for => inst_for T) - | lookup_logical _ _ = NONE + fun rule_for thy c T = + AList.lookup (is_instance thy) logicals c + |> Option.map (fn inst_for => inst_for T) + + fun lookup_logical thy (c as SConst (_, T)) (thms, ts) = + (case rule_for thy c T of + SOME (thm, t) => (thm :: thms, t :: ts) + | NONE => (thms, ts)) + | lookup_logical _ _ tss = tss val s_eq = make_sconst @{term "op = :: bool => _"} val s_True = mark_term (SApp (make_sconst @{term True}, [])) @@ -367,7 +399,7 @@ | SApp (c as SConst (@{const_name formula}, _), [u]) => SApp (c, [rewr env false u]) | SApp (c, us) => - let val f = if not loc andalso member (op =) ls c then holds else I + let val f = if not loc andalso Stab.defined ls c then holds else I in f (SApp (rewr_iff c, map (rewr env loc) us)) end | SLet (v, u1, u2) => SLet (v, rewr env loc u1, rewr (is_term u1 :: env) loc u2) @@ -378,14 +410,12 @@ in fun separate thy ts = let - val (ts', (ps, fs)) = fold_map (sep false) ts ([], []) - val eq_name = (fn - (SConst (n, _), SConst (m, _)) => n = m - | (SFree (n, _), SFree (m, _)) => n = m - | _ => false) - val ls = filter (member eq_name fs) ps - val (us, thms) = split_list (map_filter (lookup_logical thy) fs) - in (thms, us @ rewrite ls ts') end + val (ts', (ps, fs)) = fold_map (sep false) ts (Stab.empty, Stab.empty) + fun insert (px as (p, _)) = if Stab.defined fs p then Stab.update px else I + in + Stab.fold (lookup_logical thy o fst) fs ([], []) + ||> append (rewrite (Stab.fold insert ps Stab.empty) ts') + end end diff -r bbd146caa6b2 -r f215f52b7ff1 src/Tools/Code/code_thingol.ML --- a/src/Tools/Code/code_thingol.ML Mon Dec 07 00:02:54 2009 +0100 +++ b/src/Tools/Code/code_thingol.ML Mon Dec 07 11:18:44 2009 +0100 @@ -928,9 +928,9 @@ | NONE => thy; val cs = Symtab.fold (fn (c, (_, NONE)) => cons c | _ => I) ((snd o #constants o Consts.dest o #consts o Sign.rep_sg) thy') []; - fun belongs_here c = - not (exists (fn thy'' => Sign.declared_const thy'' c) (Theory.parents_of thy')) - in if is_some some_thyname then cs else filter belongs_here cs end; + fun belongs_here c = forall + (fn thy'' => not (Sign.declared_const thy'' c)) (Theory.parents_of thy') + in if is_some some_thyname then filter belongs_here cs else cs end; fun read_const_expr "*" = ([], consts_of NONE) | read_const_expr s = if String.isSuffix ".*" s then ([], consts_of (SOME (unsuffix ".*" s)))