merged
authorboehmes
Wed, 03 Nov 2010 17:11:40 +0100
changeset 40334 69930308b896
parent 40333 12a06ad29681 (diff)
parent 40331 07264bbb5f30 (current diff)
child 40335 3e4bb6e7c3ca
child 40340 d1c14898fd04
merged
--- a/src/HOL/Boogie/Examples/Boogie_Dijkstra.certs	Wed Nov 03 15:56:15 2010 +0100
+++ b/src/HOL/Boogie/Examples/Boogie_Dijkstra.certs	Wed Nov 03 17:11:40 2010 +0100
@@ -1,4 +1,4 @@
-a959f1dced399224414912ad7379705a61749faa 6889 0
+6752602a8162146a4b4b0b817f42d730f1852d5d 6889 0
 #2 := false
 decl f11 :: (-> S5 S2 S1)
 decl ?v1!7 :: (-> S2 S2)
--- a/src/HOL/Boogie/Examples/Boogie_Max.certs	Wed Nov 03 15:56:15 2010 +0100
+++ b/src/HOL/Boogie/Examples/Boogie_Max.certs	Wed Nov 03 17:11:40 2010 +0100
@@ -1,4 +1,4 @@
-16ee32e23503be38842c16c90807e66120a960ee 2224 0
+dea36391893064c022de7bc923e15ef446cb4303 2224 0
 #2 := false
 #8 := 0::int
 decl f5 :: (-> int int)
--- a/src/HOL/Boogie/Examples/VCC_Max.certs	Wed Nov 03 15:56:15 2010 +0100
+++ b/src/HOL/Boogie/Examples/VCC_Max.certs	Wed Nov 03 17:11:40 2010 +0100
@@ -1,4 +1,4 @@
-5815fb85125ba62bb3b4a150604c8978e5a08a22 7862 0
+9e8f6c5e5fd53eee967069dced75f48858a605e7 7862 0
 #2 := false
 decl f111 :: (-> S4 S5 int)
 decl f67 :: (-> S5 int S3 S5)
--- a/src/HOL/Multivariate_Analysis/Integration.certs	Wed Nov 03 15:56:15 2010 +0100
+++ b/src/HOL/Multivariate_Analysis/Integration.certs	Wed Nov 03 17:11:40 2010 +0100
@@ -1,4 +1,4 @@
-19e9a49723add29f06290682aca290aa2ab968ea 238 0
+2e15025784d0676586e79b418a67bcb9811380a1 238 0
 #2 := false
 #48 := 0::real
 decl f19 :: (-> S3 S10 real)
@@ -237,7 +237,7 @@
 #486 := [unit-resolution #460 #485]: #453
 [th-lemma #479 #259 #257 #474 #258 #486]: false
 unsat
-96c3a1d2dea133da23272bb1832adcfffc19c650 333 0
+4c0d1f43a6268b5d3a850361d3ff86d073eaf489 333 0
 #2 := false
 #11 := 0::real
 decl ?v2!1 :: real
@@ -571,7 +571,7 @@
 #408 := [lemma #407]: #230
 [th-lemma #406 #301 #408 #396 #303]: false
 unsat
-d083434592d4f729dd1c100279aa204b663fa35c 57 0
+40822b724c71d6702c01ad1e865c13dca0ab3c21 57 0
 #2 := false
 decl f13 :: (-> S4 S4 S5)
 #44 := (:var 0 S4)
@@ -629,7 +629,7 @@
 #264 := [quant-inst]: #263
 [unit-resolution #264 #269 #258]: false
 unsat
-93a3d21a7f84dc839f14b9a0cfcafdfff6c6b0f1 318 0
+ae79dfdacb760a3554ce388b846d335064f674de 318 0
 #2 := false
 #25 := 0::real
 decl f8 :: (-> S4 S2 real)
@@ -948,7 +948,7 @@
 #622 := [th-lemma]: #621
 [unit-resolution #622 #619 #604]: false
 unsat
-26bfbe5c6decad8b4a2114b85a11ff3552d6b060 295 0
+4c36877468848170cffdf0ddcda5eb522e99ab42 295 0
 #2 := false
 #25 := 0::real
 decl f8 :: (-> S4 S2 real)
@@ -1244,7 +1244,7 @@
 #694 := [th-lemma]: #693
 [unit-resolution #694 #691 #677]: false
 unsat
-5d75e298a98eb55cd39dacd22665bd3062cf5345 204 0
+f2fb6a78bd5ef0d3bd81c73f0edb01f05b9ead4b 204 0
 #2 := false
 #46 := 0::real
 decl f5 :: (-> S3 S2 real)
@@ -1449,7 +1449,7 @@
 #533 := [unit-resolution #532 #153]: #473
 [th-lemma #533 #529 #514]: false
 unsat
-7b235442f6856a575f67cb04d6eaa03042f5336e 870 0
+c57edc9b53558e5e0a7337a056a91568e455bc48 870 0
 #2 := false
 #11 := 0::real
 decl f5 :: real
--- a/src/HOL/SMT_Examples/SMT_Examples.certs	Wed Nov 03 15:56:15 2010 +0100
+++ b/src/HOL/SMT_Examples/SMT_Examples.certs	Wed Nov 03 17:11:40 2010 +0100
@@ -1,13 +1,4 @@
-d4b1481d70f20d4d6280999633c905e21d180d13 8 0
-#2 := false
-#1 := true
-#8 := (not true)
-#26 := (iff #8 false)
-#27 := [rewrite]: #26
-#25 := [asserted]: #8
-[mp #25 #27]: false
-unsat
-a38979487be0aafcf2d387180e92dfd3bd43e483 33 0
+24d44e2684a632b0246b194cc850faec2cea7de6 33 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -41,7 +32,16 @@
 #29 := [asserted]: #12
 [mp #29 #49]: false
 unsat
-fd75276ee28b486a6ea1b6b677d04008959d13f8 37 0
+1b7b7e7109fa2efdf94c204be8d611210920badb 8 0
+#2 := false
+#1 := true
+#8 := (not true)
+#26 := (iff #8 false)
+#27 := [rewrite]: #26
+#25 := [asserted]: #8
+[mp #25 #27]: false
+unsat
+10a83d48b539d27c174c61f5874470265d21b40f 37 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -79,7 +79,7 @@
 #29 := [asserted]: #12
 [mp #29 #53]: false
 unsat
-58aaefc3b25d8181c01a2139430686aeca861bf3 66 0
+060c210941c0fd9eca58c8250fc66d664e976010 66 0
 #2 := false
 decl f4 :: S1
 #10 := f4
@@ -146,9 +146,9 @@
 #71 := [and-elim #69]: #40
 [mp #71 #85]: false
 unsat
-a3969d96ad7c1fdd20f7d69abeb13b18bac4be8d 1 0
-unsat
-694292afe609b4087c0435b347aed1c0c0b6b45b 94 0
+b0eed80076353895afe2bbf37d588b79cf593079 1 0
+unsat
+d37af75fba79a43c8aa95dbef345ea660c999f99 94 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -243,7 +243,7 @@
 #39 := [asserted]: #22
 [mp #39 #108]: false
 unsat
-fcb0f1f1909bdd097de1e485a000708289f9f1ed 72 0
+b3ee7b71753d028d8ffbc5d42df5f0f79660f6e7 72 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -316,7 +316,7 @@
 #36 := [asserted]: #19
 [mp #36 #88]: false
 unsat
-36c95d1da5779fd86d36cb33e0f80e4f14e6c4f0 234 0
+b6f4097a3d567e9383135805312389841b9ed5f3 234 0
 #2 := false
 decl f6 :: S1
 #14 := f6
@@ -551,7 +551,7 @@
 #96 := [mp #69 #95]: #91
 [mp #96 #299]: false
 unsat
-44ca45de077963316e54f5cdfef5cb8cd66ac906 52 0
+75e07bc80c3184013212c0a5c60b827b399474ad 52 0
 #2 := false
 decl f4 :: (-> S2 S2 S2)
 #16 := (:var 1 S2)
@@ -604,7 +604,7 @@
 #118 := [quant-inst]: #204
 [unit-resolution #118 #53 #541]: false
 unsat
-f79d03683394ca6e785cbd8e87f4249c3d42307a 2578 0
+836f826330ec23da3f93f44a06ef6c00563d7781 2578 0
 #2 := false
 decl f35 :: S1
 #112 := f35
@@ -3183,7 +3183,7 @@
 #3638 := [unit-resolution #705 #3637 #3636 #3635]: #683
 [unit-resolution #1968 #3638 #3634]: false
 unsat
-3221f6bae508cb0c6bc508c2b8b4600cdb00669d 95 0
+49266526e51dee0fe0083e5120f86525e2ef1056 95 0
 #2 := false
 decl f3 :: (-> int S1)
 decl ?v0!0 :: int
@@ -3279,7 +3279,7 @@
 #102 := [and-elim #101]: #76
 [unit-resolution #102 #115]: false
 unsat
-517d7705593795e4a28f7687bc92edbaaad5e6a6 146 0
+107e72fe657296bfbc7688086b83c6164eff0b08 146 0
 #2 := false
 decl f3 :: (-> S1 S2 S1)
 #9 := (:var 0 S2)
@@ -3426,7 +3426,7 @@
 #261 := [quant-inst]: #256
 [unit-resolution #261 #584 #284]: false
 unsat
-f7796908cca3a39a93067ec7456dca4edfe09069 146 2
+2bb8a8ad07066951b9c2ff8c6c6ea8a4b3a62bfc 146 2
 #2 := false
 decl f3 :: (-> S1 S2 S1)
 #9 := (:var 0 S2)
@@ -3575,7 +3575,7 @@
 unsat
 WARNING: failed to find a pattern for quantifier (quantifier id: k!13)
 
-3d560cfeafa07e8fb4e5aedbf244ed81193a1bdd 91 0
+3415c51851ea95b52ee39d82ddb23d7a42cd9b2f 91 0
 #2 := false
 decl f3 :: (-> S2 S1)
 decl f4 :: S2
@@ -3667,7 +3667,7 @@
 #162 := [quant-inst]: #248
 [unit-resolution #162 #582 #79]: false
 unsat
-6f4135b5f443c9489ab6f839e6371eb6c05021a1 17 0
+44eecf236b490147dbc51a13ab3759021603fcea 17 0
 #2 := false
 #8 := 3::int
 #9 := (= 3::int 3::int)
@@ -3685,7 +3685,7 @@
 #27 := [asserted]: #10
 [mp #27 #36]: false
 unsat
-1fb88686c084cbd29d5379055cf31c165231f0d2 17 0
+f79c070f64eae6123a31ed43ab22ff256427a856 17 0
 #2 := false
 #8 := 3::real
 #9 := (= 3::real 3::real)
@@ -3703,7 +3703,7 @@
 #27 := [asserted]: #10
 [mp #27 #36]: false
 unsat
-4439cb9b553ba6a7d3d7adaf0bccb7b403389495 26 0
+4ebfd0cdcde15d352023497277a471fa091558e8 26 0
 #2 := false
 #11 := 4::int
 #9 := 1::int
@@ -3730,7 +3730,7 @@
 #30 := [asserted]: #13
 [mp #30 #45]: false
 unsat
-f4b4baf086c1953b46b6c8516c9a7e45f6c086ee 41 0
+c45eaaff3b4218ae166b1ee5b57daee45f751625 41 0
 #2 := false
 decl f3 :: int
 #8 := f3
@@ -3772,7 +3772,7 @@
 #33 := [asserted]: #16
 [mp #33 #57]: false
 unsat
-5926d4083f7d2a89c57531d8e87a5d554a39421a 35 0
+c12d97c9fd2930565ac865f67ef562b3c45fbf6a 35 0
 #2 := false
 #9 := 3::int
 #10 := 8::int
@@ -3808,7 +3808,7 @@
 #31 := [asserted]: #14
 [mp #31 #56]: false
 unsat
-53ebe62bcea7dc90158b3082dda2089fed123703 209 0
+7cb5a788981ee8a217912588519fd956ced665e2 209 0
 #2 := false
 #11 := 0::real
 decl f4 :: real
@@ -4018,7 +4018,7 @@
 #231 := [unit-resolution #159 #230]: #150
 [th-lemma #125 #220 #227 #231]: false
 unsat
-cbc9c5a04b9570a386fb97f8ff4491630835be54 42 0
+1e234cc93c775a7f92c9808afe1122152dd4b38c 42 0
 #2 := false
 decl f3 :: (-> S1 S2)
 decl f1 :: S1
@@ -4061,7 +4061,7 @@
 #32 := [asserted]: #15
 [mp #32 #58]: false
 unsat
-732b399d3ae1d48d68db7a2b4fb14062c7ea7650 54 0
+b18c0c1cf966295783ca6ddab09d2dabebd74ff7 54 0
 #2 := false
 #13 := 1::int
 decl f3 :: int
@@ -4116,7 +4116,7 @@
 #33 := [asserted]: #16
 [mp #33 #72]: false
 unsat
-a511ac5eff75bd85fb28de979615bdeb27073e2f 63 0
+3db1a0441939b3cc14e2a4efb4f74cab6c664bd5 63 0
 #2 := false
 #15 := 0::int
 decl f4 :: int
@@ -4180,7 +4180,7 @@
 #81 := [mp #57 #80]: #68
 [mp #81 #93]: false
 unsat
-5e99525435673f50d9e2cedb056a3eef3ca48d0f 35 0
+08fc4e7efc68a91cbed93f860a54fb029c71bcbb 35 0
 #2 := false
 #10 := 5::int
 #8 := 2::int
@@ -4216,7 +4216,7 @@
 #30 := [asserted]: #13
 [mp #30 #54]: false
 unsat
-cb1ff2dbd74d2844a905d03c2bb5dfdcef7b3703 45 0
+3adb493c0d9d387d1aebf7bcb353d3c00a0851a0 45 0
 #2 := false
 #15 := 4::real
 decl f4 :: real
@@ -4262,7 +4262,7 @@
 #65 := [mp #41 #64]: #56
 [th-lemma #65 #52 #43]: false
 unsat
-7357ea99a84507698d605d047a8912506786b005 59 0
+5ee51bc5647785432ba0c87ce1c0376c614df467 59 0
 #2 := false
 #20 := (not false)
 decl f4 :: int
@@ -4322,7 +4322,7 @@
 #39 := [asserted]: #22
 [mp #39 #76]: false
 unsat
-a2e7fe792ce7e828740707e47e962b9013bfaa8c 43 0
+28a095b5ca08adc7ff0222dfacd76cf43a8ba449 43 0
 #2 := false
 decl f3 :: int
 #8 := f3
@@ -4366,7 +4366,7 @@
 #31 := [asserted]: #14
 [mp #31 #62]: false
 unsat
-f746fa8e8060fa7d6624d49afb6c22d0c2467190 86 0
+d13adc55a1937ef83f29c016ef8623fe1fda09eb 86 0
 #2 := false
 decl f3 :: int
 #9 := f3
@@ -4453,7 +4453,7 @@
 #104 := [unit-resolution #82 #103 #96 #87]: #65
 [unit-resolution #104 #117]: false
 unsat
-96de0a1de3d9897dfb99656d5dd83bfdb80fa75e 551 0
+372a6ad969cb318322945cf566c5d0dc9eaab120 551 0
 #2 := false
 #174 := 0::int
 decl f4 :: int
@@ -5005,7 +5005,7 @@
 #617 := [unit-resolution #411 #614]: #421
 [unit-resolution #601 #617 #593 #616]: false
 unsat
-be4350e057381018abf4a5df1b96e44aa5440970 2109 0
+79f1383c7c06e3e99fb5b45b946ee8edd0a67644 2109 0
 #2 := false
 #10 := 0::int
 decl f3 :: int
@@ -7115,7 +7115,7 @@
 #2119 := [unit-resolution #2118 #2109 #2056 #2114 #2113 #2112 #2096 #2108]: #945
 [unit-resolution #1969 #2119 #2109 #2096 #2042 #2105 #2108]: false
 unsat
-9371d51a82e0a1300620d46b4e7e3f2e34923066 52 0
+e5059b0c3e879c6b6b3ce8026895b93ab92e0728 52 0
 #2 := false
 #12 := 1::real
 decl f3 :: real
@@ -7168,7 +7168,7 @@
 #34 := [asserted]: #17
 [mp #34 #70]: false
 unsat
-7d808a299ec3aa6543955e0b52da2db4f14e2ebc 348 0
+58d0d0a0a699999905091a630166f1e00b881d19 348 0
 #2 := false
 #11 := 0::int
 decl f5 :: int
@@ -7517,7 +7517,7 @@
 #638 := [unit-resolution #642 #647]: #643
 [unit-resolution #638 #640 #637]: false
 unsat
-a58c3bad13ae6ef8848c31ae2ecb4d141ea9bdc6 354 0
+4fc7df80f9cc116a2a88bcb88017dc9b0c75f7fc 354 0
 #2 := false
 #11 := 0::int
 decl f5 :: int
@@ -7872,7 +7872,7 @@
 #626 := [unit-resolution #621 #634]: #753
 [unit-resolution #626 #619 #508]: false
 unsat
-cfd6420dc9709ceb6bf8be602fb4605c1ddb5222 101 0
+391853aefaeecebad29422aff20420b5c8400b71 101 0
 #2 := false
 #9 := 0::real
 decl f3 :: real
@@ -7974,7 +7974,7 @@
 #120 := [th-lemma]: #119
 [unit-resolution #120 #116 #109 #43]: false
 unsat
-957b603c67e0eb51df6576d5eeddcc6aa6ccd469 943 0
+fee0ab8e0ed90b0d56c8dc3103c9526d6f1496af 943 0
 #2 := false
 #49 := 1::int
 decl f4 :: (-> int int int)
@@ -8918,7 +8918,7 @@
 #1294 := [unit-resolution #1107 #1293 #1239]: #405
 [unit-resolution #1252 #1294 #1292]: false
 unsat
-e0bd8674b0a8871e3484c1aaf5e9760d6cdde8fa 24 0
+a36cefa1a79f7b6b132d839263e2dbea9c7e87fc 24 0
 #2 := false
 #8 := (exists (vars (?v0 int)) false)
 #9 := (not #8)
@@ -8943,7 +8943,7 @@
 #27 := [asserted]: #10
 [mp #27 #43]: false
 unsat
-20e7b35733689b5c0fe416fc2b22bfe44b252442 24 0
+54fcba387e363cf8083d4867a9793bbccb7a0314 24 0
 #2 := false
 #8 := (exists (vars (?v0 real)) false)
 #9 := (not #8)
@@ -8968,13 +8968,13 @@
 #27 := [asserted]: #10
 [mp #27 #43]: false
 unsat
-c605fee711b129b0bde66fbd9b8f8cc9ce226e9a 1 0
-unsat
-e58017e3173d9778bc4b43bd6c7d6554fa96991e 1 0
-unsat
-0e0dcf19cd5b120a9f262cfa9c01b662a315ee94 1 0
-unsat
-1781c1a480d6415ddb235a621259ce2092732ba5 67 0
+fb9fab32fe487ed4f4e3d6fe3002d02a0faf856f 1 0
+unsat
+04a6b607d97a19c61cf9fb86541a5de438beb133 1 0
+unsat
+12094d1935a50c8a07214f044f89a779adda7144 1 0
+unsat
+5e524c2f74a70173d25f03f6292e4c1715c27295 67 0
 #2 := false
 #9 := 0::int
 #12 := 1::int
@@ -9042,7 +9042,7 @@
 #143 := [trans #141 #80]: #142
 [mp #143 #145]: false
 unsat
-cb54bc1c8221ce33a204ef4756c350ab3a9165fd 82 0
+8d9412b39d1e4ff552ff059a2a38b571d1cc91d5 82 0
 #2 := false
 #9 := (:var 0 int)
 #11 := 0::int
@@ -9125,7 +9125,7 @@
 #35 := [asserted]: #18
 [mp #35 #101]: false
 unsat
-05e26467c63b2926bb1206f4d9498749ac8572cd 78 0
+27ab42ad2d8b0d1fd722c36b1b4da113e0100061 78 0
 #2 := false
 #9 := (:var 0 int)
 #11 := 2::int
@@ -9204,7 +9204,7 @@
 #36 := [asserted]: #19
 [mp #36 #97]: false
 unsat
-9a25b8cd095131859f14e6e15166f75f654f8b36 61 0
+df217f217128f3754a777d8b086332e1f6ca39ed 61 0
 #2 := false
 #13 := (:var 0 int)
 #8 := 2::int
@@ -9266,7 +9266,7 @@
 #35 := [asserted]: #18
 [mp #35 #80]: false
 unsat
-b845be4ad91437fd7de4e1e43e09de89dff87060 111 0
+ae3d6219d877e775dfed10c63209e257accf66b7 111 0
 #2 := false
 #8 := 2::int
 decl ?v0!1 :: int
@@ -9378,7 +9378,7 @@
 #189 := [th-lemma]: #188
 [unit-resolution #189 #132 #130 #131]: false
 unsat
-d516d2245b3e1198319c778f5d87f60364d9480b 89 0
+13bee6926c3836fd51ee6bc754d5c22e812fc512 89 0
 #2 := false
 #8 := 0::int
 decl ?v0!0 :: int
@@ -9468,7 +9468,7 @@
 #172 := [unit-resolution #157 #95]: #171
 [unit-resolution #172 #170 #167]: false
 unsat
-16973ba3459b683ba763cfd9d1b131b50880d52b 83 2
+d8021ae1b4589558d9fd489bf446659dddb6bd92 83 2
 #2 := false
 #9 := 0::int
 #8 := (:var 0 int)
@@ -9554,7 +9554,7 @@
 unsat
 WARNING: failed to find a pattern for quantifier (quantifier id: k!9)
 
-6a2477ce7e396f5a6b8350494c34556e3187382b 180 2
+d2e44415b02dc3e73faa264730b98a3e42a2c4b7 180 2
 #2 := false
 #16 := 3::int
 #37 := -1::int
@@ -9737,7 +9737,7 @@
 unsat
 WARNING: failed to find a pattern for quantifier (quantifier id: k!9)
 
-2c2ba5876a1ae5b4aacba3ec088a92e8517d1db5 68 0
+4b7d931172988b3d273106901290917cf166502b 68 0
 #2 := false
 #16 := 1::int
 #13 := (:var 1 int)
@@ -9806,7 +9806,7 @@
 #37 := [asserted]: #20
 [mp #37 #88]: false
 unsat
-3bc68a4890101c78401460850d978a5b784ef891 107 0
+3bad73f4a46430e1cd795e36a5d12f24c1d02fca 107 0
 #2 := false
 #8 := 0::int
 decl ?v1!1 :: int
@@ -9914,7 +9914,7 @@
 #128 := [and-elim #106]: #93
 [th-lemma #128 #129 #130]: false
 unsat
-69398382e4236c1f3e9ea09ef96d5056d4f3fa6e 117 0
+87d0780ec63c3625f21f826c074cd13be4d62e3f 117 0
 #2 := false
 #8 := 0::int
 decl ?v1!1 :: int
@@ -10032,7 +10032,7 @@
 #193 := [unit-resolution #192 #115]: #103
 [unit-resolution #193 #135]: false
 unsat
-4e8319ba61c4c37d1677e9a262b47203f2bf5468 148 0
+8cf44aadad8c0d87f2f57333fcb342b5ab385732 148 0
 #2 := false
 #149 := (not false)
 #11 := 0::int
@@ -10181,7 +10181,7 @@
 #163 := [mp #131 #162]: #158
 [mp #163 #186]: false
 unsat
-a21b19aa84de923d8a0d2dc0af8016cd64248558 67 0
+505b296c347b1d80912f4657132db5ad5ac9be4f 67 0
 #2 := false
 #8 := (:var 0 int)
 #9 := (pattern #8)
@@ -10249,9 +10249,9 @@
 #35 := [asserted]: #18
 [mp #35 #85]: false
 unsat
-53ac944328a76df2270bb4117390a226d92d4e8d 1 0
-unsat
-80d97536e18b652f6d95d83165f7e113fa8206dd 75 0
+69b5f9a8c6931a47249060824265e608f534018d 1 0
+unsat
+153386649b53dd5f988fd1bc7b72bcd290f53da9 75 0
 #2 := false
 #10 := 1::int
 decl f5 :: int
@@ -10327,7 +10327,7 @@
 #37 := [asserted]: #20
 [mp #37 #91]: false
 unsat
-1290567b7974f50913459a9370404d1fb27c5c04 62 0
+68a3071b380f0f7c03304499d1f2835f0bf361c3 62 0
 #2 := false
 decl f4 :: real
 #10 := f4
@@ -10390,7 +10390,7 @@
 #37 := [asserted]: #20
 [mp #37 #79]: false
 unsat
-539e99c284f7a3ed7bb350da08f51bfa73f9e832 141 0
+b6399504e06b7554863175061a53aa7486cc9086 141 0
 #2 := false
 decl f6 :: int
 #13 := f6
@@ -10532,7 +10532,7 @@
 #50 := [asserted]: #33
 [mp #50 #155]: false
 unsat
-95f708529404688f5c32519f5db83b1972672eb0 252 0
+161d4df3b39a91bf1bc07402c22e85ffba8398b2 252 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -10785,7 +10785,7 @@
 #544 := [unit-resolution #537 #456]: #562
 [th-lemma #460 #544 #542 #551]: false
 unsat
-069a886d4e32ad09f893e803be1b967f3568fe31 227 0
+2eacc8bb83fecb0fe81d96fc93fc64a7d11a9e4d 227 0
 #2 := false
 #27 := 3::int
 decl f4 :: (-> S2 int)
@@ -11013,7 +11013,7 @@
 #607 := [unit-resolution #602 #605]: #632
 [th-lemma #161 #607 #160]: false
 unsat
-dc0cfb9f55d790de5cad944289080b012df32109 367 0
+61d261a95e60947f23f698475332084ad9cfd094 367 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -11381,7 +11381,7 @@
 #461 := [th-lemma]: #460
 [unit-resolution #461 #469 #457]: false
 unsat
-1119baa29d78de9d8299759a1e2778fd64cb45ac 299 0
+ddf1adc32377020a68931e791f8d3bc93a479493 299 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -11681,7 +11681,7 @@
 #603 := [unit-resolution #617 #615]: #685
 [th-lemma #625 #190 #603 #630]: false
 unsat
-bc26a0abfecc650600742f8182ea35bd8e9c0657 458 0
+044639db28fa915f30475668c634e5237efaa068 458 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -12140,7 +12140,7 @@
 #355 := [unit-resolution #374 #372]: #373
 [unit-resolution #355 #328]: false
 unsat
-d28cb53d0b19f6ffbd9f6906e69a9e4028ab5365 161 0
+35a0968e29848376b1a21560a270f15f6d19aed4 161 0
 #2 := false
 #13 := 0::int
 decl f5 :: int
@@ -12302,7 +12302,7 @@
 #366 := [unit-resolution #644 #660]: #652
 [th-lemma #661 #366 #266]: false
 unsat
-3bdd721710ce740508c48327f8e9174f1a8cdb9c 604 0
+30478456884b028b09fee79763641a90a5f3dc95 604 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -12907,7 +12907,7 @@
 #1005 := [unit-resolution #599 #859]: #455
 [unit-resolution #1005 #1004 #994]: false
 unsat
-9702672d0e4ef4f07fbabb8ea1413e6a7036c6b3 61 0
+b7294e8991937b94c2eeb87ee3638d9d5f007d01 61 0
 #2 := false
 decl f7 :: S3
 #12 := f7
@@ -12969,7 +12969,7 @@
 #59 := [not-or-elim #58]: #57
 [unit-resolution #59 #251]: false
 unsat
-eb96c266a8e3d434df367635dd7c28e36177b61a 116 0
+0eb592b66cd32b0b3c146dc31bf114d3abca5113 116 0
 #2 := false
 decl f10 :: (-> S5 S3)
 decl f7 :: S5
@@ -13086,7 +13086,7 @@
 #81 := [not-or-elim #78]: #80
 [unit-resolution #81 #612]: false
 unsat
-9aa5c4fb11199431a576a38868b15130e8351add 192 0
+919519ba12504066a1609e5f376b9f35de340ebd 192 0
 #2 := false
 decl f6 :: (-> S3 S2 S4)
 decl f3 :: S2
@@ -13279,7 +13279,7 @@
 #73 := [not-or-elim #70]: #72
 [unit-resolution #73 #505]: false
 unsat
-25babfdee044def80821e354fcd8abca6147a0b0 80 0
+0e78b14dde5af897ffb16aaeab92efe89c61b5d1 80 0
 #2 := false
 decl f6 :: (-> S2 S3 S1)
 decl f5 :: S3
@@ -13360,7 +13360,7 @@
 #75 := [not-or-elim #69]: #74
 [mp #75 #96]: false
 unsat
-608cd0071a67598a13af0858c9e1341886caf8cc 128 0
+df98f2515329e244654c3b6826b0db995088c21e 128 0
 #2 := false
 decl f3 :: (-> S2 S2)
 #15 := (:var 0 S2)
@@ -13489,7 +13489,7 @@
 #224 := [quant-inst]: #566
 [unit-resolution #224 #575 #583]: false
 unsat
-737f3f173e29756f346a0a821d7647d108111546 469 0
+be52fda02d5daa6359d2f1d2bccf2f909cea5a49 469 0
 #2 := false
 decl f8 :: (-> S2 S4 S4)
 decl f9 :: S4
@@ -13959,7 +13959,7 @@
 #173 := [asserted]: #43
 [unit-resolution #173 #814]: false
 unsat
-5cfea173c08e120333c1dea606b9463cfcc6450a 38 0
+ee30427d464b4fb3f94aa1806f026182963de849 38 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -13998,7 +13998,7 @@
 #31 := [asserted]: #14
 [mp #31 #54]: false
 unsat
-9cf33fdca403c6c514f1cd0e17b6b0a250477095 366 0
+bb6927e05e73f0d1fe00658a23b5a23277a4c6fa 366 0
 #2 := false
 decl f3 :: (-> int S2)
 #41 := 6::int
@@ -14365,7 +14365,7 @@
 #187 := [asserted]: #44
 [unit-resolution #187 #404]: false
 unsat
-f72e33edaef326a0ed844a14ae54b706945ff4d5 1271 0
+760a08d06b818c4b3a173eacf882e5d9145febb7 1271 0
 #2 := false
 decl f6 :: (-> int int int)
 #12 := 2::int
@@ -15637,7 +15637,7 @@
 #615 := [unit-resolution #638 #1762]: #367
 [unit-resolution #615 #1764]: false
 unsat
-59b518b007738eb00dbca158af8db9e067af1dee 76 0
+1739856e83271d60ba99b4dd0f8fab6bba11b19a 76 0
 #2 := false
 decl f3 :: (-> int S1)
 #12 := (:var 0 int)
@@ -15714,7 +15714,7 @@
 #689 := [quant-inst]: #688
 [unit-resolution #689 #158 #1022]: false
 unsat
-997a0c6c7b0815f9412f3484edb90c328a2f5296 478 0
+e1c7435780cfee6dd8c9bac28159418631b73635 478 0
 #2 := false
 decl f7 :: (-> S4 S2)
 decl f8 :: (-> S1 S4)
--- a/src/HOL/SMT_Examples/SMT_Tests.certs	Wed Nov 03 15:56:15 2010 +0100
+++ b/src/HOL/SMT_Examples/SMT_Tests.certs	Wed Nov 03 17:11:40 2010 +0100
@@ -1,4 +1,4 @@
-d4b1481d70f20d4d6280999633c905e21d180d13 8 0
+1b7b7e7109fa2efdf94c204be8d611210920badb 8 0
 #2 := false
 #1 := true
 #8 := (not true)
@@ -7,7 +7,7 @@
 #25 := [asserted]: #8
 [mp #25 #27]: false
 unsat
-a38979487be0aafcf2d387180e92dfd3bd43e483 33 0
+24d44e2684a632b0246b194cc850faec2cea7de6 33 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -41,7 +41,7 @@
 #29 := [asserted]: #12
 [mp #29 #49]: false
 unsat
-ac5b1925e47f9c59b180fdccd321c68a4a01a710 16 0
+e13aa83df86f7aa731de8803590214f1f328e559 16 0
 #2 := false
 #8 := (not false)
 #9 := (not #8)
@@ -58,7 +58,7 @@
 #26 := [asserted]: #9
 [mp #26 #35]: false
 unsat
-b2faf72eaa234b8ac1acedfef5768f99ca3da86b 41 0
+f420673acb14abe98ee018177f96f582264715f6 41 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -100,7 +100,7 @@
 #30 := [asserted]: #13
 [mp #30 #57]: false
 unsat
-b13645ce0b47b432b924b38e0bebde6cbcb236f9 21 0
+1ca9ca5e02de1f4179a12b1248e2289c51261af2 21 0
 #2 := false
 #1 := true
 #8 := (not true)
@@ -122,7 +122,7 @@
 #27 := [asserted]: #10
 [mp #27 #40]: false
 unsat
-fa3a2c67c2833da196c4009cb283e94a9f22829b 65 0
+cdbc0ed6463ef1f60801c650813ddb76e5fc1674 65 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -188,7 +188,7 @@
 #33 := [asserted]: #16
 [mp #33 #81]: false
 unsat
-8ec60d0baade8bddd39b6e00ec153f6bd8949184 16 0
+717a63b9f4d0d299b9c3ce33521d4ac56124d7b8 16 0
 #2 := false
 #1 := true
 #8 := (and true true)
@@ -205,7 +205,7 @@
 #26 := [asserted]: #9
 [mp #26 #35]: false
 unsat
-85a9b542a9c6d64e778f2449f892d6d55e153689 29 0
+c378fcdabec52ebd4390861a6f8953415c34a0b9 29 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -235,7 +235,7 @@
 #28 := [asserted]: #11
 [mp #28 #45]: false
 unsat
-b448617db1567a507fc596f5b21ade645ca6e0f9 16 0
+383085ca96bed3199fce8a7516860e635411bc13 16 0
 #2 := false
 #1 := true
 #8 := (or true false)
@@ -252,7 +252,7 @@
 #26 := [asserted]: #9
 [mp #26 #35]: false
 unsat
-a21434fdffa6243cc7410eb0aff669b84c5be474 41 0
+b8d5743ec1146548a209ace4cd6155117ecb0983 41 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -294,7 +294,7 @@
 #30 := [asserted]: #13
 [mp #30 #57]: false
 unsat
-bf545ecaa58049cbf454eac70ee3077f64564cca 16 0
+bfcbf10bac83ae3af48158f2275ff2d80613bb1c 16 0
 #2 := false
 #1 := true
 #8 := (implies false true)
@@ -311,7 +311,7 @@
 #26 := [asserted]: #9
 [mp #26 #35]: false
 unsat
-a6a664cc4c3ff45fb3211b72c0f520208b902c9b 47 0
+1318ba8c39667bffead89e0e37453cef395b803a 47 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -359,7 +359,7 @@
 #32 := [asserted]: #15
 [mp #32 #62]: false
 unsat
-9a169ba4d23a9080465edad5616230c8b4e1ef98 149 0
+3613b4af790179e90308b88e5d17e375488860dc 149 0
 #2 := false
 decl f5 :: S1
 #12 := f5
@@ -509,7 +509,7 @@
 #109 := [def-axiom]: #108
 [unit-resolution #109 #165 #164 #161]: false
 unsat
-d99e41f56c960ba88eb8ca95c5a49bd2181a7626 47 0
+f66e70c965ea5e45c5d8d8afc12c5c9d8f438bbf 47 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -557,7 +557,7 @@
 #32 := [asserted]: #15
 [mp #32 #62]: false
 unsat
-8d07b6d671ef5c9eedcaa35c22d5f1c7124504cb 66 0
+6a02b3f460d6b73a1c8bb9bc10adaf8bab0c8e8d 66 0
 #2 := false
 decl f3 :: S1
 #8 := f3
@@ -624,7 +624,7 @@
 #95 := [unit-resolution #86 #65]: #94
 [unit-resolution #95 #93 #92]: false
 unsat
-a8e5086b6e21c7bf961a22426cb7ae14847089d7 55 0
+6ad20e70359f46e3ce1c064a3b8026cad7cd2ff8 55 0
 #2 := false
 decl f3 :: S1
 #8 := f3
@@ -680,7 +680,7 @@
 #71 := [and-elim #70]: #33
 [mp #71 #77]: false
 unsat
-415ad6a91bb75e131bb05d34f1965ab914825b25 67 0
+6b05ab468934ffcc0e31bde41bfd81d0a9deefeb 67 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -748,7 +748,7 @@
 #38 := [asserted]: #21
 [mp #38 #80]: false
 unsat
-e2d0843914ae918fb9bd06a2d6949232327217fa 55 0
+2b253648b79acb0e52fb9e262cb32419808d9871 55 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -804,7 +804,7 @@
 #33 := [asserted]: #16
 [mp #33 #70]: false
 unsat
-8b8741030ee2ece2c8d6b3906a1951bc56d9b885 67 0
+641947287e52d98b055b0c416150e15eb1a766da 67 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -872,7 +872,7 @@
 #38 := [asserted]: #21
 [mp #38 #80]: false
 unsat
-00d9c16458cf2825e776c32505a513a412ede70f 55 0
+9b964feeca237f6b2088e905866f89fe7614b790 55 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -928,7 +928,7 @@
 #33 := [asserted]: #16
 [mp #33 #70]: false
 unsat
-a0ca672c65c25c024851f833f39bfb2c705ec387 186 0
+d314e49b3b13f8d1c45bdec28f1a923eafa9dd30 186 0
 #2 := false
 decl f5 :: S1
 #12 := f5
@@ -1115,7 +1115,7 @@
 #118 := [def-axiom]: #117
 [unit-resolution #118 #203 #201]: false
 unsat
-bca31cbd8bb6114896c32a11dfae7025f2fc07b1 49 0
+9edb7fb964a6bff17daa4ba37de7c9c60f75b958 49 0
 #2 := false
 decl f3 :: S1
 #8 := f3
@@ -1165,7 +1165,41 @@
 #63 := [and-elim #61]: #34
 [mp #63 #69]: false
 unsat
-f5031e01f448cd128a3cce562b470d23d1a8bc59 54 0
+a7388049ad99f131accb8444cd89b6a9c1fac45f 33 0
+#2 := false
+decl f1 :: S1
+#4 := f1
+decl f3 :: S1
+#8 := f3
+#9 := (= f3 f1)
+#10 := (not #9)
+#11 := (ite #9 #9 #10)
+#12 := (not #11)
+#48 := (iff #12 false)
+#1 := true
+#43 := (not true)
+#46 := (iff #43 false)
+#47 := [rewrite]: #46
+#44 := (iff #12 #43)
+#41 := (iff #11 true)
+#30 := (= f1 f3)
+#33 := (not #30)
+#36 := (ite #30 #30 #33)
+#39 := (iff #36 true)
+#40 := [rewrite]: #39
+#37 := (iff #11 #36)
+#34 := (iff #10 #33)
+#31 := (iff #9 #30)
+#32 := [rewrite]: #31
+#35 := [monotonicity #32]: #34
+#38 := [monotonicity #32 #32 #35]: #37
+#42 := [trans #38 #40]: #41
+#45 := [monotonicity #42]: #44
+#49 := [trans #45 #47]: #48
+#29 := [asserted]: #12
+[mp #29 #49]: false
+unsat
+60c47bbe18daad2442ee45433370ee0806f6bb96 54 0
 #2 := false
 decl f3 :: S1
 #8 := f3
@@ -1220,7 +1254,7 @@
 #68 := [and-elim #66]: #34
 [mp #68 #74]: false
 unsat
-6bcac7ed9b4a6f3af0933f64ee0cb316b51a44ed 33 0
+39f56c1d543d6413fc0dc639b2b6f15664655196 33 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -1228,7 +1262,7 @@
 #8 := f3
 #9 := (= f3 f1)
 #10 := (not #9)
-#11 := (ite #9 #9 #10)
+#11 := (ite #10 #10 #9)
 #12 := (not #11)
 #48 := (iff #12 false)
 #1 := true
@@ -1239,22 +1273,22 @@
 #41 := (iff #11 true)
 #30 := (= f1 f3)
 #33 := (not #30)
-#36 := (ite #30 #30 #33)
+#36 := (ite #33 #33 #30)
 #39 := (iff #36 true)
 #40 := [rewrite]: #39
 #37 := (iff #11 #36)
-#34 := (iff #10 #33)
 #31 := (iff #9 #30)
 #32 := [rewrite]: #31
+#34 := (iff #10 #33)
 #35 := [monotonicity #32]: #34
-#38 := [monotonicity #32 #32 #35]: #37
+#38 := [monotonicity #35 #35 #32]: #37
 #42 := [trans #38 #40]: #41
 #45 := [monotonicity #42]: #44
 #49 := [trans #45 #47]: #48
 #29 := [asserted]: #12
 [mp #29 #49]: false
 unsat
-38d7d5f12a8c933e456bba4a04c7645f4c87ea49 60 0
+4262551db767bfb5375132641dc2c0e90be1daa4 60 0
 #2 := false
 decl f4 :: S1
 #10 := f4
@@ -1315,41 +1349,26 @@
 #70 := [mp #35 #67]: #64
 [mp #70 #68]: false
 unsat
-be3ab8b5e09f8f942728ba1af0512891f56e0c5b 33 0
-#2 := false
-decl f1 :: S1
-#4 := f1
-decl f3 :: S1
-#8 := f3
-#9 := (= f3 f1)
+6a7b76cfae07a340fb39c8963a01cd95eedd8bf9 18 0
+#2 := false
+decl f3 :: S2
+#8 := f3
+#9 := (= f3 f3)
 #10 := (not #9)
-#11 := (ite #10 #10 #9)
-#12 := (not #11)
-#48 := (iff #12 false)
-#1 := true
-#43 := (not true)
-#46 := (iff #43 false)
-#47 := [rewrite]: #46
-#44 := (iff #12 #43)
-#41 := (iff #11 true)
-#30 := (= f1 f3)
-#33 := (not #30)
-#36 := (ite #33 #33 #30)
-#39 := (iff #36 true)
-#40 := [rewrite]: #39
-#37 := (iff #11 #36)
-#31 := (iff #9 #30)
-#32 := [rewrite]: #31
-#34 := (iff #10 #33)
-#35 := [monotonicity #32]: #34
-#38 := [monotonicity #35 #35 #32]: #37
-#42 := [trans #38 #40]: #41
-#45 := [monotonicity #42]: #44
-#49 := [trans #45 #47]: #48
-#29 := [asserted]: #12
-[mp #29 #49]: false
-unsat
-27121de8ceb5985c14cca2c4563e9cad4d2ebd3c 79 0
+#35 := (iff #10 false)
+#1 := true
+#30 := (not true)
+#33 := (iff #30 false)
+#34 := [rewrite]: #33
+#31 := (iff #10 #30)
+#28 := (iff #9 true)
+#29 := [rewrite]: #28
+#32 := [monotonicity #29]: #31
+#36 := [trans #32 #34]: #35
+#27 := [asserted]: #10
+[mp #27 #36]: false
+unsat
+09afbbf0eb362cf37facfae99f9d6f31556e820b 79 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -1429,26 +1448,37 @@
 #36 := [asserted]: #19
 [mp #36 #93]: false
 unsat
-aa78c56be2c8312419ab25323cf112e3e8809e9f 18 0
+902a92cdc108cc8b99cf8896d6549c8ca538e3d0 29 0
 #2 := false
 decl f3 :: S2
 #8 := f3
-#9 := (= f3 f3)
-#10 := (not #9)
-#35 := (iff #10 false)
-#1 := true
-#30 := (not true)
-#33 := (iff #30 false)
-#34 := [rewrite]: #33
-#31 := (iff #10 #30)
-#28 := (iff #9 true)
-#29 := [rewrite]: #28
-#32 := [monotonicity #29]: #31
-#36 := [trans #32 #34]: #35
-#27 := [asserted]: #10
-[mp #27 #36]: false
-unsat
-dc14c19019afcaa63507e4b503184496ed6bfd2f 94 0
+decl f4 :: S2
+#9 := f4
+#11 := (= f4 f3)
+#10 := (= f3 f4)
+#12 := (implies #10 #11)
+#13 := (not #12)
+#45 := (iff #13 false)
+#1 := true
+#40 := (not true)
+#43 := (iff #40 false)
+#44 := [rewrite]: #43
+#41 := (iff #13 #40)
+#38 := (iff #12 true)
+#33 := (implies #10 #10)
+#36 := (iff #33 true)
+#37 := [rewrite]: #36
+#34 := (iff #12 #33)
+#31 := (iff #11 #10)
+#32 := [rewrite]: #31
+#35 := [monotonicity #32]: #34
+#39 := [trans #35 #37]: #38
+#42 := [monotonicity #39]: #41
+#46 := [trans #42 #44]: #45
+#30 := [asserted]: #13
+[mp #30 #46]: false
+unsat
+be971aad38d2b7ade1dc5cd9703570a52b3c13d8 94 0
 #2 := false
 decl f5 :: S1
 #13 := f5
@@ -1543,37 +1573,42 @@
 #96 := [not-or-elim #89]: #70
 [mp #96 #112]: false
 unsat
-8d3a435e96c2d773a90e94525d09aa8a352d27d6 29 0
-#2 := false
+adac1ab250a9687a951445e1ab79aef512dbc4ce 34 0
+#2 := false
+decl f5 :: S2
+#11 := f5
 decl f3 :: S2
 #8 := f3
+#14 := (= f3 f5)
 decl f4 :: S2
 #9 := f4
-#11 := (= f4 f3)
+#12 := (= f4 f5)
+#58 := (iff #12 #14)
+#56 := (iff #14 #12)
 #10 := (= f3 f4)
-#12 := (implies #10 #11)
-#13 := (not #12)
-#45 := (iff #13 false)
-#1 := true
-#40 := (not true)
-#43 := (iff #40 false)
-#44 := [rewrite]: #43
-#41 := (iff #13 #40)
-#38 := (iff #12 true)
-#33 := (implies #10 #10)
-#36 := (iff #33 true)
+#13 := (and #10 #12)
+#34 := (not #13)
+#35 := (or #34 #14)
+#38 := (not #35)
+#15 := (implies #13 #14)
+#16 := (not #15)
+#39 := (iff #16 #38)
+#36 := (iff #15 #35)
 #37 := [rewrite]: #36
-#34 := (iff #12 #33)
-#31 := (iff #11 #10)
-#32 := [rewrite]: #31
-#35 := [monotonicity #32]: #34
-#39 := [trans #35 #37]: #38
-#42 := [monotonicity #39]: #41
-#46 := [trans #42 #44]: #45
-#30 := [asserted]: #13
-[mp #30 #46]: false
-unsat
-682b764e75beeea86518e9d265c22d014c6c1f1d 114 0
+#40 := [monotonicity #37]: #39
+#33 := [asserted]: #16
+#43 := [mp #33 #40]: #38
+#41 := [not-or-elim #43]: #13
+#42 := [and-elim #41]: #10
+#57 := [monotonicity #42]: #56
+#59 := [symm #57]: #58
+#44 := [and-elim #41]: #12
+#54 := [mp #44 #59]: #14
+#45 := (not #14)
+#46 := [not-or-elim #43]: #45
+[unit-resolution #46 #54]: false
+unsat
+e22b0ec4c7a382fdc38d1cae4e9ead0e7119241c 114 0
 #2 := false
 decl f5 :: S1
 #13 := f5
@@ -1688,42 +1723,35 @@
 #136 := [unit-resolution #109 #135]: #87
 [unit-resolution #93 #136 #134]: false
 unsat
-7d6e447cf6e1145f4f9a866bcc3cde4710e17c79 34 0
-#2 := false
-decl f5 :: S2
-#11 := f5
+fecb07c630f2b4838d9143ebd9c448ef1d8c0d9f 27 0
+#2 := false
+decl f5 :: (-> S2 S2)
+decl f4 :: S2
+#9 := f4
+#12 := (f5 f4)
 decl f3 :: S2
 #8 := f3
-#14 := (= f3 f5)
-decl f4 :: S2
-#9 := f4
-#12 := (= f4 f5)
-#58 := (iff #12 #14)
-#56 := (iff #14 #12)
+#11 := (f5 f3)
+#13 := (= #11 #12)
 #10 := (= f3 f4)
-#13 := (and #10 #12)
-#34 := (not #13)
-#35 := (or #34 #14)
-#38 := (not #35)
-#15 := (implies #13 #14)
-#16 := (not #15)
-#39 := (iff #16 #38)
-#36 := (iff #15 #35)
-#37 := [rewrite]: #36
-#40 := [monotonicity #37]: #39
-#33 := [asserted]: #16
-#43 := [mp #33 #40]: #38
-#41 := [not-or-elim #43]: #13
-#42 := [and-elim #41]: #10
-#57 := [monotonicity #42]: #56
-#59 := [symm #57]: #58
-#44 := [and-elim #41]: #12
-#54 := [mp #44 #59]: #14
-#45 := (not #14)
-#46 := [not-or-elim #43]: #45
-[unit-resolution #46 #54]: false
-unsat
-c134dad603b5004748b4c36796dfbdf41bc232cc 121 0
+#33 := (not #10)
+#34 := (or #33 #13)
+#37 := (not #34)
+#14 := (implies #10 #13)
+#15 := (not #14)
+#38 := (iff #15 #37)
+#35 := (iff #14 #34)
+#36 := [rewrite]: #35
+#39 := [monotonicity #36]: #38
+#32 := [asserted]: #15
+#42 := [mp #32 #39]: #37
+#40 := [not-or-elim #42]: #10
+#51 := [monotonicity #40]: #13
+#41 := (not #13)
+#43 := [not-or-elim #42]: #41
+[unit-resolution #43 #51]: false
+unsat
+bd0235065d3ae8e8f7120ef8c728cacf6335092d 121 0
 #2 := false
 decl f5 :: S1
 #13 := f5
@@ -1845,16 +1873,17 @@
 #99 := [not-or-elim #92]: #98
 [mp #99 #138]: false
 unsat
-810792c4ea80c0bc3287d99f969f1a65dc039da5 27 0
-#2 := false
-decl f5 :: (-> S2 S2)
+d0fff77820573b42e578c359c531050dc8cc1cb7 31 0
+#2 := false
+decl f5 :: (-> S2 S2 S3)
+decl f3 :: S2
+#8 := f3
 decl f4 :: S2
 #9 := f4
-#12 := (f5 f4)
-decl f3 :: S2
-#8 := f3
-#11 := (f5 f3)
+#12 := (f5 f4 f3)
+#11 := (f5 f3 f4)
 #13 := (= #11 #12)
+#53 := (= #12 #11)
 #10 := (= f3 f4)
 #33 := (not #10)
 #34 := (or #33 #13)
@@ -1868,12 +1897,15 @@
 #32 := [asserted]: #15
 #42 := [mp #32 #39]: #37
 #40 := [not-or-elim #42]: #10
-#51 := [monotonicity #40]: #13
+#51 := (= f4 f3)
+#52 := [symm #40]: #51
+#54 := [monotonicity #52 #40]: #53
+#49 := [symm #54]: #13
 #41 := (not #13)
 #43 := [not-or-elim #42]: #41
-[unit-resolution #43 #51]: false
-unsat
-7afff0259006c1c4b6a802d510f1b96695b3e9ad 110 0
+[unit-resolution #43 #49]: false
+unsat
+b0ca15f9e66f88090a8bcf746cc11c5e9df6c55c 110 0
 #2 := false
 decl f4 :: S1
 #10 := f4
@@ -1984,39 +2016,71 @@
 #84 := [and-elim #83]: #44
 [mp #84 #129]: false
 unsat
-09e564f98c53b63bab667092b7072fa2b674fa08 31 0
-#2 := false
-decl f5 :: (-> S2 S2 S3)
-decl f3 :: S2
-#8 := f3
+18f8f90b1403ab11e524a667a0fd98ca5bbf61ca 63 0
+#2 := false
+decl f3 :: (-> S2 S2)
 decl f4 :: S2
-#9 := f4
-#12 := (f5 f4 f3)
-#11 := (f5 f3 f4)
-#13 := (= #11 #12)
-#53 := (= #12 #11)
-#10 := (= f3 f4)
-#33 := (not #10)
-#34 := (or #33 #13)
-#37 := (not #34)
-#14 := (implies #10 #13)
-#15 := (not #14)
-#38 := (iff #15 #37)
-#35 := (iff #14 #34)
-#36 := [rewrite]: #35
-#39 := [monotonicity #36]: #38
-#32 := [asserted]: #15
-#42 := [mp #32 #39]: #37
-#40 := [not-or-elim #42]: #10
-#51 := (= f4 f3)
-#52 := [symm #40]: #51
-#54 := [monotonicity #52 #40]: #53
-#49 := [symm #54]: #13
-#41 := (not #13)
-#43 := [not-or-elim #42]: #41
-[unit-resolution #43 #49]: false
-unsat
-83b90287eef3783de4d8fa4aad70d03dd0abddbf 127 0
+#8 := f4
+#9 := (f3 f4)
+#46 := (= f4 #9)
+#10 := (f3 #9)
+#12 := (f3 #10)
+#78 := (= #12 #9)
+#76 := (= #9 #12)
+#37 := (= f4 #10)
+#13 := (f3 #12)
+#14 := (f3 #13)
+#40 := (= f4 #14)
+#43 := (and #37 #40)
+#52 := (not #43)
+#53 := (or #52 #46)
+#58 := (not #53)
+#17 := (= #9 f4)
+#15 := (= #14 f4)
+#11 := (= #10 f4)
+#16 := (and #11 #15)
+#18 := (implies #16 #17)
+#19 := (not #18)
+#59 := (iff #19 #58)
+#56 := (iff #18 #53)
+#49 := (implies #43 #46)
+#54 := (iff #49 #53)
+#55 := [rewrite]: #54
+#50 := (iff #18 #49)
+#47 := (iff #17 #46)
+#48 := [rewrite]: #47
+#44 := (iff #16 #43)
+#41 := (iff #15 #40)
+#42 := [rewrite]: #41
+#38 := (iff #11 #37)
+#39 := [rewrite]: #38
+#45 := [monotonicity #39 #42]: #44
+#51 := [monotonicity #45 #48]: #50
+#57 := [trans #51 #55]: #56
+#60 := [monotonicity #57]: #59
+#36 := [asserted]: #19
+#63 := [mp #36 #60]: #58
+#61 := [not-or-elim #63]: #43
+#62 := [and-elim #61]: #37
+#77 := [monotonicity #62]: #76
+#79 := [symm #77]: #78
+#81 := (= f4 #12)
+#67 := (= #14 #12)
+#70 := (= #12 #14)
+#72 := (= #10 #13)
+#74 := (= #13 #10)
+#75 := [monotonicity #79]: #74
+#73 := [symm #75]: #72
+#71 := [monotonicity #73]: #70
+#80 := [symm #71]: #67
+#64 := [and-elim #61]: #40
+#82 := [trans #64 #80]: #81
+#83 := [trans #82 #79]: #46
+#65 := (not #46)
+#66 := [not-or-elim #63]: #65
+[unit-resolution #66 #83]: false
+unsat
+a46bdf5ddd9c6bc8726e86b886e63d5fce2aa764 127 0
 #2 := false
 decl f5 :: S1
 #13 := f5
@@ -2144,138 +2208,7 @@
 #149 := [unit-resolution #131 #147]: #97
 [unit-resolution #108 #149 #148]: false
 unsat
-f97c055cc3b87ad54efe59b6c22e3e3633409f7e 63 0
-#2 := false
-decl f3 :: (-> S2 S2)
-decl f4 :: S2
-#8 := f4
-#9 := (f3 f4)
-#46 := (= f4 #9)
-#10 := (f3 #9)
-#12 := (f3 #10)
-#78 := (= #12 #9)
-#76 := (= #9 #12)
-#37 := (= f4 #10)
-#13 := (f3 #12)
-#14 := (f3 #13)
-#40 := (= f4 #14)
-#43 := (and #37 #40)
-#52 := (not #43)
-#53 := (or #52 #46)
-#58 := (not #53)
-#17 := (= #9 f4)
-#15 := (= #14 f4)
-#11 := (= #10 f4)
-#16 := (and #11 #15)
-#18 := (implies #16 #17)
-#19 := (not #18)
-#59 := (iff #19 #58)
-#56 := (iff #18 #53)
-#49 := (implies #43 #46)
-#54 := (iff #49 #53)
-#55 := [rewrite]: #54
-#50 := (iff #18 #49)
-#47 := (iff #17 #46)
-#48 := [rewrite]: #47
-#44 := (iff #16 #43)
-#41 := (iff #15 #40)
-#42 := [rewrite]: #41
-#38 := (iff #11 #37)
-#39 := [rewrite]: #38
-#45 := [monotonicity #39 #42]: #44
-#51 := [monotonicity #45 #48]: #50
-#57 := [trans #51 #55]: #56
-#60 := [monotonicity #57]: #59
-#36 := [asserted]: #19
-#63 := [mp #36 #60]: #58
-#61 := [not-or-elim #63]: #43
-#62 := [and-elim #61]: #37
-#77 := [monotonicity #62]: #76
-#79 := [symm #77]: #78
-#81 := (= f4 #12)
-#67 := (= #14 #12)
-#70 := (= #12 #14)
-#72 := (= #10 #13)
-#74 := (= #13 #10)
-#75 := [monotonicity #79]: #74
-#73 := [symm #75]: #72
-#71 := [monotonicity #73]: #70
-#80 := [symm #71]: #67
-#64 := [and-elim #61]: #40
-#82 := [trans #64 #80]: #81
-#83 := [trans #82 #79]: #46
-#65 := (not #46)
-#66 := [not-or-elim #63]: #65
-[unit-resolution #66 #83]: false
-unsat
-a7f2c916e2192b153aaac29ea6f75d0842fd84d2 66 0
-#2 := false
-decl f3 :: S1
-#8 := f3
-decl f1 :: S1
-#4 := f1
-#33 := (= f1 f3)
-decl f4 :: S1
-#10 := f4
-#36 := (= f1 f4)
-#42 := (not #33)
-#43 := (or #42 #36)
-#51 := (not #43)
-#52 := (or #33 #51)
-#82 := (iff #52 #51)
-#77 := (or false #51)
-#80 := (iff #77 #51)
-#81 := [rewrite]: #80
-#78 := (iff #52 #77)
-#75 := (iff #33 false)
-#60 := (not #52)
-#61 := (or #33 #60)
-#66 := (not #61)
-#9 := (= f3 f1)
-#11 := (= f4 f1)
-#12 := (implies #9 #11)
-#13 := (implies #12 #9)
-#14 := (implies #13 #9)
-#15 := (not #14)
-#67 := (iff #15 #66)
-#64 := (iff #14 #61)
-#57 := (implies #52 #33)
-#62 := (iff #57 #61)
-#63 := [rewrite]: #62
-#58 := (iff #14 #57)
-#34 := (iff #9 #33)
-#35 := [rewrite]: #34
-#55 := (iff #13 #52)
-#48 := (implies #43 #33)
-#53 := (iff #48 #52)
-#54 := [rewrite]: #53
-#49 := (iff #13 #48)
-#46 := (iff #12 #43)
-#39 := (implies #33 #36)
-#44 := (iff #39 #43)
-#45 := [rewrite]: #44
-#40 := (iff #12 #39)
-#37 := (iff #11 #36)
-#38 := [rewrite]: #37
-#41 := [monotonicity #35 #38]: #40
-#47 := [trans #41 #45]: #46
-#50 := [monotonicity #47 #35]: #49
-#56 := [trans #50 #54]: #55
-#59 := [monotonicity #56 #35]: #58
-#65 := [trans #59 #63]: #64
-#68 := [monotonicity #65]: #67
-#32 := [asserted]: #15
-#71 := [mp #32 #68]: #66
-#69 := [not-or-elim #71]: #42
-#76 := [iff-false #69]: #75
-#79 := [monotonicity #76]: #78
-#83 := [trans #79 #81]: #82
-#70 := [not-or-elim #71]: #52
-#84 := [mp #70 #83]: #51
-#74 := [not-or-elim #84]: #33
-[unit-resolution #69 #74]: false
-unsat
-0b20a1cbaefe018fa6502d17013ec89dc657717b 195 0
+937f73f84ea1ebaa68a1a0ee6c81cfd2f4fda91b 195 0
 #2 := false
 decl f6 :: S2
 #13 := f6
@@ -2471,7 +2404,74 @@
 #209 := [unit-resolution #118 #208]: #116
 [unit-resolution #209 #210]: false
 unsat
-d398c106ccd0941d46bab8e5feda32347dd02740 156 0
+622e9d57e1cdc32316cdcbb8529fc67f719c97a9 66 0
+#2 := false
+decl f3 :: S1
+#8 := f3
+decl f1 :: S1
+#4 := f1
+#33 := (= f1 f3)
+decl f4 :: S1
+#10 := f4
+#36 := (= f1 f4)
+#42 := (not #33)
+#43 := (or #42 #36)
+#51 := (not #43)
+#52 := (or #33 #51)
+#82 := (iff #52 #51)
+#77 := (or false #51)
+#80 := (iff #77 #51)
+#81 := [rewrite]: #80
+#78 := (iff #52 #77)
+#75 := (iff #33 false)
+#60 := (not #52)
+#61 := (or #33 #60)
+#66 := (not #61)
+#9 := (= f3 f1)
+#11 := (= f4 f1)
+#12 := (implies #9 #11)
+#13 := (implies #12 #9)
+#14 := (implies #13 #9)
+#15 := (not #14)
+#67 := (iff #15 #66)
+#64 := (iff #14 #61)
+#57 := (implies #52 #33)
+#62 := (iff #57 #61)
+#63 := [rewrite]: #62
+#58 := (iff #14 #57)
+#34 := (iff #9 #33)
+#35 := [rewrite]: #34
+#55 := (iff #13 #52)
+#48 := (implies #43 #33)
+#53 := (iff #48 #52)
+#54 := [rewrite]: #53
+#49 := (iff #13 #48)
+#46 := (iff #12 #43)
+#39 := (implies #33 #36)
+#44 := (iff #39 #43)
+#45 := [rewrite]: #44
+#40 := (iff #12 #39)
+#37 := (iff #11 #36)
+#38 := [rewrite]: #37
+#41 := [monotonicity #35 #38]: #40
+#47 := [trans #41 #45]: #46
+#50 := [monotonicity #47 #35]: #49
+#56 := [trans #50 #54]: #55
+#59 := [monotonicity #56 #35]: #58
+#65 := [trans #59 #63]: #64
+#68 := [monotonicity #65]: #67
+#32 := [asserted]: #15
+#71 := [mp #32 #68]: #66
+#69 := [not-or-elim #71]: #42
+#76 := [iff-false #69]: #75
+#79 := [monotonicity #76]: #78
+#83 := [trans #79 #81]: #82
+#70 := [not-or-elim #71]: #52
+#84 := [mp #70 #83]: #51
+#74 := [not-or-elim #84]: #33
+[unit-resolution #69 #74]: false
+unsat
+2e293f73ef5ad101901501ab2dcfcefd193999bd 156 0
 #2 := false
 decl f5 :: S1
 #13 := f5
@@ -2628,44 +2628,7 @@
 #114 := [def-axiom]: #113
 [unit-resolution #114 #172 #170]: false
 unsat
-ba53dbe39a10406601e0a359b3a1de14129ef1a1 36 0
-#2 := false
-decl f5 :: S2
-#10 := f5
-decl f3 :: S2
-#8 := f3
-#12 := (= f3 f5)
-#13 := (not #12)
-decl f4 :: S2
-#9 := f4
-#11 := (distinct f3 f4 f5)
-#33 := (not #11)
-#34 := (or #33 #13)
-#37 := (not #34)
-#14 := (implies #11 #13)
-#15 := (not #14)
-#38 := (iff #15 #37)
-#35 := (iff #14 #34)
-#36 := [rewrite]: #35
-#39 := [monotonicity #36]: #38
-#32 := [asserted]: #15
-#42 := [mp #32 #39]: #37
-#41 := [not-or-elim #42]: #12
-#52 := (= f4 f5)
-#53 := (not #52)
-#50 := (= f3 f4)
-#51 := (not #50)
-#48 := (and #51 #13 #53)
-#40 := [not-or-elim #42]: #11
-#58 := (or #33 #48)
-#59 := [def-axiom]: #58
-#62 := [unit-resolution #59 #40]: #48
-#49 := (not #48)
-#45 := (or #49 #13)
-#43 := [def-axiom]: #45
-[unit-resolution #43 #62 #41]: false
-unsat
-78ae843b278e5f0cc65999ee60776dec7c9f683f 114 0
+ab1dfd2f679d7dbdde93be399a76ec5036d3899f 114 0
 #2 := false
 decl f5 :: S1
 #13 := f5
@@ -2780,85 +2743,7 @@
 #101 := [mp #36 #100]: #94
 [mp #101 #130]: false
 unsat
-08e0778705271e8f33e9bdf3c26b749a4c39eda2 77 0
-#2 := false
-decl f4 :: S2
-#9 := f4
-decl f3 :: S2
-#8 := f3
-#81 := (= f3 f4)
-decl f6 :: S2
-#12 := f6
-#36 := (= f4 f6)
-#100 := (iff #36 #81)
-#98 := (iff #81 #36)
-#13 := (= f6 f4)
-#37 := (iff #13 #36)
-#97 := [commutativity]: #37
-#95 := (iff #81 #13)
-#14 := (= f3 f6)
-#42 := (not #36)
-#15 := (not #14)
-decl f5 :: S2
-#10 := f5
-#11 := (distinct f3 f4 f5)
-#51 := (not #11)
-#60 := (or #51 #15 #42)
-#63 := (not #60)
-#16 := (implies #13 #15)
-#17 := (implies #11 #16)
-#18 := (not #17)
-#66 := (iff #18 #63)
-#43 := (or #15 #42)
-#52 := (or #51 #43)
-#57 := (not #52)
-#64 := (iff #57 #63)
-#61 := (iff #52 #60)
-#62 := [rewrite]: #61
-#65 := [monotonicity #62]: #64
-#58 := (iff #18 #57)
-#55 := (iff #17 #52)
-#48 := (implies #11 #43)
-#53 := (iff #48 #52)
-#54 := [rewrite]: #53
-#49 := (iff #17 #48)
-#46 := (iff #16 #43)
-#39 := (implies #36 #15)
-#44 := (iff #39 #43)
-#45 := [rewrite]: #44
-#40 := (iff #16 #39)
-#38 := [rewrite]: #37
-#41 := [monotonicity #38]: #40
-#47 := [trans #41 #45]: #46
-#50 := [monotonicity #47]: #49
-#56 := [trans #50 #54]: #55
-#59 := [monotonicity #56]: #58
-#67 := [trans #59 #65]: #66
-#35 := [asserted]: #18
-#68 := [mp #35 #67]: #63
-#70 := [not-or-elim #68]: #14
-#96 := [monotonicity #70]: #95
-#99 := [trans #96 #97]: #98
-#101 := [symm #99]: #100
-#71 := [not-or-elim #68]: #36
-#102 := [mp #71 #101]: #81
-#82 := (not #81)
-#79 := (= f4 f5)
-#80 := (not #79)
-#83 := (= f3 f5)
-#84 := (not #83)
-#77 := (and #82 #84 #80)
-#69 := [not-or-elim #68]: #11
-#89 := (or #51 #77)
-#90 := [def-axiom]: #89
-#93 := [unit-resolution #90 #69]: #77
-#78 := (not #77)
-#75 := (or #78 #82)
-#76 := [def-axiom]: #75
-#94 := [unit-resolution #76 #93]: #82
-[unit-resolution #94 #102]: false
-unsat
-016fee2f7f490b7727a4579bedbeaa0a03271f5c 198 0
+2bb827008c60da1ea2c111246c9460521c7fdcf1 198 0
 #2 := false
 decl f5 :: S1
 #14 := f5
@@ -3057,36 +2942,7 @@
 #141 := [not-or-elim #136]: #93
 [mp #141 #215]: false
 unsat
-32fbe7827173348f5f83cc50b7e41574fd04dba5 28 0
-#2 := false
-decl f4 :: S2
-#9 := f4
-decl f3 :: S2
-#8 := f3
-#10 := (distinct f3 f4 f3 f4)
-#11 := (not #10)
-#12 := (not #11)
-#44 := (iff #12 false)
-#1 := true
-#39 := (not true)
-#42 := (iff #39 false)
-#43 := [rewrite]: #42
-#40 := (iff #12 #39)
-#37 := (iff #11 true)
-#32 := (not false)
-#35 := (iff #32 true)
-#36 := [rewrite]: #35
-#33 := (iff #11 #32)
-#30 := (iff #10 false)
-#31 := [rewrite]: #30
-#34 := [monotonicity #31]: #33
-#38 := [trans #34 #36]: #37
-#41 := [monotonicity #38]: #40
-#45 := [trans #41 #43]: #44
-#29 := [asserted]: #12
-[mp #29 #45]: false
-unsat
-3e0305075f83d65498b4a11b8ca72526b8e2d46d 134 0
+6ab97d6ee969f9713508f655f280864782914283 134 0
 #2 := false
 decl f5 :: S1
 #14 := f5
@@ -3221,38 +3077,44 @@
 #121 := [not-or-elim #116]: #81
 [mp #121 #151]: false
 unsat
-00d94d0af0e9abf6798a28ecb39a441c7c299833 30 0
-#2 := false
-decl f4 :: S2
-#9 := f4
+9cc560481317ca8682cca4f4dca87fc7141c9928 36 0
+#2 := false
+decl f5 :: S2
+#10 := f5
 decl f3 :: S2
 #8 := f3
-#10 := (= f3 f4)
-#11 := (not #10)
-#12 := (not #11)
-#13 := (implies #10 #12)
-#14 := (not #13)
-#46 := (iff #14 false)
-#1 := true
-#41 := (not true)
-#44 := (iff #41 false)
-#45 := [rewrite]: #44
-#42 := (iff #14 #41)
-#39 := (iff #13 true)
-#34 := (implies #10 #10)
-#37 := (iff #34 true)
-#38 := [rewrite]: #37
-#35 := (iff #13 #34)
-#32 := (iff #12 #10)
-#33 := [rewrite]: #32
-#36 := [monotonicity #33]: #35
-#40 := [trans #36 #38]: #39
-#43 := [monotonicity #40]: #42
-#47 := [trans #43 #45]: #46
-#31 := [asserted]: #14
-[mp #31 #47]: false
-unsat
-78ecef8a6265ee63380698aee66f7437c6eb9791 162 0
+#12 := (= f3 f5)
+#13 := (not #12)
+decl f4 :: S2
+#9 := f4
+#11 := (distinct f3 f4 f5)
+#33 := (not #11)
+#34 := (or #33 #13)
+#37 := (not #34)
+#14 := (implies #11 #13)
+#15 := (not #14)
+#38 := (iff #15 #37)
+#35 := (iff #14 #34)
+#36 := [rewrite]: #35
+#39 := [monotonicity #36]: #38
+#32 := [asserted]: #15
+#42 := [mp #32 #39]: #37
+#41 := [not-or-elim #42]: #12
+#52 := (= f4 f5)
+#53 := (not #52)
+#50 := (= f3 f4)
+#51 := (not #50)
+#48 := (and #51 #13 #53)
+#40 := [not-or-elim #42]: #11
+#58 := (or #33 #48)
+#59 := [def-axiom]: #58
+#62 := [unit-resolution #59 #40]: #48
+#49 := (not #48)
+#45 := (or #49 #13)
+#43 := [def-axiom]: #45
+[unit-resolution #43 #62 #41]: false
+unsat
+d6c8bfd9e0a388a9f9feea361765c0999d6f6245 162 0
 #2 := false
 decl f5 :: S1
 #12 := f5
@@ -3415,48 +3277,85 @@
 #178 := [unit-resolution #128 #177]: #70
 [unit-resolution #136 #178 #176 #168]: false
 unsat
-11d1529c7a7d7cf3014e0031300d5be1524ea6df 40 0
-#2 := false
-decl f5 :: S2
-#11 := f5
+4a0a614367c2678ce3a689bf35cf13d010d59c1c 77 0
+#2 := false
 decl f4 :: S2
 #9 := f4
 decl f3 :: S2
 #8 := f3
-#14 := (distinct f3 f4 f5)
+#81 := (= f3 f4)
+decl f6 :: S2
+#12 := f6
+#36 := (= f4 f6)
+#100 := (iff #36 #81)
+#98 := (iff #81 #36)
+#13 := (= f6 f4)
+#37 := (iff #13 #36)
+#97 := [commutativity]: #37
+#95 := (iff #81 #13)
+#14 := (= f3 f6)
+#42 := (not #36)
 #15 := (not #14)
-#12 := (= f3 f5)
-#10 := (= f3 f4)
-#13 := (and #10 #12)
-#35 := (not #13)
-#36 := (or #35 #15)
-#39 := (not #36)
+decl f5 :: S2
+#10 := f5
+#11 := (distinct f3 f4 f5)
+#51 := (not #11)
+#60 := (or #51 #15 #42)
+#63 := (not #60)
 #16 := (implies #13 #15)
-#17 := (not #16)
-#40 := (iff #17 #39)
-#37 := (iff #16 #36)
+#17 := (implies #11 #16)
+#18 := (not #17)
+#66 := (iff #18 #63)
+#43 := (or #15 #42)
+#52 := (or #51 #43)
+#57 := (not #52)
+#64 := (iff #57 #63)
+#61 := (iff #52 #60)
+#62 := [rewrite]: #61
+#65 := [monotonicity #62]: #64
+#58 := (iff #18 #57)
+#55 := (iff #17 #52)
+#48 := (implies #11 #43)
+#53 := (iff #48 #52)
+#54 := [rewrite]: #53
+#49 := (iff #17 #48)
+#46 := (iff #16 #43)
+#39 := (implies #36 #15)
+#44 := (iff #39 #43)
+#45 := [rewrite]: #44
+#40 := (iff #16 #39)
 #38 := [rewrite]: #37
 #41 := [monotonicity #38]: #40
-#34 := [asserted]: #17
-#44 := [mp #34 #41]: #39
-#46 := [not-or-elim #44]: #14
-#58 := (= f4 f5)
-#59 := (not #58)
-#57 := (not #12)
-#56 := (not #10)
-#54 := (and #56 #57 #59)
-#55 := (not #54)
-#42 := [not-or-elim #44]: #13
-#43 := [and-elim #42]: #10
-#52 := (or #55 #56)
-#53 := [def-axiom]: #52
-#66 := [unit-resolution #53 #43]: #55
-#62 := (or #15 #54)
-#63 := [def-axiom]: #62
-#67 := [unit-resolution #63 #66]: #15
-[unit-resolution #67 #46]: false
-unsat
-cbabdc011b8a302b61906c6191f0d7af27e25599 54 0
+#47 := [trans #41 #45]: #46
+#50 := [monotonicity #47]: #49
+#56 := [trans #50 #54]: #55
+#59 := [monotonicity #56]: #58
+#67 := [trans #59 #65]: #66
+#35 := [asserted]: #18
+#68 := [mp #35 #67]: #63
+#70 := [not-or-elim #68]: #14
+#96 := [monotonicity #70]: #95
+#99 := [trans #96 #97]: #98
+#101 := [symm #99]: #100
+#71 := [not-or-elim #68]: #36
+#102 := [mp #71 #101]: #81
+#82 := (not #81)
+#79 := (= f4 f5)
+#80 := (not #79)
+#83 := (= f3 f5)
+#84 := (not #83)
+#77 := (and #82 #84 #80)
+#69 := [not-or-elim #68]: #11
+#89 := (or #51 #77)
+#90 := [def-axiom]: #89
+#93 := [unit-resolution #90 #69]: #77
+#78 := (not #77)
+#75 := (or #78 #82)
+#76 := [def-axiom]: #75
+#94 := [unit-resolution #76 #93]: #82
+[unit-resolution #94 #102]: false
+unsat
+0758d598d78862cf824e4f1011456a0914ccf6a2 54 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -3511,41 +3410,36 @@
 #31 := [asserted]: #14
 [mp #31 #69]: false
 unsat
-8585364a9de57f2c76854513f54ec42d9a599f64 33 0
-#2 := false
-decl f3 :: S2
-#8 := f3
-decl f5 :: S2
-#10 := f5
+1c0d1ac708791c5472b4c7d4618f1f27059a330a 28 0
+#2 := false
 decl f4 :: S2
 #9 := f4
-decl f6 :: S2
-#11 := f6
-#13 := (distinct f6 f4 f5 f3)
-#12 := (distinct f3 f4 f5 f6)
-#14 := (implies #12 #13)
-#15 := (not #14)
-#47 := (iff #15 false)
-#1 := true
-#42 := (not true)
-#45 := (iff #42 false)
-#46 := [rewrite]: #45
-#43 := (iff #15 #42)
-#40 := (iff #14 true)
-#35 := (implies #12 #12)
-#38 := (iff #35 true)
-#39 := [rewrite]: #38
-#36 := (iff #14 #35)
-#33 := (iff #13 #12)
-#34 := [rewrite]: #33
-#37 := [monotonicity #34]: #36
-#41 := [trans #37 #39]: #40
-#44 := [monotonicity #41]: #43
-#48 := [trans #44 #46]: #47
-#32 := [asserted]: #15
-[mp #32 #48]: false
-unsat
-ae8651ca265765f3bb029935ca54bf350a439257 144 0
+decl f3 :: S2
+#8 := f3
+#10 := (distinct f3 f4 f3 f4)
+#11 := (not #10)
+#12 := (not #11)
+#44 := (iff #12 false)
+#1 := true
+#39 := (not true)
+#42 := (iff #39 false)
+#43 := [rewrite]: #42
+#40 := (iff #12 #39)
+#37 := (iff #11 true)
+#32 := (not false)
+#35 := (iff #32 true)
+#36 := [rewrite]: #35
+#33 := (iff #11 #32)
+#30 := (iff #10 false)
+#31 := [rewrite]: #30
+#34 := [monotonicity #31]: #33
+#38 := [trans #34 #36]: #37
+#41 := [monotonicity #38]: #40
+#45 := [trans #41 #43]: #44
+#29 := [asserted]: #12
+[mp #29 #45]: false
+unsat
+d823881369082411f62355b0e1a48f25c2d70d32 144 0
 #2 := false
 decl f5 :: S1
 #12 := f5
@@ -3690,99 +3584,38 @@
 #126 := [not-or-elim #121]: #102
 [mp #126 #161]: false
 unsat
-a785d8d462362aedcc845e3ec87cbb8d13b87ae7 91 0
-#2 := false
-decl f5 :: S2
-#10 := f5
+2b10f8f450bda227c77b2302c26fe079a9366159 30 0
+#2 := false
 decl f4 :: S2
 #9 := f4
 decl f3 :: S2
 #8 := f3
-#13 := (distinct f3 f4 f5)
-#67 := (= f4 f5)
-#68 := (not #67)
-#63 := (= f3 f5)
-#64 := (not #63)
-#61 := (= f3 f4)
-#62 := (not #61)
-#93 := (and #62 #64 #68)
-decl f6 :: S2
-#11 := f6
-#71 := (= f5 f6)
-#72 := (not #71)
-#69 := (= f4 f6)
-#70 := (not #69)
-#65 := (= f3 f6)
-#66 := (not #65)
-#73 := (and #62 #64 #66 #68 #70 #72)
-#12 := (distinct f3 f4 f5 f6)
-#14 := (distinct f4 f5 f6)
-#15 := (and #13 #14)
-#35 := (not #12)
-#36 := (or #35 #15)
-#39 := (not #36)
-#16 := (implies #12 #15)
-#17 := (not #16)
-#40 := (iff #17 #39)
-#37 := (iff #16 #36)
+#10 := (= f3 f4)
+#11 := (not #10)
+#12 := (not #11)
+#13 := (implies #10 #12)
+#14 := (not #13)
+#46 := (iff #14 false)
+#1 := true
+#41 := (not true)
+#44 := (iff #41 false)
+#45 := [rewrite]: #44
+#42 := (iff #14 #41)
+#39 := (iff #13 true)
+#34 := (implies #10 #10)
+#37 := (iff #34 true)
 #38 := [rewrite]: #37
-#41 := [monotonicity #38]: #40
-#34 := [asserted]: #17
-#44 := [mp #34 #41]: #39
-#42 := [not-or-elim #44]: #12
-#89 := (or #35 #73)
-#90 := [def-axiom]: #89
-#121 := [unit-resolution #90 #42]: #73
-#74 := (not #73)
-#75 := (or #74 #62)
-#76 := [def-axiom]: #75
-#122 := [unit-resolution #76 #121]: #62
-#81 := (or #74 #68)
-#82 := [def-axiom]: #81
-#123 := [unit-resolution #82 #121]: #68
-#77 := (or #74 #64)
-#78 := [def-axiom]: #77
-#124 := [unit-resolution #78 #121]: #64
-#101 := (or #93 #61 #63 #67)
-#102 := [def-axiom]: #101
-#125 := [unit-resolution #102 #124 #123 #122]: #93
-#94 := (not #93)
-#105 := (or #13 #94)
-#106 := [def-axiom]: #105
-#126 := [unit-resolution #106 #125]: #13
-#107 := (and #68 #70 #72)
-#85 := (or #74 #72)
-#86 := [def-axiom]: #85
-#127 := [unit-resolution #86 #121]: #72
-#83 := (or #74 #70)
-#84 := [def-axiom]: #83
-#128 := [unit-resolution #84 #121]: #70
-#115 := (or #107 #67 #69 #71)
-#116 := [def-axiom]: #115
-#129 := [unit-resolution #116 #128 #127 #123]: #107
-#108 := (not #107)
-#119 := (or #14 #108)
-#120 := [def-axiom]: #119
-#130 := [unit-resolution #120 #129]: #14
-#54 := (not #14)
-#53 := (not #13)
-#55 := (or #53 #54)
-#43 := (not #15)
-#58 := (iff #43 #55)
-#56 := (not #55)
-#49 := (not #56)
-#46 := (iff #49 #55)
-#57 := [rewrite]: #46
-#50 := (iff #43 #49)
-#51 := (iff #15 #56)
-#52 := [rewrite]: #51
-#48 := [monotonicity #52]: #50
-#59 := [trans #48 #57]: #58
-#45 := [not-or-elim #44]: #43
-#60 := [mp #45 #59]: #55
-[unit-resolution #60 #130 #126]: false
-unsat
-f037e85f433fe4b6db0edebe38d7599d0d5f9a56 121 0
+#35 := (iff #13 #34)
+#32 := (iff #12 #10)
+#33 := [rewrite]: #32
+#36 := [monotonicity #33]: #35
+#40 := [trans #36 #38]: #39
+#43 := [monotonicity #40]: #42
+#47 := [trans #43 #45]: #46
+#31 := [asserted]: #14
+[mp #31 #47]: false
+unsat
+8bc104940e4bdef62a563b12c192439ecd08c6c2 121 0
 #2 := false
 decl f5 :: S1
 #13 := f5
@@ -3904,7 +3737,48 @@
 #115 := [not-or-elim #109]: #90
 [mp #115 #138]: false
 unsat
-a79fa106ccc873005f00005d34ba1798389c2876 123 0
+c9f554ce0537c03818658e81b19fe84ceb0185a6 40 0
+#2 := false
+decl f5 :: S2
+#11 := f5
+decl f4 :: S2
+#9 := f4
+decl f3 :: S2
+#8 := f3
+#14 := (distinct f3 f4 f5)
+#15 := (not #14)
+#12 := (= f3 f5)
+#10 := (= f3 f4)
+#13 := (and #10 #12)
+#35 := (not #13)
+#36 := (or #35 #15)
+#39 := (not #36)
+#16 := (implies #13 #15)
+#17 := (not #16)
+#40 := (iff #17 #39)
+#37 := (iff #16 #36)
+#38 := [rewrite]: #37
+#41 := [monotonicity #38]: #40
+#34 := [asserted]: #17
+#44 := [mp #34 #41]: #39
+#46 := [not-or-elim #44]: #14
+#58 := (= f4 f5)
+#59 := (not #58)
+#57 := (not #12)
+#56 := (not #10)
+#54 := (and #56 #57 #59)
+#55 := (not #54)
+#42 := [not-or-elim #44]: #13
+#43 := [and-elim #42]: #10
+#52 := (or #55 #56)
+#53 := [def-axiom]: #52
+#66 := [unit-resolution #53 #43]: #55
+#62 := (or #15 #54)
+#63 := [def-axiom]: #62
+#67 := [unit-resolution #63 #66]: #15
+[unit-resolution #67 #46]: false
+unsat
+43b0ec204044e8a9ddd46de106038d6a70829412 123 0
 #2 := false
 decl f4 :: S1
 #10 := f4
@@ -4028,7 +3902,41 @@
 #92 := [not-or-elim #91]: #72
 [mp #92 #141]: false
 unsat
-7e097d3ef4e0c4927519d96187a725503177b49b 60 0
+b4be7a04408986e429b4f7b85392a0d8faa4a56b 33 0
+#2 := false
+decl f3 :: S2
+#8 := f3
+decl f5 :: S2
+#10 := f5
+decl f4 :: S2
+#9 := f4
+decl f6 :: S2
+#11 := f6
+#13 := (distinct f6 f4 f5 f3)
+#12 := (distinct f3 f4 f5 f6)
+#14 := (implies #12 #13)
+#15 := (not #14)
+#47 := (iff #15 false)
+#1 := true
+#42 := (not true)
+#45 := (iff #42 false)
+#46 := [rewrite]: #45
+#43 := (iff #15 #42)
+#40 := (iff #14 true)
+#35 := (implies #12 #12)
+#38 := (iff #35 true)
+#39 := [rewrite]: #38
+#36 := (iff #14 #35)
+#33 := (iff #13 #12)
+#34 := [rewrite]: #33
+#37 := [monotonicity #34]: #36
+#41 := [trans #37 #39]: #40
+#44 := [monotonicity #41]: #43
+#48 := [trans #44 #46]: #47
+#32 := [asserted]: #15
+[mp #32 #48]: false
+unsat
+65d147f6ee969d919cd3b4f850a39f6a343f10f2 60 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -4089,33 +3997,99 @@
 #34 := [asserted]: #17
 [mp #34 #75]: false
 unsat
-273a6dc6f10616be4347838d6cbb54a0b0ad5636 25 0
-#2 := false
-#8 := (:var 0 S2)
-#9 := (= #8 #8)
-#10 := (forall (vars (?v0 S2)) #9)
-#11 := (not #10)
-#43 := (iff #11 false)
-#1 := true
-#38 := (not true)
-#41 := (iff #38 false)
-#42 := [rewrite]: #41
-#39 := (iff #11 #38)
-#36 := (iff #10 true)
-#31 := (forall (vars (?v0 S2)) true)
-#34 := (iff #31 true)
-#35 := [elim-unused]: #34
-#32 := (iff #10 #31)
-#29 := (iff #9 true)
-#30 := [rewrite]: #29
-#33 := [quant-intro #30]: #32
-#37 := [trans #33 #35]: #36
-#40 := [monotonicity #37]: #39
-#44 := [trans #40 #42]: #43
-#28 := [asserted]: #11
-[mp #28 #44]: false
-unsat
-cb74096d43b27b6df4bed4b142ce429518455d83 121 0
+58054335ac968ebfdfe24a066ff933b0b06bebaf 91 0
+#2 := false
+decl f5 :: S2
+#10 := f5
+decl f4 :: S2
+#9 := f4
+decl f3 :: S2
+#8 := f3
+#13 := (distinct f3 f4 f5)
+#67 := (= f4 f5)
+#68 := (not #67)
+#63 := (= f3 f5)
+#64 := (not #63)
+#61 := (= f3 f4)
+#62 := (not #61)
+#93 := (and #62 #64 #68)
+decl f6 :: S2
+#11 := f6
+#71 := (= f5 f6)
+#72 := (not #71)
+#69 := (= f4 f6)
+#70 := (not #69)
+#65 := (= f3 f6)
+#66 := (not #65)
+#73 := (and #62 #64 #66 #68 #70 #72)
+#12 := (distinct f3 f4 f5 f6)
+#14 := (distinct f4 f5 f6)
+#15 := (and #13 #14)
+#35 := (not #12)
+#36 := (or #35 #15)
+#39 := (not #36)
+#16 := (implies #12 #15)
+#17 := (not #16)
+#40 := (iff #17 #39)
+#37 := (iff #16 #36)
+#38 := [rewrite]: #37
+#41 := [monotonicity #38]: #40
+#34 := [asserted]: #17
+#44 := [mp #34 #41]: #39
+#42 := [not-or-elim #44]: #12
+#89 := (or #35 #73)
+#90 := [def-axiom]: #89
+#121 := [unit-resolution #90 #42]: #73
+#74 := (not #73)
+#75 := (or #74 #62)
+#76 := [def-axiom]: #75
+#122 := [unit-resolution #76 #121]: #62
+#81 := (or #74 #68)
+#82 := [def-axiom]: #81
+#123 := [unit-resolution #82 #121]: #68
+#77 := (or #74 #64)
+#78 := [def-axiom]: #77
+#124 := [unit-resolution #78 #121]: #64
+#101 := (or #93 #61 #63 #67)
+#102 := [def-axiom]: #101
+#125 := [unit-resolution #102 #124 #123 #122]: #93
+#94 := (not #93)
+#105 := (or #13 #94)
+#106 := [def-axiom]: #105
+#126 := [unit-resolution #106 #125]: #13
+#107 := (and #68 #70 #72)
+#85 := (or #74 #72)
+#86 := [def-axiom]: #85
+#127 := [unit-resolution #86 #121]: #72
+#83 := (or #74 #70)
+#84 := [def-axiom]: #83
+#128 := [unit-resolution #84 #121]: #70
+#115 := (or #107 #67 #69 #71)
+#116 := [def-axiom]: #115
+#129 := [unit-resolution #116 #128 #127 #123]: #107
+#108 := (not #107)
+#119 := (or #14 #108)
+#120 := [def-axiom]: #119
+#130 := [unit-resolution #120 #129]: #14
+#54 := (not #14)
+#53 := (not #13)
+#55 := (or #53 #54)
+#43 := (not #15)
+#58 := (iff #43 #55)
+#56 := (not #55)
+#49 := (not #56)
+#46 := (iff #49 #55)
+#57 := [rewrite]: #46
+#50 := (iff #43 #49)
+#51 := (iff #15 #56)
+#52 := [rewrite]: #51
+#48 := [monotonicity #52]: #50
+#59 := [trans #48 #57]: #58
+#45 := [not-or-elim #44]: #43
+#60 := [mp #45 #59]: #55
+[unit-resolution #60 #130 #126]: false
+unsat
+baf592f0a849ff17a84a15f9f01a6198981eb2cc 121 0
 #2 := false
 decl f5 :: S1
 #12 := f5
@@ -4237,42 +4211,33 @@
 #115 := [not-or-elim #109]: #90
 [mp #115 #138]: false
 unsat
-2b9ce0054ea55ee81c55715bd6d24aa6896b491c 34 0
-#2 := false
-decl f1 :: S1
-#4 := f1
-decl f3 :: (-> S2 S1)
+99555255ecbea462034ff141a5c25be38b45dd0f 25 0
+#2 := false
 #8 := (:var 0 S2)
-#9 := (f3 #8)
-#10 := (= #9 f1)
-#11 := (forall (vars (?v0 S2)) #10)
-#12 := (iff #11 #11)
-#13 := (not #12)
-#49 := (iff #13 false)
-#1 := true
-#44 := (not true)
-#47 := (iff #44 false)
-#48 := [rewrite]: #47
-#45 := (iff #13 #44)
-#42 := (iff #12 true)
-#31 := (= f1 #9)
-#34 := (forall (vars (?v0 S2)) #31)
-#37 := (iff #34 #34)
-#40 := (iff #37 true)
-#41 := [rewrite]: #40
-#38 := (iff #12 #37)
-#35 := (iff #11 #34)
+#9 := (= #8 #8)
+#10 := (forall (vars (?v0 S2)) #9)
+#11 := (not #10)
+#43 := (iff #11 false)
+#1 := true
+#38 := (not true)
+#41 := (iff #38 false)
+#42 := [rewrite]: #41
+#39 := (iff #11 #38)
+#36 := (iff #10 true)
+#31 := (forall (vars (?v0 S2)) true)
+#34 := (iff #31 true)
+#35 := [elim-unused]: #34
 #32 := (iff #10 #31)
-#33 := [rewrite]: #32
-#36 := [quant-intro #33]: #35
-#39 := [monotonicity #36 #36]: #38
-#43 := [trans #39 #41]: #42
-#46 := [monotonicity #43]: #45
-#50 := [trans #46 #48]: #49
-#30 := [asserted]: #13
-[mp #30 #50]: false
-unsat
-f67715569c1aa586d3c8e9a94e103b17f1f34614 84 0
+#29 := (iff #9 true)
+#30 := [rewrite]: #29
+#33 := [quant-intro #30]: #32
+#37 := [trans #33 #35]: #36
+#40 := [monotonicity #37]: #39
+#44 := [trans #40 #42]: #43
+#28 := [asserted]: #11
+[mp #28 #44]: false
+unsat
+882516ca3718492c49c1d6f4497b372b324593e7 84 0
 #2 := false
 decl f4 :: S1
 #10 := f4
@@ -4357,7 +4322,90 @@
 #96 := [unit-resolution #85 #93]: #83
 [unit-resolution #96 #101 #100]: false
 unsat
-4905f6794c524726db3be755d752d3ea53fc4f9a 95 0
+38463bf62ec87c56bbacd6ee7e49d6b7b9e553c8 34 0
+#2 := false
+decl f1 :: S1
+#4 := f1
+decl f3 :: (-> S2 S1)
+#8 := (:var 0 S2)
+#9 := (f3 #8)
+#10 := (= #9 f1)
+#11 := (forall (vars (?v0 S2)) #10)
+#12 := (iff #11 #11)
+#13 := (not #12)
+#49 := (iff #13 false)
+#1 := true
+#44 := (not true)
+#47 := (iff #44 false)
+#48 := [rewrite]: #47
+#45 := (iff #13 #44)
+#42 := (iff #12 true)
+#31 := (= f1 #9)
+#34 := (forall (vars (?v0 S2)) #31)
+#37 := (iff #34 #34)
+#40 := (iff #37 true)
+#41 := [rewrite]: #40
+#38 := (iff #12 #37)
+#35 := (iff #11 #34)
+#32 := (iff #10 #31)
+#33 := [rewrite]: #32
+#36 := [quant-intro #33]: #35
+#39 := [monotonicity #36 #36]: #38
+#43 := [trans #39 #41]: #42
+#46 := [monotonicity #43]: #45
+#50 := [trans #46 #48]: #49
+#30 := [asserted]: #13
+[mp #30 #50]: false
+unsat
+c1b8de1fea5b45b3a67eb085640285bc1cfbb463 47 0
+#2 := false
+decl f1 :: S1
+#4 := f1
+decl f3 :: S1
+#8 := f3
+#9 := (= f3 f1)
+decl f4 :: S1
+#10 := f4
+#11 := (= f4 f1)
+#13 := (iff #11 #9)
+#12 := (iff #9 #11)
+#14 := (iff #12 #13)
+#15 := (not #14)
+#61 := (iff #15 false)
+#1 := true
+#56 := (not true)
+#59 := (iff #56 false)
+#60 := [rewrite]: #59
+#57 := (iff #15 #56)
+#54 := (iff #14 true)
+#36 := (= f1 f4)
+#33 := (= f1 f3)
+#39 := (iff #33 #36)
+#49 := (iff #39 #39)
+#52 := (iff #49 true)
+#53 := [rewrite]: #52
+#50 := (iff #14 #49)
+#47 := (iff #13 #39)
+#42 := (iff #36 #33)
+#45 := (iff #42 #39)
+#46 := [rewrite]: #45
+#43 := (iff #13 #42)
+#34 := (iff #9 #33)
+#35 := [rewrite]: #34
+#37 := (iff #11 #36)
+#38 := [rewrite]: #37
+#44 := [monotonicity #38 #35]: #43
+#48 := [trans #44 #46]: #47
+#40 := (iff #12 #39)
+#41 := [monotonicity #35 #38]: #40
+#51 := [monotonicity #41 #48]: #50
+#55 := [trans #51 #53]: #54
+#58 := [monotonicity #55]: #57
+#62 := [trans #58 #60]: #61
+#32 := [asserted]: #15
+[mp #32 #62]: false
+unsat
+1709b6be330c8fe39899c2448147237ac354e6ac 95 0
 #2 := false
 decl f3 :: (-> S2 S1)
 decl ?v0!0 :: S2
@@ -4453,55 +4501,49 @@
 #102 := [and-elim #101]: #76
 [unit-resolution #102 #115]: false
 unsat
-8abc924327822787c2f5c4e6e7680303fbae57f8 47 0
+f7433bc79c74698b7150f9252f1663dfbc7714ae 41 0
 #2 := false
 decl f1 :: S1
 #4 := f1
 decl f3 :: S1
 #8 := f3
 #9 := (= f3 f1)
-decl f4 :: S1
-#10 := f4
-#11 := (= f4 f1)
-#13 := (iff #11 #9)
-#12 := (iff #9 #11)
-#14 := (iff #12 #13)
-#15 := (not #14)
-#61 := (iff #15 false)
-#1 := true
-#56 := (not true)
-#59 := (iff #56 false)
-#60 := [rewrite]: #59
-#57 := (iff #15 #56)
-#54 := (iff #14 true)
-#36 := (= f1 f4)
-#33 := (= f1 f3)
-#39 := (iff #33 #36)
-#49 := (iff #39 #39)
-#52 := (iff #49 true)
-#53 := [rewrite]: #52
-#50 := (iff #14 #49)
-#47 := (iff #13 #39)
-#42 := (iff #36 #33)
-#45 := (iff #42 #39)
-#46 := [rewrite]: #45
-#43 := (iff #13 #42)
-#34 := (iff #9 #33)
-#35 := [rewrite]: #34
-#37 := (iff #11 #36)
-#38 := [rewrite]: #37
-#44 := [monotonicity #38 #35]: #43
-#48 := [trans #44 #46]: #47
-#40 := (iff #12 #39)
-#41 := [monotonicity #35 #38]: #40
-#51 := [monotonicity #41 #48]: #50
-#55 := [trans #51 #53]: #54
-#58 := [monotonicity #55]: #57
-#62 := [trans #58 #60]: #61
-#32 := [asserted]: #15
-[mp #32 #62]: false
-unsat
-48a51f989350a0e584db03a2950a272906be29b0 300 0
+#10 := (not #9)
+#11 := (iff #9 #10)
+#12 := (not #11)
+#13 := (not #12)
+#56 := (iff #13 false)
+#1 := true
+#51 := (not true)
+#54 := (iff #51 false)
+#55 := [rewrite]: #54
+#52 := (iff #13 #51)
+#49 := (iff #12 true)
+#44 := (not false)
+#47 := (iff #44 true)
+#48 := [rewrite]: #47
+#45 := (iff #12 #44)
+#42 := (iff #11 false)
+#31 := (= f1 f3)
+#34 := (not #31)
+#37 := (iff #31 #34)
+#40 := (iff #37 false)
+#41 := [rewrite]: #40
+#38 := (iff #11 #37)
+#35 := (iff #10 #34)
+#32 := (iff #9 #31)
+#33 := [rewrite]: #32
+#36 := [monotonicity #33]: #35
+#39 := [monotonicity #33 #36]: #38
+#43 := [trans #39 #41]: #42
+#46 := [monotonicity #43]: #45
+#50 := [trans #46 #48]: #49
+#53 := [monotonicity #50]: #52
+#57 := [trans #53 #55]: #56
+#30 := [asserted]: #13
+[mp #30 #57]: false
+unsat
+9e92d358b4d87bdfb0816755e800e46f3d76b51e 300 0
 #2 := false
 decl f4 :: (-> S2 S1)
 decl ?v0!1 :: S2
@@ -4802,49 +4844,68 @@
 #609 := [quant-inst]: #615
 [unit-resolution #609 #257 #603]: false
 unsat
-3731fdf00230f94750072246058d6aec5d30ad57 41 0
+4f091688bc1fe0b9d20810549460b1f682c6b9ee 60 0
 #2 := false
 decl f1 :: S1
 #4 := f1
 decl f3 :: S1
 #8 := f3
 #9 := (= f3 f1)
-#10 := (not #9)
-#11 := (iff #9 #10)
-#12 := (not #11)
-#13 := (not #12)
-#56 := (iff #13 false)
-#1 := true
-#51 := (not true)
-#54 := (iff #51 false)
-#55 := [rewrite]: #54
-#52 := (iff #13 #51)
-#49 := (iff #12 true)
-#44 := (not false)
-#47 := (iff #44 true)
-#48 := [rewrite]: #47
-#45 := (iff #12 #44)
-#42 := (iff #11 false)
-#31 := (= f1 f3)
-#34 := (not #31)
-#37 := (iff #31 #34)
-#40 := (iff #37 false)
-#41 := [rewrite]: #40
-#38 := (iff #11 #37)
-#35 := (iff #10 #34)
-#32 := (iff #9 #31)
-#33 := [rewrite]: #32
-#36 := [monotonicity #33]: #35
-#39 := [monotonicity #33 #36]: #38
-#43 := [trans #39 #41]: #42
-#46 := [monotonicity #43]: #45
-#50 := [trans #46 #48]: #49
-#53 := [monotonicity #50]: #52
-#57 := [trans #53 #55]: #56
-#30 := [asserted]: #13
-[mp #30 #57]: false
-unsat
-8d1c135b088bf498c079d2958e8764a8092679cf 201 0
+#14 := (not #9)
+decl f4 :: S1
+#10 := f4
+#11 := (= f4 f1)
+#13 := (not #11)
+#15 := (implies #13 #14)
+#12 := (implies #9 #11)
+#16 := (iff #12 #15)
+#17 := (not #16)
+#74 := (iff #17 false)
+#1 := true
+#69 := (not true)
+#72 := (iff #69 false)
+#73 := [rewrite]: #72
+#70 := (iff #17 #69)
+#67 := (iff #16 true)
+#38 := (= f1 f4)
+#35 := (= f1 f3)
+#44 := (not #35)
+#45 := (or #44 #38)
+#62 := (iff #45 #45)
+#65 := (iff #62 true)
+#66 := [rewrite]: #65
+#63 := (iff #16 #62)
+#60 := (iff #15 #45)
+#50 := (not #38)
+#55 := (implies #50 #44)
+#58 := (iff #55 #45)
+#59 := [rewrite]: #58
+#56 := (iff #15 #55)
+#53 := (iff #14 #44)
+#36 := (iff #9 #35)
+#37 := [rewrite]: #36
+#54 := [monotonicity #37]: #53
+#51 := (iff #13 #50)
+#39 := (iff #11 #38)
+#40 := [rewrite]: #39
+#52 := [monotonicity #40]: #51
+#57 := [monotonicity #52 #54]: #56
+#61 := [trans #57 #59]: #60
+#48 := (iff #12 #45)
+#41 := (implies #35 #38)
+#46 := (iff #41 #45)
+#47 := [rewrite]: #46
+#42 := (iff #12 #41)
+#43 := [monotonicity #37 #40]: #42
+#49 := [trans #43 #47]: #48
+#64 := [monotonicity #49 #61]: #63
+#68 := [trans #64 #66]: #67
+#71 := [monotonicity #68]: #70
+#75 := [trans #71 #73]: #74
+#34 := [asserted]: #17
+[mp #34 #75]: false
+unsat
+27355f82e9f880139491584519c5f457388ba8e4 201 0
 #2 := false
 decl f3 :: (-> S2 S1)
 #8 := (:var 0 S2)
@@ -5046,68 +5107,80 @@
 #211 := [quant-inst]: #320
 [unit-resolution #211 #595 #319]: false
 unsat
-c4682bd721e64af9e51bd86d6d03d59662baa782 60 0
+45c3801b7a47fb920cbab9584d402164b65dd356 72 0
 #2 := false
 decl f1 :: S1
 #4 := f1
 decl f3 :: S1
 #8 := f3
 #9 := (= f3 f1)
-#14 := (not #9)
-decl f4 :: S1
-#10 := f4
-#11 := (= f4 f1)
-#13 := (not #11)
-#15 := (implies #13 #14)
-#12 := (implies #9 #11)
-#16 := (iff #12 #15)
-#17 := (not #16)
-#74 := (iff #17 false)
-#1 := true
-#69 := (not true)
-#72 := (iff #69 false)
-#73 := [rewrite]: #72
-#70 := (iff #17 #69)
-#67 := (iff #16 true)
-#38 := (= f1 f4)
-#35 := (= f1 f3)
-#44 := (not #35)
-#45 := (or #44 #38)
-#62 := (iff #45 #45)
-#65 := (iff #62 true)
-#66 := [rewrite]: #65
-#63 := (iff #16 #62)
-#60 := (iff #15 #45)
-#50 := (not #38)
-#55 := (implies #50 #44)
-#58 := (iff #55 #45)
-#59 := [rewrite]: #58
-#56 := (iff #15 #55)
-#53 := (iff #14 #44)
-#36 := (iff #9 #35)
-#37 := [rewrite]: #36
-#54 := [monotonicity #37]: #53
-#51 := (iff #13 #50)
-#39 := (iff #11 #38)
-#40 := [rewrite]: #39
-#52 := [monotonicity #40]: #51
-#57 := [monotonicity #52 #54]: #56
-#61 := [trans #57 #59]: #60
-#48 := (iff #12 #45)
-#41 := (implies #35 #38)
-#46 := (iff #41 #45)
-#47 := [rewrite]: #46
-#42 := (iff #12 #41)
-#43 := [monotonicity #37 #40]: #42
-#49 := [trans #43 #47]: #48
-#64 := [monotonicity #49 #61]: #63
-#68 := [trans #64 #66]: #67
-#71 := [monotonicity #68]: #70
-#75 := [trans #71 #73]: #74
-#34 := [asserted]: #17
-[mp #34 #75]: false
-unsat
-c2e19ee7461e4fbfe65c34d98111e3914f852baf 244 0
+#10 := (iff #9 #9)
+#11 := (iff #9 #10)
+#12 := (iff #9 #11)
+#13 := (iff #9 #12)
+#14 := (iff #9 #13)
+#15 := (iff #9 #14)
+#16 := (iff #9 #15)
+#17 := (iff #9 #16)
+#18 := (iff #9 #17)
+#19 := (not #18)
+#87 := (iff #19 false)
+#1 := true
+#82 := (not true)
+#85 := (iff #82 false)
+#86 := [rewrite]: #85
+#83 := (iff #19 #82)
+#80 := (iff #18 true)
+#37 := (= f1 f3)
+#40 := (iff #37 #37)
+#43 := (iff #40 true)
+#44 := [rewrite]: #43
+#78 := (iff #18 #40)
+#76 := (iff #17 #37)
+#47 := (iff #37 true)
+#50 := (iff #47 #37)
+#51 := [rewrite]: #50
+#74 := (iff #17 #47)
+#72 := (iff #16 true)
+#70 := (iff #16 #40)
+#68 := (iff #15 #37)
+#66 := (iff #15 #47)
+#64 := (iff #14 true)
+#62 := (iff #14 #40)
+#60 := (iff #13 #37)
+#58 := (iff #13 #47)
+#56 := (iff #12 true)
+#54 := (iff #12 #40)
+#52 := (iff #11 #37)
+#48 := (iff #11 #47)
+#45 := (iff #10 true)
+#41 := (iff #10 #40)
+#38 := (iff #9 #37)
+#39 := [rewrite]: #38
+#42 := [monotonicity #39 #39]: #41
+#46 := [trans #42 #44]: #45
+#49 := [monotonicity #39 #46]: #48
+#53 := [trans #49 #51]: #52
+#55 := [monotonicity #39 #53]: #54
+#57 := [trans #55 #44]: #56
+#59 := [monotonicity #39 #57]: #58
+#61 := [trans #59 #51]: #60
+#63 := [monotonicity #39 #61]: #62
+#65 := [trans #63 #44]: #64
+#67 := [monotonicity #39 #65]: #66
+#69 := [trans #67 #51]: #68
+#71 := [monotonicity #39 #69]: #70
+#73 := [trans #71 #44]: #72
+#75 := [monotonicity #39 #73]: #74
+#77 := [trans #75 #51]: #76
+#79 := [monotonicity #39 #77]: #78
+#81 := [trans #79 #44]: #80
+#84 := [monotonicity #81]: #83
+#88 := [trans #84 #86]: #87
+#36 := [asserted]: #19
+[mp #36 #88]: false
+unsat
+392dbae729e3baf705095d1fa80eee1de09292e0 244 0
 #2 := false
 decl f3 :: (-> S2 S1)
 decl ?v0!0 :: S2
@@ -5352,80 +5425,33 @@
 #616 := [mp #343 #237]: #621
 [unit-resolution #616 #629 #330]: false
 unsat
-36d1352b395221a431006c238d124165e2b745a3 72 0
-#2 := false
-decl f1 :: S1
-#4 := f1
-decl f3 :: S1
-#8 := f3
-#9 := (= f3 f1)
-#10 := (iff #9 #9)
-#11 := (iff #9 #10)
-#12 := (iff #9 #11)
-#13 := (iff #9 #12)
-#14 := (iff #9 #13)
-#15 := (iff #9 #14)
-#16 := (iff #9 #15)
-#17 := (iff #9 #16)
-#18 := (iff #9 #17)
-#19 := (not #18)
-#87 := (iff #19 false)
-#1 := true
-#82 := (not true)
-#85 := (iff #82 false)
-#86 := [rewrite]: #85
-#83 := (iff #19 #82)
-#80 := (iff #18 true)
-#37 := (= f1 f3)
-#40 := (iff #37 #37)
-#43 := (iff #40 true)
-#44 := [rewrite]: #43
-#78 := (iff #18 #40)
-#76 := (iff #17 #37)
-#47 := (iff #37 true)
-#50 := (iff #47 #37)
-#51 := [rewrite]: #50
-#74 := (iff #17 #47)
-#72 := (iff #16 true)
-#70 := (iff #16 #40)
-#68 := (iff #15 #37)
-#66 := (iff #15 #47)
-#64 := (iff #14 true)
-#62 := (iff #14 #40)
-#60 := (iff #13 #37)
-#58 := (iff #13 #47)
-#56 := (iff #12 true)
-#54 := (iff #12 #40)
-#52 := (iff #11 #37)
-#48 := (iff #11 #47)
-#45 := (iff #10 true)
-#41 := (iff #10 #40)
-#38 := (iff #9 #37)
-#39 := [rewrite]: #38
-#42 := [monotonicity #39 #39]: #41
-#46 := [trans #42 #44]: #45
-#49 := [monotonicity #39 #46]: #48
-#53 := [trans #49 #51]: #52
-#55 := [monotonicity #39 #53]: #54
-#57 := [trans #55 #44]: #56
-#59 := [monotonicity #39 #57]: #58
-#61 := [trans #59 #51]: #60
-#63 := [monotonicity #39 #61]: #62
-#65 := [trans #63 #44]: #64
-#67 := [monotonicity #39 #65]: #66
-#69 := [trans #67 #51]: #68
-#71 := [monotonicity #39 #69]: #70
-#73 := [trans #71 #44]: #72
-#75 := [monotonicity #39 #73]: #74
-#77 := [trans #75 #51]: #76
-#79 := [monotonicity #39 #77]: #78
-#81 := [trans #79 #44]: #80
-#84 := [monotonicity #81]: #83
-#88 := [trans #84 #86]: #87
-#36 := [asserted]: #19
-[mp #36 #88]: false
-unsat
-35b6826e84c97e2db1e3cd91ad69abb16f131b93 49 0
+17f9e5be62669f8acfb50769a06b9e675836393a 25 0
+#2 := false
+#8 := (:var 0 S2)
+#9 := (= #8 #8)
+#10 := (exists (vars (?v0 S2)) #9)
+#11 := (not #10)
+#43 := (iff #11 false)
+#1 := true
+#38 := (not true)
+#41 := (iff #38 false)
+#42 := [rewrite]: #41
+#39 := (iff #11 #38)
+#36 := (iff #10 true)
+#31 := (exists (vars (?v0 S2)) true)
+#34 := (iff #31 true)
+#35 := [elim-unused]: #34
+#32 := (iff #10 #31)
+#29 := (iff #9 true)
+#30 := [rewrite]: #29
+#33 := [quant-intro #30]: #32
+#37 := [trans #33 #35]: #36
+#40 := [monotonicity #37]: #39
+#44 := [trans #40 #42]: #43
+#28 := [asserted]: #11
+[mp #28 #44]: false
+unsat
+f1a2d09c5ae97f135cf03b06910805f4101ff509 49 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -5475,33 +5501,42 @@
 #35 := [asserted]: #18
 [mp #35 #65]: false
 unsat
-150a137e969806c6900cabc66bb27970472c7ba1 25 0
-#2 := false
+cc5c33d65644020014560f00b4d749ba7046207d 34 0
+#2 := false
+decl f1 :: S1
+#4 := f1
+decl f3 :: (-> S2 S1)
 #8 := (:var 0 S2)
-#9 := (= #8 #8)
-#10 := (exists (vars (?v0 S2)) #9)
-#11 := (not #10)
-#43 := (iff #11 false)
-#1 := true
-#38 := (not true)
-#41 := (iff #38 false)
-#42 := [rewrite]: #41
-#39 := (iff #11 #38)
-#36 := (iff #10 true)
-#31 := (exists (vars (?v0 S2)) true)
-#34 := (iff #31 true)
-#35 := [elim-unused]: #34
+#9 := (f3 #8)
+#10 := (= #9 f1)
+#11 := (exists (vars (?v0 S2)) #10)
+#12 := (iff #11 #11)
+#13 := (not #12)
+#49 := (iff #13 false)
+#1 := true
+#44 := (not true)
+#47 := (iff #44 false)
+#48 := [rewrite]: #47
+#45 := (iff #13 #44)
+#42 := (iff #12 true)
+#31 := (= f1 #9)
+#34 := (exists (vars (?v0 S2)) #31)
+#37 := (iff #34 #34)
+#40 := (iff #37 true)
+#41 := [rewrite]: #40
+#38 := (iff #12 #37)
+#35 := (iff #11 #34)
 #32 := (iff #10 #31)
-#29 := (iff #9 true)
-#30 := [rewrite]: #29
-#33 := [quant-intro #30]: #32
-#37 := [trans #33 #35]: #36
-#40 := [monotonicity #37]: #39
-#44 := [trans #40 #42]: #43
-#28 := [asserted]: #11
-[mp #28 #44]: false
-unsat
-2e6f238fe51369f58bc6454a136532e4c6f3bd82 136 0
+#33 := [rewrite]: #32
+#36 := [quant-intro #33]: #35
+#39 := [monotonicity #36 #36]: #38
+#43 := [trans #39 #41]: #42
+#46 := [monotonicity #43]: #45
+#50 := [trans #46 #48]: #49
+#30 := [asserted]: #13
+[mp #30 #50]: false
+unsat
+c0659ef2eb86b9abb113a352ce049de7f5cf2d4d 136 0
 #2 := false
 decl f3 :: (-> S2 S2 S1)
 decl f4 :: S2
@@ -5638,167 +5673,7 @@
 #593 := [quant-inst]: #592
 [unit-resolution #593 #610 #258]: false
 unsat
-b28b1c7eb24edf6acf5466ddd1304a6b881a60f9 34 0
-#2 := false
-decl f1 :: S1
-#4 := f1
-decl f3 :: (-> S2 S1)
-#8 := (:var 0 S2)
-#9 := (f3 #8)
-#10 := (= #9 f1)
-#11 := (exists (vars (?v0 S2)) #10)
-#12 := (iff #11 #11)
-#13 := (not #12)
-#49 := (iff #13 false)
-#1 := true
-#44 := (not true)
-#47 := (iff #44 false)
-#48 := [rewrite]: #47
-#45 := (iff #13 #44)
-#42 := (iff #12 true)
-#31 := (= f1 #9)
-#34 := (exists (vars (?v0 S2)) #31)
-#37 := (iff #34 #34)
-#40 := (iff #37 true)
-#41 := [rewrite]: #40
-#38 := (iff #12 #37)
-#35 := (iff #11 #34)
-#32 := (iff #10 #31)
-#33 := [rewrite]: #32
-#36 := [quant-intro #33]: #35
-#39 := [monotonicity #36 #36]: #38
-#43 := [trans #39 #41]: #42
-#46 := [monotonicity #43]: #45
-#50 := [trans #46 #48]: #49
-#30 := [asserted]: #13
-[mp #30 #50]: false
-unsat
-a15d00efdb475e30bdd25ef3ed2227a8ea9c519f 124 0
-#2 := false
-decl f3 :: (-> S2 S1)
-decl f4 :: (-> S2 S2)
-decl f5 :: S2
-#16 := f5
-#20 := (f4 f5)
-#21 := (f4 #20)
-#154 := (f3 #21)
-decl f1 :: S1
-#4 := f1
-#241 := (= f1 #154)
-#152 := (f3 #20)
-#239 := (= f1 #152)
-#17 := (f3 f5)
-#62 := (= f1 #17)
-#8 := (:var 0 S2)
-#11 := (f4 #8)
-#12 := (f3 #11)
-#47 := (= f1 #12)
-#9 := (f3 #8)
-#44 := (= f1 #9)
-#53 := (not #44)
-#54 := (or #53 #47)
-#59 := (forall (vars (?v0 S2)) #54)
-#65 := (and #59 #62)
-#22 := (f4 #21)
-#23 := (f3 #22)
-#68 := (= f1 #23)
-#74 := (not #65)
-#75 := (or #74 #68)
-#80 := (not #75)
-#24 := (= #23 f1)
-#18 := (= #17 f1)
-#13 := (= #12 f1)
-#10 := (= #9 f1)
-#14 := (implies #10 #13)
-#15 := (forall (vars (?v0 S2)) #14)
-#19 := (and #15 #18)
-#25 := (implies #19 #24)
-#26 := (not #25)
-#81 := (iff #26 #80)
-#78 := (iff #25 #75)
-#71 := (implies #65 #68)
-#76 := (iff #71 #75)
-#77 := [rewrite]: #76
-#72 := (iff #25 #71)
-#69 := (iff #24 #68)
-#70 := [rewrite]: #69
-#66 := (iff #19 #65)
-#63 := (iff #18 #62)
-#64 := [rewrite]: #63
-#60 := (iff #15 #59)
-#57 := (iff #14 #54)
-#50 := (implies #44 #47)
-#55 := (iff #50 #54)
-#56 := [rewrite]: #55
-#51 := (iff #14 #50)
-#48 := (iff #13 #47)
-#49 := [rewrite]: #48
-#45 := (iff #10 #44)
-#46 := [rewrite]: #45
-#52 := [monotonicity #46 #49]: #51
-#58 := [trans #52 #56]: #57
-#61 := [quant-intro #58]: #60
-#67 := [monotonicity #61 #64]: #66
-#73 := [monotonicity #67 #70]: #72
-#79 := [trans #73 #77]: #78
-#82 := [monotonicity #79]: #81
-#43 := [asserted]: #26
-#85 := [mp #43 #82]: #80
-#83 := [not-or-elim #85]: #65
-#86 := [and-elim #83]: #62
-#570 := (pattern #11)
-#571 := (forall (vars (?v0 S2)) (:pat #570) #54)
-#574 := (iff #59 #571)
-#572 := (iff #54 #54)
-#573 := [refl]: #572
-#575 := [quant-intro #573]: #574
-#100 := (~ #59 #59)
-#98 := (~ #54 #54)
-#99 := [refl]: #98
-#101 := [nnf-pos #99]: #100
-#84 := [and-elim #83]: #59
-#91 := [mp~ #84 #101]: #59
-#576 := [mp #91 #575]: #571
-#153 := (not #62)
-#232 := (not #571)
-#243 := (or #232 #153 #239)
-#240 := (or #153 #239)
-#244 := (or #232 #240)
-#245 := (iff #244 #243)
-#242 := [rewrite]: #245
-#172 := [quant-inst]: #244
-#246 := [mp #172 #242]: #243
-#208 := [unit-resolution #246 #576 #86]: #239
-#225 := (not #239)
-#351 := (or #232 #225 #241)
-#562 := (or #225 #241)
-#558 := (or #232 #562)
-#231 := (iff #558 #351)
-#565 := [rewrite]: #231
-#230 := [quant-inst]: #558
-#566 := [mp #230 #565]: #351
-#209 := [unit-resolution #566 #576 #208]: #241
-#87 := (not #68)
-#88 := [not-or-elim #85]: #87
-#564 := (not #241)
-#569 := (or #232 #68 #564)
-#219 := (or #564 #68)
-#559 := (or #232 #219)
-#545 := (iff #559 #569)
-#567 := (or #68 #564)
-#222 := (or #232 #567)
-#561 := (iff #222 #569)
-#202 := [rewrite]: #561
-#560 := (iff #559 #222)
-#568 := (iff #219 #567)
-#563 := [rewrite]: #568
-#218 := [monotonicity #563]: #560
-#206 := [trans #218 #202]: #545
-#217 := [quant-inst]: #559
-#207 := [mp #217 #206]: #569
-[unit-resolution #207 #576 #88 #209]: false
-unsat
-043713d1f8d615cef2b57b8a8ae1162f9c51de61 258 0
+c32773e30c401fac91663753c8932e4d15be0cde 258 0
 #2 := false
 decl f4 :: (-> S2 S1)
 decl ?v0!2 :: S2
@@ -6057,72 +5932,132 @@
 #579 := [quant-inst]: #578
 [unit-resolution #579 #432 #573]: false
 unsat
-0e7fa24f774b5d4840baee92f17adcdc6e36469d 64 0
-#2 := false
-decl f3 :: (-> S2 S2 S3)
-decl f4 :: S2
-#14 := f4
+c94ebedde81defab6c020062b6dae6aec5aa6893 124 0
+#2 := false
+decl f3 :: (-> S2 S1)
+decl f4 :: (-> S2 S2)
 decl f5 :: S2
 #16 := f5
-#18 := (f3 f5 f4)
-#17 := (f3 f4 f5)
-#19 := (= #17 #18)
-#62 := (not #19)
-#8 := (:var 1 S2)
-#9 := (:var 0 S2)
-#11 := (f3 #9 #8)
-#10 := (f3 #8 #9)
-#12 := (= #10 #11)
-#13 := (forall (vars (?v0 S2) (?v1 S2)) #12)
-#52 := (not #13)
-#53 := (or #52 #19)
-#58 := (not #53)
-#15 := (= f4 f4)
-#20 := (and #15 #19)
-#21 := (implies #13 #20)
-#22 := (not #21)
-#59 := (iff #22 #58)
-#56 := (iff #21 #53)
-#49 := (implies #13 #19)
-#54 := (iff #49 #53)
-#55 := [rewrite]: #54
-#50 := (iff #21 #49)
-#47 := (iff #20 #19)
-#1 := true
-#42 := (and true #19)
-#45 := (iff #42 #19)
+#20 := (f4 f5)
+#21 := (f4 #20)
+#154 := (f3 #21)
+decl f1 :: S1
+#4 := f1
+#241 := (= f1 #154)
+#152 := (f3 #20)
+#239 := (= f1 #152)
+#17 := (f3 f5)
+#62 := (= f1 #17)
+#8 := (:var 0 S2)
+#11 := (f4 #8)
+#12 := (f3 #11)
+#47 := (= f1 #12)
+#9 := (f3 #8)
+#44 := (= f1 #9)
+#53 := (not #44)
+#54 := (or #53 #47)
+#59 := (forall (vars (?v0 S2)) #54)
+#65 := (and #59 #62)
+#22 := (f4 #21)
+#23 := (f3 #22)
+#68 := (= f1 #23)
+#74 := (not #65)
+#75 := (or #74 #68)
+#80 := (not #75)
+#24 := (= #23 f1)
+#18 := (= #17 f1)
+#13 := (= #12 f1)
+#10 := (= #9 f1)
+#14 := (implies #10 #13)
+#15 := (forall (vars (?v0 S2)) #14)
+#19 := (and #15 #18)
+#25 := (implies #19 #24)
+#26 := (not #25)
+#81 := (iff #26 #80)
+#78 := (iff #25 #75)
+#71 := (implies #65 #68)
+#76 := (iff #71 #75)
+#77 := [rewrite]: #76
+#72 := (iff #25 #71)
+#69 := (iff #24 #68)
+#70 := [rewrite]: #69
+#66 := (iff #19 #65)
+#63 := (iff #18 #62)
+#64 := [rewrite]: #63
+#60 := (iff #15 #59)
+#57 := (iff #14 #54)
+#50 := (implies #44 #47)
+#55 := (iff #50 #54)
+#56 := [rewrite]: #55
+#51 := (iff #14 #50)
+#48 := (iff #13 #47)
+#49 := [rewrite]: #48
+#45 := (iff #10 #44)
 #46 := [rewrite]: #45
-#43 := (iff #20 #42)
-#40 := (iff #15 true)
-#41 := [rewrite]: #40
-#44 := [monotonicity #41]: #43
-#48 := [trans #44 #46]: #47
-#51 := [monotonicity #48]: #50
-#57 := [trans #51 #55]: #56
-#60 := [monotonicity #57]: #59
-#39 := [asserted]: #22
-#63 := [mp #39 #60]: #58
-#64 := [not-or-elim #63]: #62
-#547 := (pattern #11)
-#546 := (pattern #10)
-#548 := (forall (vars (?v0 S2) (?v1 S2)) (:pat #546 #547) #12)
-#551 := (iff #13 #548)
-#549 := (iff #12 #12)
-#550 := [refl]: #549
-#552 := [quant-intro #550]: #551
-#74 := (~ #13 #13)
-#72 := (~ #12 #12)
-#73 := [refl]: #72
-#75 := [nnf-pos #73]: #74
-#61 := [not-or-elim #63]: #13
-#67 := [mp~ #61 #75]: #13
-#553 := [mp #67 #552]: #548
-#129 := (not #548)
-#216 := (or #129 #19)
-#130 := [quant-inst]: #216
-[unit-resolution #130 #553 #64]: false
-unsat
-7fcf7ce1521f6f1599b2fe6f93ba5dee1cbd7b76 222 0
+#52 := [monotonicity #46 #49]: #51
+#58 := [trans #52 #56]: #57
+#61 := [quant-intro #58]: #60
+#67 := [monotonicity #61 #64]: #66
+#73 := [monotonicity #67 #70]: #72
+#79 := [trans #73 #77]: #78
+#82 := [monotonicity #79]: #81
+#43 := [asserted]: #26
+#85 := [mp #43 #82]: #80
+#83 := [not-or-elim #85]: #65
+#86 := [and-elim #83]: #62
+#570 := (pattern #11)
+#571 := (forall (vars (?v0 S2)) (:pat #570) #54)
+#574 := (iff #59 #571)
+#572 := (iff #54 #54)
+#573 := [refl]: #572
+#575 := [quant-intro #573]: #574
+#100 := (~ #59 #59)
+#98 := (~ #54 #54)
+#99 := [refl]: #98
+#101 := [nnf-pos #99]: #100
+#84 := [and-elim #83]: #59
+#91 := [mp~ #84 #101]: #59
+#576 := [mp #91 #575]: #571
+#153 := (not #62)
+#232 := (not #571)
+#243 := (or #232 #153 #239)
+#240 := (or #153 #239)
+#244 := (or #232 #240)
+#245 := (iff #244 #243)
+#242 := [rewrite]: #245
+#172 := [quant-inst]: #244
+#246 := [mp #172 #242]: #243
+#208 := [unit-resolution #246 #576 #86]: #239
+#225 := (not #239)
+#351 := (or #232 #225 #241)
+#562 := (or #225 #241)
+#558 := (or #232 #562)
+#231 := (iff #558 #351)
+#565 := [rewrite]: #231
+#230 := [quant-inst]: #558
+#566 := [mp #230 #565]: #351
+#209 := [unit-resolution #566 #576 #208]: #241
+#87 := (not #68)
+#88 := [not-or-elim #85]: #87
+#564 := (not #241)
+#569 := (or #232 #68 #564)
+#219 := (or #564 #68)
+#559 := (or #232 #219)
+#545 := (iff #559 #569)
+#567 := (or #68 #564)
+#222 := (or #232 #567)
+#561 := (iff #222 #569)
+#202 := [rewrite]: #561
+#560 := (iff #559 #222)
+#568 := (iff #219 #567)
+#563 := [rewrite]: #568
+#218 := [monotonicity #563]: #560
+#206 := [trans #218 #202]: #545
+#217 := [quant-inst]: #559
+#207 := [mp #217 #206]: #569
+[unit-resolution #207 #576 #88 #209]: false
+unsat
+29a00825da3cfb6f45d89e9d7c24512d752b68eb 222 0
 #2 := false
 decl f3 :: (-> S2 S1)
 decl ?v0!0 :: S2
@@ -6345,7 +6280,122 @@
 #610 := [quant-inst]: #609
 [unit-resolution #610 #339 #320]: false
 unsat
-e97ea15e571d05d4542f0baceec935a45a20adf5 250 0
+d6381b0e6162629304a9edd3be9ca3c00c481087 64 0
+#2 := false
+decl f3 :: (-> S2 S2 S3)
+decl f4 :: S2
+#14 := f4
+decl f5 :: S2
+#16 := f5
+#18 := (f3 f5 f4)
+#17 := (f3 f4 f5)
+#19 := (= #17 #18)
+#62 := (not #19)
+#8 := (:var 1 S2)
+#9 := (:var 0 S2)
+#11 := (f3 #9 #8)
+#10 := (f3 #8 #9)
+#12 := (= #10 #11)
+#13 := (forall (vars (?v0 S2) (?v1 S2)) #12)
+#52 := (not #13)
+#53 := (or #52 #19)
+#58 := (not #53)
+#15 := (= f4 f4)
+#20 := (and #15 #19)
+#21 := (implies #13 #20)
+#22 := (not #21)
+#59 := (iff #22 #58)
+#56 := (iff #21 #53)
+#49 := (implies #13 #19)
+#54 := (iff #49 #53)
+#55 := [rewrite]: #54
+#50 := (iff #21 #49)
+#47 := (iff #20 #19)
+#1 := true
+#42 := (and true #19)
+#45 := (iff #42 #19)
+#46 := [rewrite]: #45
+#43 := (iff #20 #42)
+#40 := (iff #15 true)
+#41 := [rewrite]: #40
+#44 := [monotonicity #41]: #43
+#48 := [trans #44 #46]: #47
+#51 := [monotonicity #48]: #50
+#57 := [trans #51 #55]: #56
+#60 := [monotonicity #57]: #59
+#39 := [asserted]: #22
+#63 := [mp #39 #60]: #58
+#64 := [not-or-elim #63]: #62
+#547 := (pattern #11)
+#546 := (pattern #10)
+#548 := (forall (vars (?v0 S2) (?v1 S2)) (:pat #546 #547) #12)
+#551 := (iff #13 #548)
+#549 := (iff #12 #12)
+#550 := [refl]: #549
+#552 := [quant-intro #550]: #551
+#74 := (~ #13 #13)
+#72 := (~ #12 #12)
+#73 := [refl]: #72
+#75 := [nnf-pos #73]: #74
+#61 := [not-or-elim #63]: #13
+#67 := [mp~ #61 #75]: #13
+#553 := [mp #67 #552]: #548
+#129 := (not #548)
+#216 := (or #129 #19)
+#130 := [quant-inst]: #216
+[unit-resolution #130 #553 #64]: false
+unsat
+a59143663975583139cdacfbcd52f21f568835d6 49 0
+#2 := false
+decl f1 :: S1
+#4 := f1
+decl f3 :: (-> S2 S4 S1)
+#9 := (:var 0 S4)
+#13 := (:var 1 S2)
+#14 := (f3 #13 #9)
+#15 := (= #14 f1)
+#16 := (exists (vars (?v0 S2) (?v1 S4)) #15)
+#8 := (:var 2 S2)
+#10 := (f3 #8 #9)
+#11 := (= #10 f1)
+#12 := (exists (vars (?v0 S2) (?v1 S3) (?v2 S4)) #11)
+#17 := (iff #12 #16)
+#18 := (not #17)
+#64 := (iff #18 false)
+#1 := true
+#59 := (not true)
+#62 := (iff #59 false)
+#63 := [rewrite]: #62
+#60 := (iff #18 #59)
+#57 := (iff #17 true)
+#42 := (= f1 #14)
+#43 := (exists (vars (?v0 S2) (?v2 S4)) #42)
+#52 := (iff #43 #43)
+#55 := (iff #52 true)
+#56 := [rewrite]: #55
+#53 := (iff #17 #52)
+#50 := (iff #16 #43)
+#48 := (iff #15 #42)
+#49 := [rewrite]: #48
+#51 := [quant-intro #49]: #50
+#46 := (iff #12 #43)
+#36 := (= f1 #10)
+#39 := (exists (vars (?v0 S2) (?v1 S3) (?v2 S4)) #36)
+#44 := (iff #39 #43)
+#45 := [elim-unused]: #44
+#40 := (iff #12 #39)
+#37 := (iff #11 #36)
+#38 := [rewrite]: #37
+#41 := [quant-intro #38]: #40
+#47 := [trans #41 #45]: #46
+#54 := [monotonicity #47 #51]: #53
+#58 := [trans #54 #56]: #57
+#61 := [monotonicity #58]: #60
+#65 := [trans #61 #63]: #64
+#35 := [asserted]: #18
+[mp #35 #65]: false
+unsat
+7f4c24ba00666fac3b960c74d81cc061e8e4c71c 250 0
 #2 := false
 decl f3 :: (-> S2 S1)
 decl f7 :: S2
@@ -6596,61 +6646,7 @@
 #699 := [mp #350 #698]: #693
 [unit-resolution #699 #173 #714 #398]: false
 unsat
-8031eb3bcd3fb97da7b874e36b0d4d2ae215ec7b 49 0
-#2 := false
-decl f1 :: S1
-#4 := f1
-decl f3 :: (-> S2 S4 S1)
-#9 := (:var 0 S4)
-#13 := (:var 1 S2)
-#14 := (f3 #13 #9)
-#15 := (= #14 f1)
-#16 := (exists (vars (?v0 S2) (?v1 S4)) #15)
-#8 := (:var 2 S2)
-#10 := (f3 #8 #9)
-#11 := (= #10 f1)
-#12 := (exists (vars (?v0 S2) (?v1 S3) (?v2 S4)) #11)
-#17 := (iff #12 #16)
-#18 := (not #17)
-#64 := (iff #18 false)
-#1 := true
-#59 := (not true)
-#62 := (iff #59 false)
-#63 := [rewrite]: #62
-#60 := (iff #18 #59)
-#57 := (iff #17 true)
-#42 := (= f1 #14)
-#43 := (exists (vars (?v0 S2) (?v2 S4)) #42)
-#52 := (iff #43 #43)
-#55 := (iff #52 true)
-#56 := [rewrite]: #55
-#53 := (iff #17 #52)
-#50 := (iff #16 #43)
-#48 := (iff #15 #42)
-#49 := [rewrite]: #48
-#51 := [quant-intro #49]: #50
-#46 := (iff #12 #43)
-#36 := (= f1 #10)
-#39 := (exists (vars (?v0 S2) (?v1 S3) (?v2 S4)) #36)
-#44 := (iff #39 #43)
-#45 := [elim-unused]: #44
-#40 := (iff #12 #39)
-#37 := (iff #11 #36)
-#38 := [rewrite]: #37
-#41 := [quant-intro #38]: #40
-#47 := [trans #41 #45]: #46
-#54 := [monotonicity #47 #51]: #53
-#58 := [trans #54 #56]: #57
-#61 := [monotonicity #58]: #60
-#65 := [trans #61 #63]: #64
-#35 := [asserted]: #18
-[mp #35 #65]: false
-unsat
-2317912b27971033dc831a6ce5ef74d0f20fbca2 1 2
-unsat
-WARNING: failed to find a pattern for quantifier (quantifier id: k!9)
-
-301a246cbbd414b8b75c6b801fee2f734cf2af47 122 0
+55ab12f407bdf7fa84c1317fb83d267ee6dbe0b9 122 0
 #2 := false
 decl f3 :: (-> S2 S1)
 decl ?v0!1 :: S2
@@ -6773,9 +6769,21 @@
 #287 := [quant-inst]: #200
 [unit-resolution #287 #620 #138]: false
 unsat
-ee898f52c96d73444993788b39566855271caaec 1 0
-unsat
-2acdf9e468d060988547fd7ad4c93238ed78a5bb 105 0
+615edcc1b5967710c13cc8530677bd4b60ed143e 1 2
+unsat
+WARNING: failed to find a pattern for quantifier (quantifier id: k!9)
+
+cd545152cc212d0c395f2d5b056f6b9ac9c802b6 1 0
+unsat
+f064b99fb73e74622b958a2068a0d0b4edd902b2 1 0
+unsat
+2d8e7a5bcefce0c794a69f82f7029712f925b8a0 1 0
+unsat
+2c03da3c2314f743fe9232bb9b9c3ba10bf6d5ef 1 0
+unsat
+e41045b4d3521f41a792e556bf2332e60d77ec7a 1 0
+unsat
+1a85b2998fdcf0e23a359440a42ba41df7200751 105 0
 #2 := false
 decl f3 :: (-> S1 S1)
 decl ?v0!1 :: S1
@@ -6881,9 +6889,7 @@
 #261 := [quant-inst]: #188
 [unit-resolution #261 #590 #259]: false
 unsat
-f7daa562701d4999ed8a3f5ec133f08651bf6190 1 0
-unsat
-ff2e1b7168f418022909b6d3ec628836562df57d 230 0
+598fbc0a61e9e499866f4757d97c531ce37db1ae 230 0
 #2 := false
 decl f3 :: (-> S1 S1)
 decl ?v0!0 :: S1
@@ -7114,9 +7120,7 @@
 #309 := [quant-inst]: #308
 [unit-resolution #309 #590 #312]: false
 unsat
-fdbe39cdd485517d8ec1964f2c4fb7b6646fe608 1 0
-unsat
-258fe7f9c05eff8e107778930f55bcfa407e2fde 156 0
+cac0a2176ec80fb1c96e1c40b7d14da0fa6af78c 156 0
 #2 := false
 decl f3 :: (-> S1 S2 S1)
 #9 := (:var 0 S2)
@@ -7273,9 +7277,7 @@
 #269 := [quant-inst]: #264
 [unit-resolution #269 #592 #292]: false
 unsat
-779c5fc38fd08b8484ec1da52f6a17e6b849eac4 1 0
-unsat
-6c0f54222b59d5e628ff948749ac67e96364c6a1 74 0
+49ea124a0c85794588287d88e4a10f91ec534ee7 74 0
 #2 := false
 decl f3 :: (-> S2 S3 S4)
 #9 := (:var 0 S3)
@@ -7350,9 +7352,7 @@
 #548 := [mp #55 #547]: #543
 [unit-resolution #548 #537]: false
 unsat
-b720bb30cc87882c3f660a5bf9c8737dde4c14c4 1 0
-unsat
-cba176f179e597e7b48393532028be8634e0c4f7 108 0
+f922619aea5365bdf4744142fd24ae3f3d91080e 108 0
 #2 := false
 decl f3 :: (-> S1 S1)
 #11 := (:var 0 S1)
@@ -7461,7 +7461,7 @@
 #179 := [quant-inst]: #265
 [unit-resolution #179 #96 #599]: false
 unsat
-1f79e2aaf530f1cad27b8439c2a93a00022ad034 183 2
+ccfa103f9dc86cc5a39d3a0bd17ea6e15ed83789 183 2
 #2 := false
 decl f3 :: (-> S1 S2 S1)
 #9 := (:var 0 S2)
@@ -7647,21 +7647,15 @@
 unsat
 WARNING: failed to find a pattern for quantifier (quantifier id: k!12)
 
-da85096b57c08af8febf5871c1333121a34c6d28 1 0
-unsat
-6c41d71d8ec4d73ffa088d938320c03ca09b9201 1 2
+04a10002b6cfbd9320b025e8add4b15624e7ca83 1 0
+unsat
+56c3c1aac521682b0935ad2f17220b3ea8838cd3 1 2
 unsat
 WARNING: failed to find a pattern for quantifier (quantifier id: k!12)
 
-5d15e0a34749300f4ce5f4c920d3ca259f7027cd 1 0
-unsat
-fa1639cb0c965ae73d4377750883cc09dbe87562 1 0
-unsat
-fc8d2e66c31565ae0b4756bf95cf9f0717981220 1 0
-unsat
-ce6d32e932c7cece567323ec34f7a5540258fa7f 1 0
-unsat
-cfd9d2f647046e282a1080aae51b4b88be291157 107 0
+5211d0658c8aa96a06f5b015ae31d3fe55c3cab1 1 0
+unsat
+c20f820d839321d9bf17ab605375903e475f33e6 107 0
 #2 := false
 decl f3 :: (-> S2 S1)
 #8 := (:var 0 S2)
@@ -7769,9 +7763,9 @@
 #279 := [quant-inst]: #193
 [unit-resolution #279 #102 #618]: false
 unsat
-22c7d1d1136fafc0a09e243a12ede1ee4fee416f 1 0
-unsat
-9ea0d22c6270219f7cef6ee3d8f429562349b2a3 75 0
+677e024c66187dc21b71678cb1488477fcd87167 1 0
+unsat
+872e0bf32f19bb056d35b742419e7bfe9bc7d3b4 75 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -7847,7 +7841,9 @@
 #41 := [asserted]: #24
 [mp #41 #91]: false
 unsat
-51de51a0d85b126e271283f7eca5a0bb3a5a5bca 207 0
+ac8a74b907f6dc5eac6d550dfb9933eb000058e1 1 0
+unsat
+90c127d5cedd68c871816f3946c02cfc6b8af4a9 207 0
 #2 := false
 decl f3 :: (-> S2 S1)
 decl ?v1!0 :: (-> S2 S2)
@@ -8055,101 +8051,9 @@
 #622 := [mp #616 #257]: #277
 [unit-resolution #622 #645 #591 #596]: false
 unsat
-b8d80ad0d8c340491041b0c69d71b3944eaf90e6 93 0
-#2 := false
-decl f5 :: (-> S2 S1)
-decl f6 :: S2
-#16 := f6
-#20 := (f5 f6)
-decl f1 :: S1
-#4 := f1
-#65 := (= f1 #20)
-#84 := (not #65)
-decl f3 :: (-> S2 S3 S1)
-decl f4 :: S3
-#9 := f4
-#17 := (f3 f6 f4)
-#59 := (= f1 #17)
-#8 := (:var 0 S2)
-#12 := (f5 #8)
-#44 := (= f1 #12)
-#10 := (f3 #8 f4)
-#41 := (= f1 #10)
-#50 := (not #41)
-#51 := (or #50 #44)
-#56 := (forall (vars (?v0 S2)) #51)
-#62 := (and #56 #59)
-#71 := (not #62)
-#72 := (or #71 #65)
-#77 := (not #72)
-#21 := (= #20 f1)
-#18 := (= #17 f1)
-#13 := (= #12 f1)
-#11 := (= #10 f1)
-#14 := (implies #11 #13)
-#15 := (forall (vars (?v0 S2)) #14)
-#19 := (and #15 #18)
-#22 := (implies #19 #21)
-#23 := (not #22)
-#78 := (iff #23 #77)
-#75 := (iff #22 #72)
-#68 := (implies #62 #65)
-#73 := (iff #68 #72)
-#74 := [rewrite]: #73
-#69 := (iff #22 #68)
-#66 := (iff #21 #65)
-#67 := [rewrite]: #66
-#63 := (iff #19 #62)
-#60 := (iff #18 #59)
-#61 := [rewrite]: #60
-#57 := (iff #15 #56)
-#54 := (iff #14 #51)
-#47 := (implies #41 #44)
-#52 := (iff #47 #51)
-#53 := [rewrite]: #52
-#48 := (iff #14 #47)
-#45 := (iff #13 #44)
-#46 := [rewrite]: #45
-#42 := (iff #11 #41)
-#43 := [rewrite]: #42
-#49 := [monotonicity #43 #46]: #48
-#55 := [trans #49 #53]: #54
-#58 := [quant-intro #55]: #57
-#64 := [monotonicity #58 #61]: #63
-#70 := [monotonicity #64 #67]: #69
-#76 := [trans #70 #74]: #75
-#79 := [monotonicity #76]: #78
-#40 := [asserted]: #23
-#82 := [mp #40 #79]: #77
-#85 := [not-or-elim #82]: #84
-#80 := [not-or-elim #82]: #62
-#83 := [and-elim #80]: #59
-#572 := (pattern #12)
-#571 := (pattern #10)
-#573 := (forall (vars (?v0 S2)) (:pat #571 #572) #51)
-#576 := (iff #56 #573)
-#574 := (iff #51 #51)
-#575 := [refl]: #574
-#577 := [quant-intro #575]: #576
-#97 := (~ #56 #56)
-#95 := (~ #51 #51)
-#96 := [refl]: #95
-#98 := [nnf-pos #96]: #97
-#81 := [and-elim #80]: #56
-#88 := [mp~ #81 #98]: #56
-#578 := [mp #88 #577]: #573
-#155 := (not #59)
-#157 := (not #573)
-#244 := (or #157 #155 #65)
-#242 := (or #155 #65)
-#235 := (or #157 #242)
-#247 := (iff #235 #244)
-#175 := [rewrite]: #247
-#246 := [quant-inst]: #235
-#248 := [mp #246 #175]: #244
-[unit-resolution #248 #578 #83 #85]: false
-unsat
-628763241ae198f2ea4a54c641ca6e8df6d851ca 250 0
+5a145de81e4f4eeae6397f2aeade9a713df0b402 1 0
+unsat
+8bc50e9ee1d32eca0b2ec9f707ee916f7233c543 250 0
 #2 := false
 decl f3 :: (-> S2 S1)
 decl ?v1!1 :: (-> S2 S2)
@@ -8400,121 +8304,9 @@
 #616 := [mp #628 #615]: #622
 [unit-resolution #616 #128 #676 #607 #606]: false
 unsat
-0f8bf9d230b6b97c3b9a64ed4f1bb8757963fbc7 113 0
-#2 := false
-decl f3 :: (-> S2 S3 S1)
-decl f4 :: S3
-#9 := f4
-decl f6 :: S2
-#16 := f6
-#19 := (f3 f6 f4)
-decl f1 :: S1
-#4 := f1
-#57 := (= f1 #19)
-decl f5 :: (-> S2 S1)
-#17 := (f5 f6)
-#54 := (= f1 #17)
-#60 := (and #54 #57)
-#63 := (not #60)
-#8 := (:var 0 S2)
-#12 := (f5 #8)
-#45 := (= f1 #12)
-#10 := (f3 #8 f4)
-#42 := (= f1 #10)
-#48 := (and #42 #45)
-#51 := (exists (vars (?v0 S2)) #48)
-#66 := (or #51 #63)
-#69 := (not #66)
-#20 := (= #19 f1)
-#18 := (= #17 f1)
-#21 := (and #18 #20)
-#22 := (not #21)
-#13 := (= #12 f1)
-#11 := (= #10 f1)
-#14 := (and #11 #13)
-#15 := (exists (vars (?v0 S2)) #14)
-#23 := (or #15 #22)
-#24 := (not #23)
-#70 := (iff #24 #69)
-#67 := (iff #23 #66)
-#64 := (iff #22 #63)
-#61 := (iff #21 #60)
-#58 := (iff #20 #57)
-#59 := [rewrite]: #58
-#55 := (iff #18 #54)
-#56 := [rewrite]: #55
-#62 := [monotonicity #56 #59]: #61
-#65 := [monotonicity #62]: #64
-#52 := (iff #15 #51)
-#49 := (iff #14 #48)
-#46 := (iff #13 #45)
-#47 := [rewrite]: #46
-#43 := (iff #11 #42)
-#44 := [rewrite]: #43
-#50 := [monotonicity #44 #47]: #49
-#53 := [quant-intro #50]: #52
-#68 := [monotonicity #53 #65]: #67
-#71 := [monotonicity #68]: #70
-#41 := [asserted]: #24
-#74 := [mp #41 #71]: #69
-#75 := [not-or-elim #74]: #60
-#77 := [and-elim #75]: #57
-#76 := [and-elim #75]: #54
-#585 := (pattern #12)
-#584 := (pattern #10)
-#93 := (not #45)
-#92 := (not #42)
-#94 := (or #92 #93)
-#586 := (forall (vars (?v0 S2)) (:pat #584 #585) #94)
-#101 := (forall (vars (?v0 S2)) #94)
-#589 := (iff #101 #586)
-#587 := (iff #94 #94)
-#588 := [refl]: #587
-#590 := [quant-intro #588]: #589
-#87 := (not #48)
-#90 := (forall (vars (?v0 S2)) #87)
-#102 := (iff #90 #101)
-#99 := (iff #87 #94)
-#95 := (not #94)
-#83 := (not #95)
-#97 := (iff #83 #94)
-#98 := [rewrite]: #97
-#84 := (iff #87 #83)
-#85 := (iff #48 #95)
-#86 := [rewrite]: #85
-#96 := [monotonicity #86]: #84
-#100 := [trans #96 #98]: #99
-#103 := [quant-intro #100]: #102
-#72 := (not #51)
-#80 := (~ #72 #90)
-#88 := (~ #87 #87)
-#89 := [refl]: #88
-#78 := [nnf-neg #89]: #80
-#73 := [not-or-elim #74]: #72
-#91 := [mp~ #73 #78]: #90
-#104 := [mp #91 #103]: #101
-#591 := [mp #104 #590]: #586
-#255 := (not #57)
-#168 := (not #54)
-#248 := (not #586)
-#259 := (or #248 #168 #255)
-#169 := (or #255 #168)
-#260 := (or #248 #169)
-#578 := (iff #260 #259)
-#256 := (or #168 #255)
-#261 := (or #248 #256)
-#241 := (iff #261 #259)
-#576 := [rewrite]: #241
-#258 := (iff #260 #261)
-#170 := (iff #169 #256)
-#257 := [rewrite]: #170
-#262 := [monotonicity #257]: #258
-#235 := [trans #262 #576]: #578
-#188 := [quant-inst]: #260
-#365 := [mp #188 #235]: #259
-[unit-resolution #365 #591 #76 #77]: false
-unsat
-64bd43a9d49de65761e5220e25dbbe3dc269bf0e 238 0
+294a32d87135d8d12940225c21b358de5bcb1008 1 0
+unsat
+f2c8c9d3021edc718ea5a2b825764e713b11fd77 238 0
 #2 := false
 decl f3 :: (-> S2 S1)
 decl ?v1!1 :: (-> S2 S2)
@@ -8753,7 +8545,215 @@
 #338 := [mp #643 #632]: #276
 [unit-resolution #338 #664 #617 #616]: false
 unsat
-42f3c8af4c50150e11519c085a0ad69e107e1705 43 0
+f085880cbe2b6e218620939fd09c5950c149f5a2 93 0
+#2 := false
+decl f5 :: (-> S2 S1)
+decl f6 :: S2
+#16 := f6
+#20 := (f5 f6)
+decl f1 :: S1
+#4 := f1
+#65 := (= f1 #20)
+#84 := (not #65)
+decl f3 :: (-> S2 S3 S1)
+decl f4 :: S3
+#9 := f4
+#17 := (f3 f6 f4)
+#59 := (= f1 #17)
+#8 := (:var 0 S2)
+#12 := (f5 #8)
+#44 := (= f1 #12)
+#10 := (f3 #8 f4)
+#41 := (= f1 #10)
+#50 := (not #41)
+#51 := (or #50 #44)
+#56 := (forall (vars (?v0 S2)) #51)
+#62 := (and #56 #59)
+#71 := (not #62)
+#72 := (or #71 #65)
+#77 := (not #72)
+#21 := (= #20 f1)
+#18 := (= #17 f1)
+#13 := (= #12 f1)
+#11 := (= #10 f1)
+#14 := (implies #11 #13)
+#15 := (forall (vars (?v0 S2)) #14)
+#19 := (and #15 #18)
+#22 := (implies #19 #21)
+#23 := (not #22)
+#78 := (iff #23 #77)
+#75 := (iff #22 #72)
+#68 := (implies #62 #65)
+#73 := (iff #68 #72)
+#74 := [rewrite]: #73
+#69 := (iff #22 #68)
+#66 := (iff #21 #65)
+#67 := [rewrite]: #66
+#63 := (iff #19 #62)
+#60 := (iff #18 #59)
+#61 := [rewrite]: #60
+#57 := (iff #15 #56)
+#54 := (iff #14 #51)
+#47 := (implies #41 #44)
+#52 := (iff #47 #51)
+#53 := [rewrite]: #52
+#48 := (iff #14 #47)
+#45 := (iff #13 #44)
+#46 := [rewrite]: #45
+#42 := (iff #11 #41)
+#43 := [rewrite]: #42
+#49 := [monotonicity #43 #46]: #48
+#55 := [trans #49 #53]: #54
+#58 := [quant-intro #55]: #57
+#64 := [monotonicity #58 #61]: #63
+#70 := [monotonicity #64 #67]: #69
+#76 := [trans #70 #74]: #75
+#79 := [monotonicity #76]: #78
+#40 := [asserted]: #23
+#82 := [mp #40 #79]: #77
+#85 := [not-or-elim #82]: #84
+#80 := [not-or-elim #82]: #62
+#83 := [and-elim #80]: #59
+#572 := (pattern #12)
+#571 := (pattern #10)
+#573 := (forall (vars (?v0 S2)) (:pat #571 #572) #51)
+#576 := (iff #56 #573)
+#574 := (iff #51 #51)
+#575 := [refl]: #574
+#577 := [quant-intro #575]: #576
+#97 := (~ #56 #56)
+#95 := (~ #51 #51)
+#96 := [refl]: #95
+#98 := [nnf-pos #96]: #97
+#81 := [and-elim #80]: #56
+#88 := [mp~ #81 #98]: #56
+#578 := [mp #88 #577]: #573
+#155 := (not #59)
+#157 := (not #573)
+#244 := (or #157 #155 #65)
+#242 := (or #155 #65)
+#235 := (or #157 #242)
+#247 := (iff #235 #244)
+#175 := [rewrite]: #247
+#246 := [quant-inst]: #235
+#248 := [mp #246 #175]: #244
+[unit-resolution #248 #578 #83 #85]: false
+unsat
+9ef609620af3ecd94cdef1f843003b8483978fbb 113 0
+#2 := false
+decl f3 :: (-> S2 S3 S1)
+decl f4 :: S3
+#9 := f4
+decl f6 :: S2
+#16 := f6
+#19 := (f3 f6 f4)
+decl f1 :: S1
+#4 := f1
+#57 := (= f1 #19)
+decl f5 :: (-> S2 S1)
+#17 := (f5 f6)
+#54 := (= f1 #17)
+#60 := (and #54 #57)
+#63 := (not #60)
+#8 := (:var 0 S2)
+#12 := (f5 #8)
+#45 := (= f1 #12)
+#10 := (f3 #8 f4)
+#42 := (= f1 #10)
+#48 := (and #42 #45)
+#51 := (exists (vars (?v0 S2)) #48)
+#66 := (or #51 #63)
+#69 := (not #66)
+#20 := (= #19 f1)
+#18 := (= #17 f1)
+#21 := (and #18 #20)
+#22 := (not #21)
+#13 := (= #12 f1)
+#11 := (= #10 f1)
+#14 := (and #11 #13)
+#15 := (exists (vars (?v0 S2)) #14)
+#23 := (or #15 #22)
+#24 := (not #23)
+#70 := (iff #24 #69)
+#67 := (iff #23 #66)
+#64 := (iff #22 #63)
+#61 := (iff #21 #60)
+#58 := (iff #20 #57)
+#59 := [rewrite]: #58
+#55 := (iff #18 #54)
+#56 := [rewrite]: #55
+#62 := [monotonicity #56 #59]: #61
+#65 := [monotonicity #62]: #64
+#52 := (iff #15 #51)
+#49 := (iff #14 #48)
+#46 := (iff #13 #45)
+#47 := [rewrite]: #46
+#43 := (iff #11 #42)
+#44 := [rewrite]: #43
+#50 := [monotonicity #44 #47]: #49
+#53 := [quant-intro #50]: #52
+#68 := [monotonicity #53 #65]: #67
+#71 := [monotonicity #68]: #70
+#41 := [asserted]: #24
+#74 := [mp #41 #71]: #69
+#75 := [not-or-elim #74]: #60
+#77 := [and-elim #75]: #57
+#76 := [and-elim #75]: #54
+#585 := (pattern #12)
+#584 := (pattern #10)
+#93 := (not #45)
+#92 := (not #42)
+#94 := (or #92 #93)
+#586 := (forall (vars (?v0 S2)) (:pat #584 #585) #94)
+#101 := (forall (vars (?v0 S2)) #94)
+#589 := (iff #101 #586)
+#587 := (iff #94 #94)
+#588 := [refl]: #587
+#590 := [quant-intro #588]: #589
+#87 := (not #48)
+#90 := (forall (vars (?v0 S2)) #87)
+#102 := (iff #90 #101)
+#99 := (iff #87 #94)
+#95 := (not #94)
+#83 := (not #95)
+#97 := (iff #83 #94)
+#98 := [rewrite]: #97
+#84 := (iff #87 #83)
+#85 := (iff #48 #95)
+#86 := [rewrite]: #85
+#96 := [monotonicity #86]: #84
+#100 := [trans #96 #98]: #99
+#103 := [quant-intro #100]: #102
+#72 := (not #51)
+#80 := (~ #72 #90)
+#88 := (~ #87 #87)
+#89 := [refl]: #88
+#78 := [nnf-neg #89]: #80
+#73 := [not-or-elim #74]: #72
+#91 := [mp~ #73 #78]: #90
+#104 := [mp #91 #103]: #101
+#591 := [mp #104 #590]: #586
+#255 := (not #57)
+#168 := (not #54)
+#248 := (not #586)
+#259 := (or #248 #168 #255)
+#169 := (or #255 #168)
+#260 := (or #248 #169)
+#578 := (iff #260 #259)
+#256 := (or #168 #255)
+#261 := (or #248 #256)
+#241 := (iff #261 #259)
+#576 := [rewrite]: #241
+#258 := (iff #260 #261)
+#170 := (iff #169 #256)
+#257 := [rewrite]: #170
+#262 := [monotonicity #257]: #258
+#235 := [trans #262 #576]: #578
+#188 := [quant-inst]: #260
+#365 := [mp #188 #235]: #259
+[unit-resolution #365 #591 #76 #77]: false
+unsat
+b1e70439cf48151ac262711545999d4078fe3f18 43 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -8797,7 +8797,7 @@
 #32 := [asserted]: #15
 [mp #32 #58]: false
 unsat
-e44a18e086890afdae37ccfa17aec44f2a634103 27 0
+5c6baa5560c27cbea391f380f1d2efa0c31ad451 27 0
 #2 := false
 #1 := true
 #9 := (or false true)
@@ -8825,7 +8825,7 @@
 #28 := [asserted]: #11
 [mp #28 #46]: false
 unsat
-48f0da3339d9c9f7707291c89458bdaf3e50c114 31 0
+ca24bad9d30cd7adb4d8824254fb1d868566dba8 31 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -8857,7 +8857,7 @@
 #29 := [asserted]: #12
 [mp #29 #46]: false
 unsat
-e7059fb5d2b001f75897ae16a2ace8ce919e02a1 33 0
+4c370ded875fbae45221845a75b0cee6f100c565 33 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -8891,7 +8891,7 @@
 #30 := [asserted]: #13
 [mp #30 #47]: false
 unsat
-f5fef851c10f40408540848a3507970291adb3e5 35 0
+1796e5eebe3961668a10c629c8446aea6b05d0ff 35 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -8927,7 +8927,7 @@
 #30 := [asserted]: #13
 [mp #30 #50]: false
 unsat
-9facdecb47b87e40c25944deaa804ef85fc985e3 38 0
+6cbede560f4445a6195546ba14a38ce4cef82756 38 0
 #2 := false
 decl f3 :: (-> S2 S2)
 decl f4 :: S2
@@ -8966,7 +8966,7 @@
 #114 := [quant-inst]: #200
 [unit-resolution #114 #51 #50]: false
 unsat
-ae9dfcc290bc6bcccab3cd3af533d10c7c03b3b8 30 0
+3951eb981ad2121ce0b01ef0fb8385398766b219 30 0
 #2 := false
 decl f4 :: (-> S3 S4)
 decl f6 :: S3
@@ -8997,7 +8997,7 @@
 #104 := [quant-inst]: #190
 [unit-resolution #104 #41 #38]: false
 unsat
-90ce83a254a12d0f1bfd0c5eb5a99c36ab0fe295 16 0
+cfb7ec1e9520aafa7d5b29cfb983793ee2d6f2b3 16 0
 #2 := false
 #1 := true
 #8 := (implies true true)
@@ -9014,7 +9014,7 @@
 #26 := [asserted]: #9
 [mp #26 #35]: false
 unsat
-9a0ddca6dee00a602bc428366efd931bcfcee94b 16 0
+7cbcb79eb27355ecf4f8c83e03297c7b412bce52 16 0
 #2 := false
 #8 := (implies false false)
 #9 := (not #8)
@@ -9031,7 +9031,7 @@
 #26 := [asserted]: #9
 [mp #26 #35]: false
 unsat
-cabaa8d0303be40a64e7064642dabce9e7bfcad7 31 0
+abfb47efa43a4820aa829461952d8e31f18076ce 31 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -9063,11 +9063,7 @@
 #29 := [asserted]: #12
 [mp #29 #46]: false
 unsat
-46acb4cd4b5353c32c529ffe509fc6f26ac2f2a1 3 0
-#2 := false
-[asserted]: false
-unsat
-ac00789473bf074e49a8a6419c1f2a1042912d6a 48 0
+68233e17fde29c54af280784ff125abdb937332e 48 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -9116,26 +9112,7 @@
 #31 := [asserted]: #14
 [mp #31 #63]: false
 unsat
-040123bf68e09d0b72cf990436bb29a623c102b8 18 0
-#2 := false
-#9 := 1::int
-#8 := 0::int
-#10 := (< 0::int 1::int)
-#11 := (not #10)
-#38 := (iff #11 false)
-#1 := true
-#33 := (not true)
-#36 := (iff #33 false)
-#37 := [rewrite]: #36
-#34 := (iff #11 #33)
-#31 := (iff #10 true)
-#32 := [rewrite]: #31
-#35 := [monotonicity #32]: #34
-#39 := [trans #35 #37]: #38
-#28 := [asserted]: #11
-[mp #28 #39]: false
-unsat
-75052914158f379cd343f693f354895fa579a89c 53 0
+f363d14bd402cc293d16ba4871e3b8a53de5f8dc 53 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -9189,26 +9166,7 @@
 #31 := [asserted]: #14
 [mp #31 #68]: false
 unsat
-be1600749b493592f603ae3a7f9dcbc68d688187 18 0
-#2 := false
-#9 := 1::int
-#8 := 0::int
-#10 := (<= 0::int 1::int)
-#11 := (not #10)
-#38 := (iff #11 false)
-#1 := true
-#33 := (not true)
-#36 := (iff #33 false)
-#37 := [rewrite]: #36
-#34 := (iff #11 #33)
-#31 := (iff #10 true)
-#32 := [rewrite]: #31
-#35 := [monotonicity #32]: #34
-#39 := [trans #35 #37]: #38
-#28 := [asserted]: #11
-[mp #28 #39]: false
-unsat
-4bcd26d70bcaf24bb295031b732101a3dec2c643 56 0
+9f187e77426ab643b39435558d6d1a14dc433609 56 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -9265,26 +9223,7 @@
 #32 := [asserted]: #15
 [mp #32 #71]: false
 unsat
-d6985ded37fcab252cac3fbb09a30e977c68973d 18 0
-#2 := false
-#9 := 2345678901::int
-#8 := 123456789::int
-#10 := (< 123456789::int 2345678901::int)
-#11 := (not #10)
-#38 := (iff #11 false)
-#1 := true
-#33 := (not true)
-#36 := (iff #33 false)
-#37 := [rewrite]: #36
-#34 := (iff #11 #33)
-#31 := (iff #10 true)
-#32 := [rewrite]: #31
-#35 := [monotonicity #32]: #34
-#39 := [trans #35 #37]: #38
-#28 := [asserted]: #11
-[mp #28 #39]: false
-unsat
-7eeb56537bd13a6f6bc35096a4ddfb33dceb295f 89 0
+510a0fc3c1359f943c6e00e7c3aafbf7737756e9 89 0
 #2 := false
 decl f4 :: S1
 #10 := f4
@@ -9374,7 +9313,7 @@
 #86 := [not-or-elim #83]: #48
 [mp #86 #107]: false
 unsat
-38ce6b99e91d92d7feb75b7b5ff7006aee1a887f 57 0
+356f92e13256c637921f76eda9e7cbbac3ef8f53 57 0
 #2 := false
 decl f3 :: (-> S2 S1)
 decl f4 :: S2
@@ -9432,38 +9371,11 @@
 #59 := [not-or-elim #57]: #58
 [mp #59 #74]: false
 unsat
-12f34f8245ed278a095c475d68eb5a5711d23981 30 0
-#2 := false
-decl f3 :: (-> int S2)
-#25 := 1::int
-#28 := (f3 1::int)
-#13 := 0::int
-#26 := (+ 0::int 1::int)
-#27 := (f3 #26)
-#29 := (= #27 #28)
-#30 := (not #29)
-#148 := (iff #30 false)
-#1 := true
-#143 := (not true)
-#146 := (iff #143 false)
-#147 := [rewrite]: #146
-#144 := (iff #30 #143)
-#141 := (iff #29 true)
-#136 := (= #28 #28)
-#139 := (iff #136 true)
-#140 := [rewrite]: #139
-#137 := (iff #29 #136)
-#133 := (= #26 1::int)
-#134 := [rewrite]: #133
-#135 := [monotonicity #134]: #29
-#138 := [monotonicity #135]: #137
-#142 := [trans #138 #140]: #141
-#145 := [monotonicity #142]: #144
-#149 := [trans #145 #147]: #148
-#132 := [asserted]: #30
-[mp #132 #149]: false
-unsat
-8e8baf35daf48781c204954ba8d7df5254aac6a8 50 0
+ff9d25294dc1a17176296b8b02c6fb61dd5a7105 3 0
+#2 := false
+[asserted]: false
+unsat
+f77cd44869b8452f0b9cdbc4acee77106cfc0c39 50 0
 #2 := false
 decl f5 :: S2
 #11 := f5
@@ -9514,7 +9426,26 @@
 #62 := [not-or-elim #58]: #61
 [unit-resolution #62 #70]: false
 unsat
-7bbe1bf9e8878e3709a71589e39f12e31278f1b7 27 0
+ae97c364e76e6bda750550b3359e25f9363fc00f 18 0
+#2 := false
+#9 := 1::int
+#8 := 0::int
+#10 := (< 0::int 1::int)
+#11 := (not #10)
+#38 := (iff #11 false)
+#1 := true
+#33 := (not true)
+#36 := (iff #33 false)
+#37 := [rewrite]: #36
+#34 := (iff #11 #33)
+#31 := (iff #10 true)
+#32 := [rewrite]: #31
+#35 := [monotonicity #32]: #34
+#39 := [trans #35 #37]: #38
+#28 := [asserted]: #11
+[mp #28 #39]: false
+unsat
+6168df6e70405fbcc2600c1e033ec5aaad4d620c 27 0
 #2 := false
 decl f5 :: (-> S2 S3)
 decl f4 :: S2
@@ -9542,41 +9473,26 @@
 #43 := [not-or-elim #42]: #41
 [unit-resolution #43 #51]: false
 unsat
-fca9345b5fb82879eab30d8a35a71a4cfb012222 33 0
-#2 := false
-#27 := 1::int
-decl f4 :: (-> S2 int)
-decl f5 :: S2
-#25 := f5
-#26 := (f4 f5)
-#28 := (+ #26 1::int)
-#29 := (< #26 #28)
-#30 := (not #29)
-#151 := (iff #30 false)
-#133 := (+ 1::int #26)
-#136 := (< #26 #133)
-#139 := (not #136)
-#149 := (iff #139 false)
-#1 := true
-#144 := (not true)
-#147 := (iff #144 false)
-#148 := [rewrite]: #147
-#145 := (iff #139 #144)
-#142 := (iff #136 true)
-#143 := [rewrite]: #142
-#146 := [monotonicity #143]: #145
-#150 := [trans #146 #148]: #149
-#140 := (iff #30 #139)
-#137 := (iff #29 #136)
-#134 := (= #28 #133)
-#135 := [rewrite]: #134
-#138 := [monotonicity #135]: #137
-#141 := [monotonicity #138]: #140
-#152 := [trans #141 #150]: #151
-#132 := [asserted]: #30
-[mp #132 #152]: false
-unsat
-a8014c2ba4ebe428717a3516d1900ca3b7591555 73 0
+93d89a3ed53f09b21acbcbce4122ad8ab50daca2 18 0
+#2 := false
+#9 := 1::int
+#8 := 0::int
+#10 := (<= 0::int 1::int)
+#11 := (not #10)
+#38 := (iff #11 false)
+#1 := true
+#33 := (not true)
+#36 := (iff #33 false)
+#37 := [rewrite]: #36
+#34 := (iff #11 #33)
+#31 := (iff #10 true)
+#32 := [rewrite]: #31
+#35 := [monotonicity #32]: #34
+#39 := [trans #35 #37]: #38
+#28 := [asserted]: #11
+[mp #28 #39]: false
+unsat
+5a8fd4dc177700b7e623e63e345f854da9c68ee0 73 0
 #2 := false
 decl f3 :: (-> S1 S1)
 decl f4 :: S1
@@ -9650,7 +9566,386 @@
 #146 := [quant-inst]: #232
 [unit-resolution #146 #566 #74]: false
 unsat
-f572500dcd49c30edfbceabc272b009fb11814d2 428 0
+80b6a701eb48d11531bbc36b28f9be8ab306b56a 18 0
+#2 := false
+#9 := 2345678901::int
+#8 := 123456789::int
+#10 := (< 123456789::int 2345678901::int)
+#11 := (not #10)
+#38 := (iff #11 false)
+#1 := true
+#33 := (not true)
+#36 := (iff #33 false)
+#37 := [rewrite]: #36
+#34 := (iff #11 #33)
+#31 := (iff #10 true)
+#32 := [rewrite]: #31
+#35 := [monotonicity #32]: #34
+#39 := [trans #35 #37]: #38
+#28 := [asserted]: #11
+[mp #28 #39]: false
+unsat
+f13cda4935d2ad2244c0ae2a16ca60c9a8153f04 106 0
+#2 := false
+decl f3 :: (-> S2 S2 S1)
+decl ?v0!0 :: S2
+#72 := ?v0!0
+#83 := (f3 ?v0!0 ?v0!0)
+decl f1 :: S1
+#4 := f1
+#75 := (= f1 #83)
+#76 := (not #75)
+#9 := (:var 0 S2)
+#16 := (f3 #9 #9)
+#50 := (= f1 #16)
+#53 := (forall (vars (?v0 S2)) #50)
+#69 := (not #53)
+#84 := (~ #69 #76)
+#85 := [sk]: #84
+#8 := (:var 1 S2)
+#12 := (f3 #9 #8)
+#41 := (= f1 #12)
+#10 := (f3 #8 #9)
+#38 := (= f1 #10)
+#44 := (and #38 #41)
+#47 := (forall (vars (?v0 S2) (?v1 S2)) #44)
+#59 := (not #47)
+#60 := (or #59 #53)
+#65 := (not #60)
+#17 := (= #16 f1)
+#18 := (forall (vars (?v0 S2)) #17)
+#13 := (= #12 f1)
+#11 := (= #10 f1)
+#14 := (and #11 #13)
+#15 := (forall (vars (?v0 S2) (?v1 S2)) #14)
+#19 := (implies #15 #18)
+#20 := (not #19)
+#66 := (iff #20 #65)
+#63 := (iff #19 #60)
+#56 := (implies #47 #53)
+#61 := (iff #56 #60)
+#62 := [rewrite]: #61
+#57 := (iff #19 #56)
+#54 := (iff #18 #53)
+#51 := (iff #17 #50)
+#52 := [rewrite]: #51
+#55 := [quant-intro #52]: #54
+#48 := (iff #15 #47)
+#45 := (iff #14 #44)
+#42 := (iff #13 #41)
+#43 := [rewrite]: #42
+#39 := (iff #11 #38)
+#40 := [rewrite]: #39
+#46 := [monotonicity #40 #43]: #45
+#49 := [quant-intro #46]: #48
+#58 := [monotonicity #49 #55]: #57
+#64 := [trans #58 #62]: #63
+#67 := [monotonicity #64]: #66
+#37 := [asserted]: #20
+#70 := [mp #37 #67]: #65
+#71 := [not-or-elim #70]: #69
+#88 := [mp~ #71 #85]: #76
+#577 := (pattern #12)
+#576 := (pattern #10)
+#87 := (not #41)
+#86 := (not #38)
+#89 := (or #86 #87)
+#90 := (not #89)
+#578 := (forall (vars (?v0 S2) (?v1 S2)) (:pat #576 #577) #90)
+#93 := (forall (vars (?v0 S2) (?v1 S2)) #90)
+#581 := (iff #93 #578)
+#579 := (iff #90 #90)
+#580 := [refl]: #579
+#582 := [quant-intro #580]: #581
+#94 := (iff #47 #93)
+#91 := (iff #44 #90)
+#92 := [rewrite]: #91
+#95 := [quant-intro #92]: #94
+#81 := (~ #47 #47)
+#79 := (~ #44 #44)
+#80 := [refl]: #79
+#82 := [nnf-pos #80]: #81
+#68 := [not-or-elim #70]: #47
+#74 := [mp~ #68 #82]: #47
+#96 := [mp #74 #95]: #93
+#583 := [mp #96 #582]: #578
+#250 := (not #578)
+#254 := (or #250 #75)
+#160 := (or #76 #76)
+#247 := (not #160)
+#233 := (or #250 #247)
+#570 := (iff #233 #254)
+#357 := (iff #254 #254)
+#564 := [rewrite]: #357
+#180 := (iff #247 #75)
+#162 := (not #76)
+#251 := (iff #162 #75)
+#252 := [rewrite]: #251
+#249 := (iff #247 #162)
+#161 := (iff #160 #76)
+#248 := [rewrite]: #161
+#240 := [monotonicity #248]: #249
+#253 := [trans #240 #252]: #180
+#227 := [monotonicity #253]: #570
+#238 := [trans #227 #564]: #570
+#568 := [quant-inst]: #233
+#239 := [mp #568 #238]: #254
+[unit-resolution #239 #583 #88]: false
+unsat
+060c210941c0fd9eca58c8250fc66d664e976010 66 0
+#2 := false
+decl f4 :: S1
+#10 := f4
+decl f1 :: S1
+#4 := f1
+#37 := (= f1 f4)
+decl f3 :: S1
+#8 := f3
+#34 := (= f1 f3)
+#40 := (or #34 #37)
+#84 := (iff #40 false)
+#79 := (or false false)
+#82 := (iff #79 false)
+#83 := [rewrite]: #82
+#80 := (iff #40 #79)
+#75 := (iff #37 false)
+#66 := (not #37)
+#43 := (not #34)
+#49 := (and #43 #40)
+#57 := (not #49)
+#58 := (or #37 #57)
+#63 := (not #58)
+#11 := (= f4 f1)
+#9 := (= f3 f1)
+#13 := (not #9)
+#12 := (or #9 #11)
+#14 := (and #12 #13)
+#15 := (implies #14 #11)
+#16 := (not #15)
+#64 := (iff #16 #63)
+#61 := (iff #15 #58)
+#54 := (implies #49 #37)
+#59 := (iff #54 #58)
+#60 := [rewrite]: #59
+#55 := (iff #15 #54)
+#38 := (iff #11 #37)
+#39 := [rewrite]: #38
+#52 := (iff #14 #49)
+#46 := (and #40 #43)
+#50 := (iff #46 #49)
+#51 := [rewrite]: #50
+#47 := (iff #14 #46)
+#44 := (iff #13 #43)
+#35 := (iff #9 #34)
+#36 := [rewrite]: #35
+#45 := [monotonicity #36]: #44
+#41 := (iff #12 #40)
+#42 := [monotonicity #36 #39]: #41
+#48 := [monotonicity #42 #45]: #47
+#53 := [trans #48 #51]: #52
+#56 := [monotonicity #53 #39]: #55
+#62 := [trans #56 #60]: #61
+#65 := [monotonicity #62]: #64
+#33 := [asserted]: #16
+#68 := [mp #33 #65]: #63
+#67 := [not-or-elim #68]: #66
+#76 := [iff-false #67]: #75
+#77 := (iff #34 false)
+#69 := [not-or-elim #68]: #49
+#70 := [and-elim #69]: #43
+#78 := [iff-false #70]: #77
+#81 := [monotonicity #78 #76]: #80
+#85 := [trans #81 #83]: #84
+#71 := [and-elim #69]: #40
+[mp #71 #85]: false
+unsat
+51b1554c8079ae450aaa843f46db3a132a62d2a4 59 0
+#2 := false
+decl f1 :: S1
+#4 := f1
+decl f6 :: S1
+#15 := f6
+#16 := (= f6 f1)
+decl f5 :: S1
+#13 := f5
+#14 := (= f5 f1)
+#17 := (and #14 #16)
+decl f4 :: S1
+#10 := f4
+#11 := (= f4 f1)
+decl f3 :: S1
+#8 := f3
+#9 := (= f3 f1)
+#12 := (and #9 #11)
+#18 := (or #12 #17)
+#19 := (implies #18 #18)
+#20 := (not #19)
+#71 := (iff #20 false)
+#1 := true
+#66 := (not true)
+#69 := (iff #66 false)
+#70 := [rewrite]: #69
+#67 := (iff #20 #66)
+#64 := (iff #19 true)
+#50 := (= f1 f6)
+#47 := (= f1 f5)
+#53 := (and #47 #50)
+#41 := (= f1 f4)
+#38 := (= f1 f3)
+#44 := (and #38 #41)
+#56 := (or #44 #53)
+#59 := (implies #56 #56)
+#62 := (iff #59 true)
+#63 := [rewrite]: #62
+#60 := (iff #19 #59)
+#57 := (iff #18 #56)
+#54 := (iff #17 #53)
+#51 := (iff #16 #50)
+#52 := [rewrite]: #51
+#48 := (iff #14 #47)
+#49 := [rewrite]: #48
+#55 := [monotonicity #49 #52]: #54
+#45 := (iff #12 #44)
+#42 := (iff #11 #41)
+#43 := [rewrite]: #42
+#39 := (iff #9 #38)
+#40 := [rewrite]: #39
+#46 := [monotonicity #40 #43]: #45
+#58 := [monotonicity #46 #55]: #57
+#61 := [monotonicity #58 #58]: #60
+#65 := [trans #61 #63]: #64
+#68 := [monotonicity #65]: #67
+#72 := [trans #68 #70]: #71
+#37 := [asserted]: #20
+[mp #37 #72]: false
+unsat
+84b3ad1ba10175f629ea45974dd1f7204028ffdc 30 0
+#2 := false
+decl f3 :: (-> int S2)
+#25 := 1::int
+#28 := (f3 1::int)
+#13 := 0::int
+#26 := (+ 0::int 1::int)
+#27 := (f3 #26)
+#29 := (= #27 #28)
+#30 := (not #29)
+#148 := (iff #30 false)
+#1 := true
+#143 := (not true)
+#146 := (iff #143 false)
+#147 := [rewrite]: #146
+#144 := (iff #30 #143)
+#141 := (iff #29 true)
+#136 := (= #28 #28)
+#139 := (iff #136 true)
+#140 := [rewrite]: #139
+#137 := (iff #29 #136)
+#133 := (= #26 1::int)
+#134 := [rewrite]: #133
+#135 := [monotonicity #134]: #29
+#138 := [monotonicity #135]: #137
+#142 := [trans #138 #140]: #141
+#145 := [monotonicity #142]: #144
+#149 := [trans #145 #147]: #148
+#132 := [asserted]: #30
+[mp #132 #149]: false
+unsat
+fc798ca35949786a7df6c3211b951fe889ed5aca 33 0
+#2 := false
+#27 := 1::int
+decl f4 :: (-> S2 int)
+decl f5 :: S2
+#25 := f5
+#26 := (f4 f5)
+#28 := (+ #26 1::int)
+#29 := (< #26 #28)
+#30 := (not #29)
+#151 := (iff #30 false)
+#133 := (+ 1::int #26)
+#136 := (< #26 #133)
+#139 := (not #136)
+#149 := (iff #139 false)
+#1 := true
+#144 := (not true)
+#147 := (iff #144 false)
+#148 := [rewrite]: #147
+#145 := (iff #139 #144)
+#142 := (iff #136 true)
+#143 := [rewrite]: #142
+#146 := [monotonicity #143]: #145
+#150 := [trans #146 #148]: #149
+#140 := (iff #30 #139)
+#137 := (iff #29 #136)
+#134 := (= #28 #133)
+#135 := [rewrite]: #134
+#138 := [monotonicity #135]: #137
+#141 := [monotonicity #138]: #140
+#152 := [trans #141 #150]: #151
+#132 := [asserted]: #30
+[mp #132 #152]: false
+unsat
+1a658a61136d181e832caa6664fb39c44f4496ee 60 0
+#2 := false
+decl f3 :: (-> int S2)
+decl f4 :: (-> S2 int)
+decl f5 :: S2
+#25 := f5
+#26 := (f4 f5)
+#135 := (f3 #26)
+#141 := (= f5 #135)
+#146 := (not #141)
+#13 := 0::int
+#27 := (+ #26 0::int)
+#28 := (f3 #27)
+#29 := (= #28 f5)
+#30 := (not #29)
+#147 := (iff #30 #146)
+#144 := (iff #29 #141)
+#138 := (= #135 f5)
+#142 := (iff #138 #141)
+#143 := [rewrite]: #142
+#139 := (iff #29 #138)
+#136 := (= #28 #135)
+#133 := (= #27 #26)
+#134 := [rewrite]: #133
+#137 := [monotonicity #134]: #136
+#140 := [monotonicity #137]: #139
+#145 := [trans #140 #143]: #144
+#148 := [monotonicity #145]: #147
+#132 := [asserted]: #30
+#151 := [mp #132 #148]: #146
+#8 := (:var 0 S2)
+#9 := (f4 #8)
+#639 := (pattern #9)
+#10 := (f3 #9)
+#48 := (= #8 #10)
+#640 := (forall (vars (?v0 S2)) (:pat #639) #48)
+#51 := (forall (vars (?v0 S2)) #48)
+#641 := (iff #51 #640)
+#643 := (iff #640 #640)
+#644 := [rewrite]: #643
+#642 := [rewrite]: #641
+#645 := [trans #642 #644]: #641
+#163 := (~ #51 #51)
+#161 := (~ #48 #48)
+#162 := [refl]: #161
+#164 := [nnf-pos #162]: #163
+#11 := (= #10 #8)
+#12 := (forall (vars (?v0 S2)) #11)
+#52 := (iff #12 #51)
+#49 := (iff #11 #48)
+#50 := [rewrite]: #49
+#53 := [quant-intro #50]: #52
+#47 := [asserted]: #12
+#56 := [mp #47 #53]: #51
+#152 := [mp~ #56 #164]: #51
+#646 := [mp #152 #645]: #640
+#224 := (not #640)
+#310 := (or #224 #141)
+#311 := [quant-inst]: #310
+[unit-resolution #311 #646 #151]: false
+unsat
+ed39783643eee7923ab14b3fef066b0bb836f7e4 428 0
 #2 := false
 decl f4 :: (-> S2 int)
 decl f6 :: S2
@@ -10079,241 +10374,149 @@
 #393 := [unit-resolution #403 #411 #414]: #443
 [unit-resolution #393 #424]: false
 unsat
-c0906c23e4b0650863a2ef0d68bafa4e06a9dd19 106 0
-#2 := false
-decl f3 :: (-> S2 S2 S1)
-decl ?v0!0 :: S2
-#72 := ?v0!0
-#83 := (f3 ?v0!0 ?v0!0)
-decl f1 :: S1
-#4 := f1
-#75 := (= f1 #83)
-#76 := (not #75)
-#9 := (:var 0 S2)
-#16 := (f3 #9 #9)
-#50 := (= f1 #16)
-#53 := (forall (vars (?v0 S2)) #50)
-#69 := (not #53)
-#84 := (~ #69 #76)
-#85 := [sk]: #84
-#8 := (:var 1 S2)
-#12 := (f3 #9 #8)
-#41 := (= f1 #12)
-#10 := (f3 #8 #9)
-#38 := (= f1 #10)
-#44 := (and #38 #41)
-#47 := (forall (vars (?v0 S2) (?v1 S2)) #44)
-#59 := (not #47)
-#60 := (or #59 #53)
-#65 := (not #60)
-#17 := (= #16 f1)
-#18 := (forall (vars (?v0 S2)) #17)
-#13 := (= #12 f1)
-#11 := (= #10 f1)
-#14 := (and #11 #13)
-#15 := (forall (vars (?v0 S2) (?v1 S2)) #14)
-#19 := (implies #15 #18)
-#20 := (not #19)
-#66 := (iff #20 #65)
-#63 := (iff #19 #60)
-#56 := (implies #47 #53)
-#61 := (iff #56 #60)
-#62 := [rewrite]: #61
-#57 := (iff #19 #56)
-#54 := (iff #18 #53)
-#51 := (iff #17 #50)
-#52 := [rewrite]: #51
-#55 := [quant-intro #52]: #54
-#48 := (iff #15 #47)
-#45 := (iff #14 #44)
-#42 := (iff #13 #41)
-#43 := [rewrite]: #42
-#39 := (iff #11 #38)
-#40 := [rewrite]: #39
-#46 := [monotonicity #40 #43]: #45
-#49 := [quant-intro #46]: #48
-#58 := [monotonicity #49 #55]: #57
-#64 := [trans #58 #62]: #63
-#67 := [monotonicity #64]: #66
-#37 := [asserted]: #20
-#70 := [mp #37 #67]: #65
-#71 := [not-or-elim #70]: #69
-#88 := [mp~ #71 #85]: #76
-#577 := (pattern #12)
-#576 := (pattern #10)
-#87 := (not #41)
-#86 := (not #38)
-#89 := (or #86 #87)
-#90 := (not #89)
-#578 := (forall (vars (?v0 S2) (?v1 S2)) (:pat #576 #577) #90)
-#93 := (forall (vars (?v0 S2) (?v1 S2)) #90)
-#581 := (iff #93 #578)
-#579 := (iff #90 #90)
-#580 := [refl]: #579
-#582 := [quant-intro #580]: #581
-#94 := (iff #47 #93)
-#91 := (iff #44 #90)
-#92 := [rewrite]: #91
-#95 := [quant-intro #92]: #94
-#81 := (~ #47 #47)
-#79 := (~ #44 #44)
-#80 := [refl]: #79
-#82 := [nnf-pos #80]: #81
-#68 := [not-or-elim #70]: #47
-#74 := [mp~ #68 #82]: #47
-#96 := [mp #74 #95]: #93
-#583 := [mp #96 #582]: #578
-#250 := (not #578)
-#254 := (or #250 #75)
-#160 := (or #76 #76)
-#247 := (not #160)
-#233 := (or #250 #247)
-#570 := (iff #233 #254)
-#357 := (iff #254 #254)
-#564 := [rewrite]: #357
-#180 := (iff #247 #75)
-#162 := (not #76)
-#251 := (iff #162 #75)
-#252 := [rewrite]: #251
-#249 := (iff #247 #162)
-#161 := (iff #160 #76)
-#248 := [rewrite]: #161
-#240 := [monotonicity #248]: #249
-#253 := [trans #240 #252]: #180
-#227 := [monotonicity #253]: #570
-#238 := [trans #227 #564]: #570
-#568 := [quant-inst]: #233
-#239 := [mp #568 #238]: #254
-[unit-resolution #239 #583 #88]: false
-unsat
-58aaefc3b25d8181c01a2139430686aeca861bf3 66 0
-#2 := false
-decl f4 :: S1
-#10 := f4
-decl f1 :: S1
-#4 := f1
-#37 := (= f1 f4)
-decl f3 :: S1
-#8 := f3
-#34 := (= f1 f3)
-#40 := (or #34 #37)
-#84 := (iff #40 false)
-#79 := (or false false)
-#82 := (iff #79 false)
-#83 := [rewrite]: #82
-#80 := (iff #40 #79)
-#75 := (iff #37 false)
-#66 := (not #37)
-#43 := (not #34)
-#49 := (and #43 #40)
-#57 := (not #49)
-#58 := (or #37 #57)
-#63 := (not #58)
-#11 := (= f4 f1)
-#9 := (= f3 f1)
-#13 := (not #9)
-#12 := (or #9 #11)
-#14 := (and #12 #13)
-#15 := (implies #14 #11)
-#16 := (not #15)
-#64 := (iff #16 #63)
-#61 := (iff #15 #58)
-#54 := (implies #49 #37)
-#59 := (iff #54 #58)
-#60 := [rewrite]: #59
-#55 := (iff #15 #54)
-#38 := (iff #11 #37)
-#39 := [rewrite]: #38
-#52 := (iff #14 #49)
-#46 := (and #40 #43)
-#50 := (iff #46 #49)
-#51 := [rewrite]: #50
-#47 := (iff #14 #46)
-#44 := (iff #13 #43)
-#35 := (iff #9 #34)
-#36 := [rewrite]: #35
-#45 := [monotonicity #36]: #44
-#41 := (iff #12 #40)
-#42 := [monotonicity #36 #39]: #41
-#48 := [monotonicity #42 #45]: #47
-#53 := [trans #48 #51]: #52
-#56 := [monotonicity #53 #39]: #55
-#62 := [trans #56 #60]: #61
-#65 := [monotonicity #62]: #64
-#33 := [asserted]: #16
-#68 := [mp #33 #65]: #63
-#67 := [not-or-elim #68]: #66
-#76 := [iff-false #67]: #75
-#77 := (iff #34 false)
-#69 := [not-or-elim #68]: #49
-#70 := [and-elim #69]: #43
-#78 := [iff-false #70]: #77
-#81 := [monotonicity #78 #76]: #80
-#85 := [trans #81 #83]: #84
-#71 := [and-elim #69]: #40
-[mp #71 #85]: false
-unsat
-d80d7bb97197c962c0b81d44c7a8cfd617b6ca33 59 0
-#2 := false
-decl f1 :: S1
-#4 := f1
-decl f6 :: S1
-#15 := f6
-#16 := (= f6 f1)
-decl f5 :: S1
-#13 := f5
-#14 := (= f5 f1)
-#17 := (and #14 #16)
-decl f4 :: S1
-#10 := f4
-#11 := (= f4 f1)
-decl f3 :: S1
-#8 := f3
-#9 := (= f3 f1)
-#12 := (and #9 #11)
-#18 := (or #12 #17)
-#19 := (implies #18 #18)
-#20 := (not #19)
-#71 := (iff #20 false)
-#1 := true
-#66 := (not true)
-#69 := (iff #66 false)
-#70 := [rewrite]: #69
-#67 := (iff #20 #66)
-#64 := (iff #19 true)
-#50 := (= f1 f6)
-#47 := (= f1 f5)
-#53 := (and #47 #50)
-#41 := (= f1 f4)
-#38 := (= f1 f3)
-#44 := (and #38 #41)
-#56 := (or #44 #53)
-#59 := (implies #56 #56)
-#62 := (iff #59 true)
-#63 := [rewrite]: #62
-#60 := (iff #19 #59)
-#57 := (iff #18 #56)
-#54 := (iff #17 #53)
-#51 := (iff #16 #50)
-#52 := [rewrite]: #51
-#48 := (iff #14 #47)
-#49 := [rewrite]: #48
-#55 := [monotonicity #49 #52]: #54
-#45 := (iff #12 #44)
-#42 := (iff #11 #41)
-#43 := [rewrite]: #42
-#39 := (iff #9 #38)
-#40 := [rewrite]: #39
-#46 := [monotonicity #40 #43]: #45
-#58 := [monotonicity #46 #55]: #57
-#61 := [monotonicity #58 #58]: #60
-#65 := [trans #61 #63]: #64
-#68 := [monotonicity #65]: #67
-#72 := [trans #68 #70]: #71
-#37 := [asserted]: #20
-[mp #37 #72]: false
-unsat
-5682ca831360f99dba925cc3023ce41a2bdd0f63 364 0
+99ce906c39baeb082cce24e7e191930744f68770 60 0
+#2 := false
+decl f3 :: (-> int S2)
+decl f4 :: (-> S2 int)
+decl f5 :: S2
+#25 := f5
+#26 := (f4 f5)
+#135 := (f3 #26)
+#141 := (= f5 #135)
+#146 := (not #141)
+#13 := 0::int
+#27 := (+ 0::int #26)
+#28 := (f3 #27)
+#29 := (= #28 f5)
+#30 := (not #29)
+#147 := (iff #30 #146)
+#144 := (iff #29 #141)
+#138 := (= #135 f5)
+#142 := (iff #138 #141)
+#143 := [rewrite]: #142
+#139 := (iff #29 #138)
+#136 := (= #28 #135)
+#133 := (= #27 #26)
+#134 := [rewrite]: #133
+#137 := [monotonicity #134]: #136
+#140 := [monotonicity #137]: #139
+#145 := [trans #140 #143]: #144
+#148 := [monotonicity #145]: #147
+#132 := [asserted]: #30
+#151 := [mp #132 #148]: #146
+#8 := (:var 0 S2)
+#9 := (f4 #8)
+#639 := (pattern #9)
+#10 := (f3 #9)
+#48 := (= #8 #10)
+#640 := (forall (vars (?v0 S2)) (:pat #639) #48)
+#51 := (forall (vars (?v0 S2)) #48)
+#641 := (iff #51 #640)
+#643 := (iff #640 #640)
+#644 := [rewrite]: #643
+#642 := [rewrite]: #641
+#645 := [trans #642 #644]: #641
+#163 := (~ #51 #51)
+#161 := (~ #48 #48)
+#162 := [refl]: #161
+#164 := [nnf-pos #162]: #163
+#11 := (= #10 #8)
+#12 := (forall (vars (?v0 S2)) #11)
+#52 := (iff #12 #51)
+#49 := (iff #11 #48)
+#50 := [rewrite]: #49
+#53 := [quant-intro #50]: #52
+#47 := [asserted]: #12
+#56 := [mp #47 #53]: #51
+#152 := [mp~ #56 #164]: #51
+#646 := [mp #152 #645]: #640
+#224 := (not #640)
+#310 := (or #224 #141)
+#311 := [quant-inst]: #310
+[unit-resolution #311 #646 #151]: false
+unsat
+fd4ffa575704f079b1ec52c184c82cdd44b22127 37 0
+#2 := false
+decl f3 :: (-> int S2)
+decl f4 :: (-> S2 int)
+decl f5 :: S2
+#25 := f5
+#26 := (f4 f5)
+decl f6 :: S2
+#27 := f6
+#28 := (f4 f6)
+#31 := (+ #28 #26)
+#32 := (f3 #31)
+#29 := (+ #26 #28)
+#30 := (f3 #29)
+#33 := (= #30 #32)
+#34 := (not #33)
+#153 := (iff #34 false)
+#1 := true
+#148 := (not true)
+#151 := (iff #148 false)
+#152 := [rewrite]: #151
+#149 := (iff #34 #148)
+#146 := (iff #33 true)
+#141 := (= #30 #30)
+#144 := (iff #141 true)
+#145 := [rewrite]: #144
+#142 := (iff #33 #141)
+#139 := (= #32 #30)
+#137 := (= #31 #29)
+#138 := [rewrite]: #137
+#140 := [monotonicity #138]: #139
+#143 := [monotonicity #140]: #142
+#147 := [trans #143 #145]: #146
+#150 := [monotonicity #147]: #149
+#154 := [trans #150 #152]: #153
+#136 := [asserted]: #34
+[mp #136 #154]: false
+unsat
+503b4a1dda22c52727c27668172fc65c05cdd044 42 0
+#2 := false
+decl f3 :: (-> int S2)
+decl f4 :: (-> S2 int)
+decl f7 :: S2
+#29 := f7
+#30 := (f4 f7)
+decl f6 :: S2
+#27 := f6
+#28 := (f4 f6)
+decl f5 :: S2
+#25 := f5
+#26 := (f4 f5)
+#34 := (+ #26 #28)
+#35 := (+ #34 #30)
+#36 := (f3 #35)
+#31 := (+ #28 #30)
+#32 := (+ #26 #31)
+#33 := (f3 #32)
+#37 := (= #33 #36)
+#38 := (not #37)
+#157 := (iff #38 false)
+#1 := true
+#152 := (not true)
+#155 := (iff #152 false)
+#156 := [rewrite]: #155
+#153 := (iff #38 #152)
+#150 := (iff #37 true)
+#145 := (= #33 #33)
+#148 := (iff #145 true)
+#149 := [rewrite]: #148
+#146 := (iff #37 #145)
+#143 := (= #36 #33)
+#141 := (= #35 #32)
+#142 := [rewrite]: #141
+#144 := [monotonicity #142]: #143
+#147 := [monotonicity #144]: #146
+#151 := [trans #147 #149]: #150
+#154 := [monotonicity #151]: #153
+#158 := [trans #154 #156]: #157
+#140 := [asserted]: #38
+[mp #140 #158]: false
+unsat
+7c830a2352021a9371ebd4587ef2e48d76d26c2e 364 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -10678,451 +10881,7 @@
 #500 := [unit-resolution #469 #535]: #379
 [th-lemma #500 #534 #195]: false
 unsat
-b265c055659e0ea1b48e0304606789db36e05540 60 0
-#2 := false
-decl f3 :: (-> int S2)
-decl f4 :: (-> S2 int)
-decl f5 :: S2
-#25 := f5
-#26 := (f4 f5)
-#135 := (f3 #26)
-#141 := (= f5 #135)
-#146 := (not #141)
-#13 := 0::int
-#27 := (+ #26 0::int)
-#28 := (f3 #27)
-#29 := (= #28 f5)
-#30 := (not #29)
-#147 := (iff #30 #146)
-#144 := (iff #29 #141)
-#138 := (= #135 f5)
-#142 := (iff #138 #141)
-#143 := [rewrite]: #142
-#139 := (iff #29 #138)
-#136 := (= #28 #135)
-#133 := (= #27 #26)
-#134 := [rewrite]: #133
-#137 := [monotonicity #134]: #136
-#140 := [monotonicity #137]: #139
-#145 := [trans #140 #143]: #144
-#148 := [monotonicity #145]: #147
-#132 := [asserted]: #30
-#151 := [mp #132 #148]: #146
-#8 := (:var 0 S2)
-#9 := (f4 #8)
-#639 := (pattern #9)
-#10 := (f3 #9)
-#48 := (= #8 #10)
-#640 := (forall (vars (?v0 S2)) (:pat #639) #48)
-#51 := (forall (vars (?v0 S2)) #48)
-#641 := (iff #51 #640)
-#643 := (iff #640 #640)
-#644 := [rewrite]: #643
-#642 := [rewrite]: #641
-#645 := [trans #642 #644]: #641
-#163 := (~ #51 #51)
-#161 := (~ #48 #48)
-#162 := [refl]: #161
-#164 := [nnf-pos #162]: #163
-#11 := (= #10 #8)
-#12 := (forall (vars (?v0 S2)) #11)
-#52 := (iff #12 #51)
-#49 := (iff #11 #48)
-#50 := [rewrite]: #49
-#53 := [quant-intro #50]: #52
-#47 := [asserted]: #12
-#56 := [mp #47 #53]: #51
-#152 := [mp~ #56 #164]: #51
-#646 := [mp #152 #645]: #640
-#224 := (not #640)
-#310 := (or #224 #141)
-#311 := [quant-inst]: #310
-[unit-resolution #311 #646 #151]: false
-unsat
-75c3bae150e305a0fc97df1a1e35cb97fdd88bd7 60 0
-#2 := false
-decl f3 :: (-> int S2)
-decl f4 :: (-> S2 int)
-decl f5 :: S2
-#25 := f5
-#26 := (f4 f5)
-#135 := (f3 #26)
-#141 := (= f5 #135)
-#146 := (not #141)
-#13 := 0::int
-#27 := (+ 0::int #26)
-#28 := (f3 #27)
-#29 := (= #28 f5)
-#30 := (not #29)
-#147 := (iff #30 #146)
-#144 := (iff #29 #141)
-#138 := (= #135 f5)
-#142 := (iff #138 #141)
-#143 := [rewrite]: #142
-#139 := (iff #29 #138)
-#136 := (= #28 #135)
-#133 := (= #27 #26)
-#134 := [rewrite]: #133
-#137 := [monotonicity #134]: #136
-#140 := [monotonicity #137]: #139
-#145 := [trans #140 #143]: #144
-#148 := [monotonicity #145]: #147
-#132 := [asserted]: #30
-#151 := [mp #132 #148]: #146
-#8 := (:var 0 S2)
-#9 := (f4 #8)
-#639 := (pattern #9)
-#10 := (f3 #9)
-#48 := (= #8 #10)
-#640 := (forall (vars (?v0 S2)) (:pat #639) #48)
-#51 := (forall (vars (?v0 S2)) #48)
-#641 := (iff #51 #640)
-#643 := (iff #640 #640)
-#644 := [rewrite]: #643
-#642 := [rewrite]: #641
-#645 := [trans #642 #644]: #641
-#163 := (~ #51 #51)
-#161 := (~ #48 #48)
-#162 := [refl]: #161
-#164 := [nnf-pos #162]: #163
-#11 := (= #10 #8)
-#12 := (forall (vars (?v0 S2)) #11)
-#52 := (iff #12 #51)
-#49 := (iff #11 #48)
-#50 := [rewrite]: #49
-#53 := [quant-intro #50]: #52
-#47 := [asserted]: #12
-#56 := [mp #47 #53]: #51
-#152 := [mp~ #56 #164]: #51
-#646 := [mp #152 #645]: #640
-#224 := (not #640)
-#310 := (or #224 #141)
-#311 := [quant-inst]: #310
-[unit-resolution #311 #646 #151]: false
-unsat
-c52f3166d15e1102a7ca505cd72ba484966ee318 37 0
-#2 := false
-decl f3 :: (-> int S2)
-decl f4 :: (-> S2 int)
-decl f5 :: S2
-#25 := f5
-#26 := (f4 f5)
-decl f6 :: S2
-#27 := f6
-#28 := (f4 f6)
-#31 := (+ #28 #26)
-#32 := (f3 #31)
-#29 := (+ #26 #28)
-#30 := (f3 #29)
-#33 := (= #30 #32)
-#34 := (not #33)
-#153 := (iff #34 false)
-#1 := true
-#148 := (not true)
-#151 := (iff #148 false)
-#152 := [rewrite]: #151
-#149 := (iff #34 #148)
-#146 := (iff #33 true)
-#141 := (= #30 #30)
-#144 := (iff #141 true)
-#145 := [rewrite]: #144
-#142 := (iff #33 #141)
-#139 := (= #32 #30)
-#137 := (= #31 #29)
-#138 := [rewrite]: #137
-#140 := [monotonicity #138]: #139
-#143 := [monotonicity #140]: #142
-#147 := [trans #143 #145]: #146
-#150 := [monotonicity #147]: #149
-#154 := [trans #150 #152]: #153
-#136 := [asserted]: #34
-[mp #136 #154]: false
-unsat
-b04995911f57617d06c9591edf349edadf325b74 60 0
-#2 := false
-decl f3 :: (-> int S2)
-decl f4 :: (-> S2 int)
-decl f5 :: S2
-#25 := f5
-#26 := (f4 f5)
-#135 := (f3 #26)
-#141 := (= f5 #135)
-#146 := (not #141)
-#13 := 0::int
-#27 := (- #26 0::int)
-#28 := (f3 #27)
-#29 := (= #28 f5)
-#30 := (not #29)
-#147 := (iff #30 #146)
-#144 := (iff #29 #141)
-#138 := (= #135 f5)
-#142 := (iff #138 #141)
-#143 := [rewrite]: #142
-#139 := (iff #29 #138)
-#136 := (= #28 #135)
-#133 := (= #27 #26)
-#134 := [rewrite]: #133
-#137 := [monotonicity #134]: #136
-#140 := [monotonicity #137]: #139
-#145 := [trans #140 #143]: #144
-#148 := [monotonicity #145]: #147
-#132 := [asserted]: #30
-#151 := [mp #132 #148]: #146
-#8 := (:var 0 S2)
-#9 := (f4 #8)
-#639 := (pattern #9)
-#10 := (f3 #9)
-#48 := (= #8 #10)
-#640 := (forall (vars (?v0 S2)) (:pat #639) #48)
-#51 := (forall (vars (?v0 S2)) #48)
-#641 := (iff #51 #640)
-#643 := (iff #640 #640)
-#644 := [rewrite]: #643
-#642 := [rewrite]: #641
-#645 := [trans #642 #644]: #641
-#163 := (~ #51 #51)
-#161 := (~ #48 #48)
-#162 := [refl]: #161
-#164 := [nnf-pos #162]: #163
-#11 := (= #10 #8)
-#12 := (forall (vars (?v0 S2)) #11)
-#52 := (iff #12 #51)
-#49 := (iff #11 #48)
-#50 := [rewrite]: #49
-#53 := [quant-intro #50]: #52
-#47 := [asserted]: #12
-#56 := [mp #47 #53]: #51
-#152 := [mp~ #56 #164]: #51
-#646 := [mp #152 #645]: #640
-#224 := (not #640)
-#310 := (or #224 #141)
-#311 := [quant-inst]: #310
-[unit-resolution #311 #646 #151]: false
-unsat
-b5b340366dfb8289e173cd594b95953e97e705ac 42 0
-#2 := false
-decl f3 :: (-> int S2)
-decl f4 :: (-> S2 int)
-decl f7 :: S2
-#29 := f7
-#30 := (f4 f7)
-decl f6 :: S2
-#27 := f6
-#28 := (f4 f6)
-decl f5 :: S2
-#25 := f5
-#26 := (f4 f5)
-#34 := (+ #26 #28)
-#35 := (+ #34 #30)
-#36 := (f3 #35)
-#31 := (+ #28 #30)
-#32 := (+ #26 #31)
-#33 := (f3 #32)
-#37 := (= #33 #36)
-#38 := (not #37)
-#157 := (iff #38 false)
-#1 := true
-#152 := (not true)
-#155 := (iff #152 false)
-#156 := [rewrite]: #155
-#153 := (iff #38 #152)
-#150 := (iff #37 true)
-#145 := (= #33 #33)
-#148 := (iff #145 true)
-#149 := [rewrite]: #148
-#146 := (iff #37 #145)
-#143 := (= #36 #33)
-#141 := (= #35 #32)
-#142 := [rewrite]: #141
-#144 := [monotonicity #142]: #143
-#147 := [monotonicity #144]: #146
-#151 := [trans #147 #149]: #150
-#154 := [monotonicity #151]: #153
-#158 := [trans #154 #156]: #157
-#140 := [asserted]: #38
-[mp #140 #158]: false
-unsat
-2a686ca258d75e408aba2310eab7bfde718856c5 179 0
-#2 := false
-decl f3 :: (-> int S2)
-decl f4 :: (-> S2 int)
-decl f6 :: S2
-#27 := f6
-#28 := (f4 f6)
-#138 := -1::int
-#139 := (* -1::int #28)
-decl f5 :: S2
-#25 := f5
-#26 := (f4 f5)
-#140 := (+ #26 #139)
-#143 := (f3 #140)
-#13 := 0::int
-#32 := (f3 0::int)
-#149 := (= #32 #143)
-#649 := (f4 #143)
-#597 := (f3 #649)
-#596 := (= #597 #143)
-#499 := (= #143 #597)
-#8 := (:var 0 S2)
-#9 := (f4 #8)
-#665 := (pattern #9)
-#10 := (f3 #9)
-#53 := (= #8 #10)
-#666 := (forall (vars (?v0 S2)) (:pat #665) #53)
-#56 := (forall (vars (?v0 S2)) #53)
-#667 := (iff #56 #666)
-#669 := (iff #666 #666)
-#670 := [rewrite]: #669
-#668 := [rewrite]: #667
-#671 := [trans #668 #670]: #667
-#192 := (~ #56 #56)
-#190 := (~ #53 #53)
-#191 := [refl]: #190
-#193 := [nnf-pos #191]: #192
-#11 := (= #10 #8)
-#12 := (forall (vars (?v0 S2)) #11)
-#57 := (iff #12 #56)
-#54 := (iff #11 #53)
-#55 := [rewrite]: #54
-#58 := [quant-intro #55]: #57
-#52 := [asserted]: #12
-#61 := [mp #52 #58]: #56
-#179 := [mp~ #61 #193]: #56
-#672 := [mp #179 #671]: #666
-#338 := (not #666)
-#502 := (or #338 #499)
-#503 := [quant-inst]: #502
-#501 := [unit-resolution #503 #672]: #499
-#600 := [symm #501]: #596
-#506 := (= #32 #597)
-#504 := (= 0::int #649)
-#622 := (= #649 0::int)
-#161 := (>= #140 0::int)
-#160 := (not #161)
-#154 := (not #149)
-#167 := (and #154 #160)
-#30 := (- #26 #28)
-#31 := (f3 #30)
-#33 := (= #31 #32)
-#34 := (not #33)
-#29 := (< #26 #28)
-#35 := (and #29 #34)
-#172 := (iff #35 #167)
-#157 := (and #29 #154)
-#170 := (iff #157 #167)
-#164 := (and #160 #154)
-#168 := (iff #164 #167)
-#169 := [rewrite]: #168
-#165 := (iff #157 #164)
-#162 := (iff #29 #160)
-#163 := [rewrite]: #162
-#166 := [monotonicity #163]: #165
-#171 := [trans #166 #169]: #170
-#158 := (iff #35 #157)
-#155 := (iff #34 #154)
-#152 := (iff #33 #149)
-#146 := (= #143 #32)
-#150 := (iff #146 #149)
-#151 := [rewrite]: #150
-#147 := (iff #33 #146)
-#144 := (= #31 #143)
-#141 := (= #30 #140)
-#142 := [rewrite]: #141
-#145 := [monotonicity #142]: #144
-#148 := [monotonicity #145]: #147
-#153 := [trans #148 #151]: #152
-#156 := [monotonicity #153]: #155
-#159 := [monotonicity #156]: #158
-#173 := [trans #159 #171]: #172
-#137 := [asserted]: #35
-#174 := [mp #137 #173]: #167
-#176 := [and-elim #174]: #160
-#14 := (:var 0 int)
-#16 := (f3 #14)
-#673 := (pattern #16)
-#78 := (>= #14 0::int)
-#17 := (f4 #16)
-#22 := (= #17 0::int)
-#126 := (or #22 #78)
-#680 := (forall (vars (?v0 int)) (:pat #673) #126)
-#131 := (forall (vars (?v0 int)) #126)
-#683 := (iff #131 #680)
-#681 := (iff #126 #126)
-#682 := [refl]: #681
-#684 := [quant-intro #682]: #683
-#182 := (~ #131 #131)
-#196 := (~ #126 #126)
-#197 := [refl]: #196
-#183 := [nnf-pos #197]: #182
-#21 := (< #14 0::int)
-#23 := (implies #21 #22)
-#24 := (forall (vars (?v0 int)) #23)
-#134 := (iff #24 #131)
-#97 := (= 0::int #17)
-#103 := (not #21)
-#104 := (or #103 #97)
-#109 := (forall (vars (?v0 int)) #104)
-#132 := (iff #109 #131)
-#129 := (iff #104 #126)
-#123 := (or #78 #22)
-#127 := (iff #123 #126)
-#128 := [rewrite]: #127
-#124 := (iff #104 #123)
-#121 := (iff #97 #22)
-#122 := [rewrite]: #121
-#119 := (iff #103 #78)
-#79 := (not #78)
-#114 := (not #79)
-#117 := (iff #114 #78)
-#118 := [rewrite]: #117
-#115 := (iff #103 #114)
-#112 := (iff #21 #79)
-#113 := [rewrite]: #112
-#116 := [monotonicity #113]: #115
-#120 := [trans #116 #118]: #119
-#125 := [monotonicity #120 #122]: #124
-#130 := [trans #125 #128]: #129
-#133 := [quant-intro #130]: #132
-#110 := (iff #24 #109)
-#107 := (iff #23 #104)
-#100 := (implies #21 #97)
-#105 := (iff #100 #104)
-#106 := [rewrite]: #105
-#101 := (iff #23 #100)
-#98 := (iff #22 #97)
-#99 := [rewrite]: #98
-#102 := [monotonicity #99]: #101
-#108 := [trans #102 #106]: #107
-#111 := [quant-intro #108]: #110
-#135 := [trans #111 #133]: #134
-#96 := [asserted]: #24
-#136 := [mp #96 #135]: #131
-#198 := [mp~ #136 #183]: #131
-#685 := [mp #198 #684]: #680
-#619 := (not #680)
-#625 := (or #619 #161 #622)
-#617 := (or #622 #161)
-#466 := (or #619 #617)
-#607 := (iff #466 #625)
-#618 := (or #161 #622)
-#468 := (or #619 #618)
-#612 := (iff #468 #625)
-#613 := [rewrite]: #612
-#610 := (iff #466 #468)
-#623 := (iff #617 #618)
-#624 := [rewrite]: #623
-#611 := [monotonicity #624]: #610
-#608 := [trans #611 #613]: #607
-#467 := [quant-inst]: #466
-#614 := [mp #467 #608]: #625
-#494 := [unit-resolution #614 #685 #176]: #622
-#505 := [symm #494]: #504
-#599 := [monotonicity #505]: #506
-#587 := [trans #599 #600]: #149
-#175 := [and-elim #174]: #154
-[unit-resolution #175 #587]: false
-unsat
-3c1f7d30ea379c9ce2207a011fc3d11958eb42f1 438 0
+1632348bdee81a166d57559522a36ec81b67e22e 438 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -11561,7 +11320,248 @@
 #404 := [unit-resolution #379 #434]: #485
 [unit-resolution #404 #396]: false
 unsat
-d2811f187a26b77cca78876fe4e7b2248df3c75e 321 0
+5608753e6b659a303b2db701801c7222764e7e28 60 0
+#2 := false
+decl f3 :: (-> int S2)
+decl f4 :: (-> S2 int)
+decl f5 :: S2
+#25 := f5
+#26 := (f4 f5)
+#135 := (f3 #26)
+#141 := (= f5 #135)
+#146 := (not #141)
+#13 := 0::int
+#27 := (- #26 0::int)
+#28 := (f3 #27)
+#29 := (= #28 f5)
+#30 := (not #29)
+#147 := (iff #30 #146)
+#144 := (iff #29 #141)
+#138 := (= #135 f5)
+#142 := (iff #138 #141)
+#143 := [rewrite]: #142
+#139 := (iff #29 #138)
+#136 := (= #28 #135)
+#133 := (= #27 #26)
+#134 := [rewrite]: #133
+#137 := [monotonicity #134]: #136
+#140 := [monotonicity #137]: #139
+#145 := [trans #140 #143]: #144
+#148 := [monotonicity #145]: #147
+#132 := [asserted]: #30
+#151 := [mp #132 #148]: #146
+#8 := (:var 0 S2)
+#9 := (f4 #8)
+#639 := (pattern #9)
+#10 := (f3 #9)
+#48 := (= #8 #10)
+#640 := (forall (vars (?v0 S2)) (:pat #639) #48)
+#51 := (forall (vars (?v0 S2)) #48)
+#641 := (iff #51 #640)
+#643 := (iff #640 #640)
+#644 := [rewrite]: #643
+#642 := [rewrite]: #641
+#645 := [trans #642 #644]: #641
+#163 := (~ #51 #51)
+#161 := (~ #48 #48)
+#162 := [refl]: #161
+#164 := [nnf-pos #162]: #163
+#11 := (= #10 #8)
+#12 := (forall (vars (?v0 S2)) #11)
+#52 := (iff #12 #51)
+#49 := (iff #11 #48)
+#50 := [rewrite]: #49
+#53 := [quant-intro #50]: #52
+#47 := [asserted]: #12
+#56 := [mp #47 #53]: #51
+#152 := [mp~ #56 #164]: #51
+#646 := [mp #152 #645]: #640
+#224 := (not #640)
+#310 := (or #224 #141)
+#311 := [quant-inst]: #310
+[unit-resolution #311 #646 #151]: false
+unsat
+c6004ce59328c5780acd8bd7e43d352cf78599e0 179 0
+#2 := false
+decl f3 :: (-> int S2)
+decl f4 :: (-> S2 int)
+decl f6 :: S2
+#27 := f6
+#28 := (f4 f6)
+#138 := -1::int
+#139 := (* -1::int #28)
+decl f5 :: S2
+#25 := f5
+#26 := (f4 f5)
+#140 := (+ #26 #139)
+#143 := (f3 #140)
+#13 := 0::int
+#32 := (f3 0::int)
+#149 := (= #32 #143)
+#649 := (f4 #143)
+#597 := (f3 #649)
+#596 := (= #597 #143)
+#499 := (= #143 #597)
+#8 := (:var 0 S2)
+#9 := (f4 #8)
+#665 := (pattern #9)
+#10 := (f3 #9)
+#53 := (= #8 #10)
+#666 := (forall (vars (?v0 S2)) (:pat #665) #53)
+#56 := (forall (vars (?v0 S2)) #53)
+#667 := (iff #56 #666)
+#669 := (iff #666 #666)
+#670 := [rewrite]: #669
+#668 := [rewrite]: #667
+#671 := [trans #668 #670]: #667
+#192 := (~ #56 #56)
+#190 := (~ #53 #53)
+#191 := [refl]: #190
+#193 := [nnf-pos #191]: #192
+#11 := (= #10 #8)
+#12 := (forall (vars (?v0 S2)) #11)
+#57 := (iff #12 #56)
+#54 := (iff #11 #53)
+#55 := [rewrite]: #54
+#58 := [quant-intro #55]: #57
+#52 := [asserted]: #12
+#61 := [mp #52 #58]: #56
+#179 := [mp~ #61 #193]: #56
+#672 := [mp #179 #671]: #666
+#338 := (not #666)
+#502 := (or #338 #499)
+#503 := [quant-inst]: #502
+#501 := [unit-resolution #503 #672]: #499
+#600 := [symm #501]: #596
+#506 := (= #32 #597)
+#504 := (= 0::int #649)
+#622 := (= #649 0::int)
+#161 := (>= #140 0::int)
+#160 := (not #161)
+#154 := (not #149)
+#167 := (and #154 #160)
+#30 := (- #26 #28)
+#31 := (f3 #30)
+#33 := (= #31 #32)
+#34 := (not #33)
+#29 := (< #26 #28)
+#35 := (and #29 #34)
+#172 := (iff #35 #167)
+#157 := (and #29 #154)
+#170 := (iff #157 #167)
+#164 := (and #160 #154)
+#168 := (iff #164 #167)
+#169 := [rewrite]: #168
+#165 := (iff #157 #164)
+#162 := (iff #29 #160)
+#163 := [rewrite]: #162
+#166 := [monotonicity #163]: #165
+#171 := [trans #166 #169]: #170
+#158 := (iff #35 #157)
+#155 := (iff #34 #154)
+#152 := (iff #33 #149)
+#146 := (= #143 #32)
+#150 := (iff #146 #149)
+#151 := [rewrite]: #150
+#147 := (iff #33 #146)
+#144 := (= #31 #143)
+#141 := (= #30 #140)
+#142 := [rewrite]: #141
+#145 := [monotonicity #142]: #144
+#148 := [monotonicity #145]: #147
+#153 := [trans #148 #151]: #152
+#156 := [monotonicity #153]: #155
+#159 := [monotonicity #156]: #158
+#173 := [trans #159 #171]: #172
+#137 := [asserted]: #35
+#174 := [mp #137 #173]: #167
+#176 := [and-elim #174]: #160
+#14 := (:var 0 int)
+#16 := (f3 #14)
+#673 := (pattern #16)
+#78 := (>= #14 0::int)
+#17 := (f4 #16)
+#22 := (= #17 0::int)
+#126 := (or #22 #78)
+#680 := (forall (vars (?v0 int)) (:pat #673) #126)
+#131 := (forall (vars (?v0 int)) #126)
+#683 := (iff #131 #680)
+#681 := (iff #126 #126)
+#682 := [refl]: #681
+#684 := [quant-intro #682]: #683
+#182 := (~ #131 #131)
+#196 := (~ #126 #126)
+#197 := [refl]: #196
+#183 := [nnf-pos #197]: #182
+#21 := (< #14 0::int)
+#23 := (implies #21 #22)
+#24 := (forall (vars (?v0 int)) #23)
+#134 := (iff #24 #131)
+#97 := (= 0::int #17)
+#103 := (not #21)
+#104 := (or #103 #97)
+#109 := (forall (vars (?v0 int)) #104)
+#132 := (iff #109 #131)
+#129 := (iff #104 #126)
+#123 := (or #78 #22)
+#127 := (iff #123 #126)
+#128 := [rewrite]: #127
+#124 := (iff #104 #123)
+#121 := (iff #97 #22)
+#122 := [rewrite]: #121
+#119 := (iff #103 #78)
+#79 := (not #78)
+#114 := (not #79)
+#117 := (iff #114 #78)
+#118 := [rewrite]: #117
+#115 := (iff #103 #114)
+#112 := (iff #21 #79)
+#113 := [rewrite]: #112
+#116 := [monotonicity #113]: #115
+#120 := [trans #116 #118]: #119
+#125 := [monotonicity #120 #122]: #124
+#130 := [trans #125 #128]: #129
+#133 := [quant-intro #130]: #132
+#110 := (iff #24 #109)
+#107 := (iff #23 #104)
+#100 := (implies #21 #97)
+#105 := (iff #100 #104)
+#106 := [rewrite]: #105
+#101 := (iff #23 #100)
+#98 := (iff #22 #97)
+#99 := [rewrite]: #98
+#102 := [monotonicity #99]: #101
+#108 := [trans #102 #106]: #107
+#111 := [quant-intro #108]: #110
+#135 := [trans #111 #133]: #134
+#96 := [asserted]: #24
+#136 := [mp #96 #135]: #131
+#198 := [mp~ #136 #183]: #131
+#685 := [mp #198 #684]: #680
+#619 := (not #680)
+#625 := (or #619 #161 #622)
+#617 := (or #622 #161)
+#466 := (or #619 #617)
+#607 := (iff #466 #625)
+#618 := (or #161 #622)
+#468 := (or #619 #618)
+#612 := (iff #468 #625)
+#613 := [rewrite]: #612
+#610 := (iff #466 #468)
+#623 := (iff #617 #618)
+#624 := [rewrite]: #623
+#611 := [monotonicity #624]: #610
+#608 := [trans #611 #613]: #607
+#467 := [quant-inst]: #466
+#614 := [mp #467 #608]: #625
+#494 := [unit-resolution #614 #685 #176]: #622
+#505 := [symm #494]: #504
+#599 := [monotonicity #505]: #506
+#587 := [trans #599 #600]: #149
+#175 := [and-elim #174]: #154
+[unit-resolution #175 #587]: false
+unsat
+fcfdc4289ad5f9140cb116c6f4c4919f2b4f4923 321 0
 #2 := false
 decl f3 :: (-> int S2)
 decl f4 :: (-> S2 int)
@@ -11883,7 +11883,7 @@
 #181 := [and-elim #183]: #157
 [unit-resolution #181 #478]: false
 unsat
-6750007dac6f87e186d233d8af85a2f566a05649 329 0
+68d29112e746194ea996aa3a623d8373cc08ac2a 329 0
 #2 := false
 decl f6 :: S2
 #27 := f6
@@ -12213,7 +12213,7 @@
 #500 := [trans #499 #542]: #188
 [unit-resolution #198 #500]: false
 unsat
-73fe8e8f8efc05a9592e80e471f1f73a8ea6b41e 33 0
+af3fc323e3a9c9867187efb63d27fdabc458b972 33 0
 #2 := false
 decl f3 :: (-> int S2)
 #13 := 0::int
@@ -12247,7 +12247,7 @@
 #133 := [asserted]: #31
 [mp #133 #150]: false
 unsat
-38a43c830e9f2f628495aa4330122f2c2da981cd 517 0
+afc7043a4955320d1d41ce87a7eed9f5e9408f88 517 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -12765,7 +12765,7 @@
 #282 := [unit-resolution #419 #286]: #319
 [unit-resolution #424 #282 #300]: false
 unsat
-b8b27e6325657430dd1af6ebdf5787c6efe3284f 33 0
+e2cc58543dd5ad16fc6af5d366bfe8cd7b5b7c23 33 0
 #2 := false
 decl f3 :: (-> int S2)
 #13 := 0::int
@@ -12799,7 +12799,7 @@
 #133 := [asserted]: #31
 [mp #133 #150]: false
 unsat
-21ee0df98aa191c83f2b436328c15786df798f7a 60 0
+bdaf29198446643e2cae690c3f0cac29f38941fc 60 0
 #2 := false
 decl f3 :: (-> int S2)
 decl f4 :: (-> S2 int)
@@ -12860,7 +12860,7 @@
 #311 := [quant-inst]: #310
 [unit-resolution #311 #646 #152]: false
 unsat
-f2bd5534623dcef31ae5e3e9a7322f435fd34452 60 0
+2bc16a4276212362a5a76abffcf9b2b6da841754 60 0
 #2 := false
 decl f3 :: (-> int S2)
 decl f4 :: (-> S2 int)
@@ -12921,7 +12921,7 @@
 #311 := [quant-inst]: #310
 [unit-resolution #311 #646 #152]: false
 unsat
-563a522b2ffcab4b8b92a3674b4a7e71c6c68e79 35 0
+2b450a9ee4af266a70157af65786bf2e05023359 35 0
 #2 := false
 decl f3 :: (-> int S2)
 #25 := 3::int
@@ -12957,7 +12957,7 @@
 #135 := [asserted]: #33
 [mp #135 #153]: false
 unsat
-2f498bc61394e79ef8b8e82a20d5e6a57d031207 250 0
+f58726aba38b36bcc4264b070f4c61db1533ea41 250 0
 #2 := false
 decl f5 :: (-> int S2)
 #11 := 0::int
@@ -13208,273 +13208,7 @@
 #269 := [asserted]: #57
 [unit-resolution #269 #746]: false
 unsat
-344dd4c43f015bcb0632176ba256e3bea4a444a5 265 0
-#2 := false
-decl f5 :: (-> int S2)
-#11 := 0::int
-#57 := (f5 0::int)
-decl f3 :: (-> int int int)
-decl f6 :: (-> S2 int)
-decl f7 :: S2
-#53 := f7
-#54 := (f6 f7)
-#55 := (f3 #54 0::int)
-#56 := (f5 #55)
-#58 := (= #56 #57)
-#840 := (= #55 0::int)
-#9 := (:var 0 int)
-#8 := (:var 1 int)
-#10 := (f3 #8 #9)
-#845 := (pattern #10)
-#83 := -1::int
-#87 := (* -1::int #9)
-#84 := (* -1::int #8)
-#90 := (div #84 #87)
-#347 := (* -1::int #90)
-#348 := (+ #10 #347)
-#349 := (= #348 0::int)
-#21 := (div #8 #9)
-#344 := (* -1::int #21)
-#345 := (+ #10 #344)
-#346 := (= #345 0::int)
-#109 := (<= #9 0::int)
-#105 := (<= #8 0::int)
-#302 := (or #105 #109)
-#303 := (not #302)
-#116 := (>= #8 0::int)
-#285 := (or #109 #116)
-#286 := (not #285)
-#309 := (or #286 #303)
-#350 := (ite #309 #346 #349)
-#343 := (= #10 0::int)
-#13 := (= #9 0::int)
-#12 := (= #8 0::int)
-#14 := (or #12 #13)
-#351 := (ite #14 #343 #350)
-#846 := (forall (vars (?v0 int) (?v1 int)) (:pat #845) #351)
-#354 := (forall (vars (?v0 int) (?v1 int)) #351)
-#849 := (iff #354 #846)
-#847 := (iff #351 #351)
-#848 := [refl]: #847
-#850 := [quant-intro #848]: #849
-#314 := (ite #309 #21 #90)
-#317 := (ite #14 0::int #314)
-#320 := (= #10 #317)
-#323 := (forall (vars (?v0 int) (?v1 int)) #320)
-#355 := (iff #323 #354)
-#352 := (iff #320 #351)
-#353 := [rewrite]: #352
-#356 := [quant-intro #353]: #355
-#117 := (not #116)
-#110 := (not #109)
-#120 := (and #110 #117)
-#106 := (not #105)
-#113 := (and #106 #110)
-#123 := (or #113 #120)
-#126 := (ite #123 #21 #90)
-#129 := (ite #14 0::int #126)
-#132 := (= #10 #129)
-#135 := (forall (vars (?v0 int) (?v1 int)) #132)
-#324 := (iff #135 #323)
-#321 := (iff #132 #320)
-#318 := (= #129 #317)
-#315 := (= #126 #314)
-#312 := (iff #123 #309)
-#306 := (or #303 #286)
-#310 := (iff #306 #309)
-#311 := [rewrite]: #310
-#307 := (iff #123 #306)
-#304 := (iff #120 #286)
-#305 := [rewrite]: #304
-#283 := (iff #113 #303)
-#284 := [rewrite]: #283
-#308 := [monotonicity #284 #305]: #307
-#313 := [trans #308 #311]: #312
-#316 := [monotonicity #313]: #315
-#319 := [monotonicity #316]: #318
-#322 := [monotonicity #319]: #321
-#325 := [quant-intro #322]: #324
-#289 := (~ #135 #135)
-#287 := (~ #132 #132)
-#288 := [refl]: #287
-#290 := [nnf-pos #288]: #289
-#23 := (- #9)
-#22 := (- #8)
-#24 := (div #22 #23)
-#16 := (< 0::int #9)
-#18 := (< #8 0::int)
-#19 := (and #18 #16)
-#15 := (< 0::int #8)
-#17 := (and #15 #16)
-#20 := (or #17 #19)
-#25 := (ite #20 #21 #24)
-#26 := (ite #14 0::int #25)
-#27 := (= #10 #26)
-#28 := (forall (vars (?v0 int) (?v1 int)) #27)
-#138 := (iff #28 #135)
-#77 := (and #16 #18)
-#80 := (or #17 #77)
-#93 := (ite #80 #21 #90)
-#96 := (ite #14 0::int #93)
-#99 := (= #10 #96)
-#102 := (forall (vars (?v0 int) (?v1 int)) #99)
-#136 := (iff #102 #135)
-#133 := (iff #99 #132)
-#130 := (= #96 #129)
-#127 := (= #93 #126)
-#124 := (iff #80 #123)
-#121 := (iff #77 #120)
-#118 := (iff #18 #117)
-#119 := [rewrite]: #118
-#111 := (iff #16 #110)
-#112 := [rewrite]: #111
-#122 := [monotonicity #112 #119]: #121
-#114 := (iff #17 #113)
-#107 := (iff #15 #106)
-#108 := [rewrite]: #107
-#115 := [monotonicity #108 #112]: #114
-#125 := [monotonicity #115 #122]: #124
-#128 := [monotonicity #125]: #127
-#131 := [monotonicity #128]: #130
-#134 := [monotonicity #131]: #133
-#137 := [quant-intro #134]: #136
-#103 := (iff #28 #102)
-#100 := (iff #27 #99)
-#97 := (= #26 #96)
-#94 := (= #25 #93)
-#91 := (= #24 #90)
-#88 := (= #23 #87)
-#89 := [rewrite]: #88
-#85 := (= #22 #84)
-#86 := [rewrite]: #85
-#92 := [monotonicity #86 #89]: #91
-#81 := (iff #20 #80)
-#78 := (iff #19 #77)
-#79 := [rewrite]: #78
-#82 := [monotonicity #79]: #81
-#95 := [monotonicity #82 #92]: #94
-#98 := [monotonicity #95]: #97
-#101 := [monotonicity #98]: #100
-#104 := [quant-intro #101]: #103
-#139 := [trans #104 #137]: #138
-#76 := [asserted]: #28
-#140 := [mp #76 #139]: #135
-#274 := [mp~ #140 #290]: #135
-#326 := [mp #274 #325]: #323
-#357 := [mp #326 #356]: #354
-#851 := [mp #357 #850]: #846
-#788 := (not #846)
-#794 := (or #788 #840)
-#431 := (* -1::int 0::int)
-#516 := (* -1::int #54)
-#517 := (div #516 #431)
-#518 := (* -1::int #517)
-#509 := (+ #55 #518)
-#520 := (= #509 0::int)
-#521 := (div #54 0::int)
-#449 := (* -1::int #521)
-#522 := (+ #55 #449)
-#519 := (= #522 0::int)
-#523 := (<= 0::int 0::int)
-#502 := (<= #54 0::int)
-#837 := (or #502 #523)
-#839 := (not #837)
-#496 := (>= #54 0::int)
-#626 := (or #523 #496)
-#833 := (not #626)
-#507 := (or #833 #839)
-#508 := (ite #507 #519 #520)
-#841 := (= 0::int 0::int)
-#842 := (= #54 0::int)
-#843 := (or #842 #841)
-#838 := (ite #843 #840 #508)
-#795 := (or #788 #838)
-#796 := (iff #795 #794)
-#627 := (iff #794 #794)
-#628 := [rewrite]: #627
-#793 := (iff #838 #840)
-#529 := (div #516 0::int)
-#809 := (* -1::int #529)
-#810 := (+ #55 #809)
-#800 := (= #810 0::int)
-#1 := true
-#647 := (ite true #840 #800)
-#791 := (iff #647 #840)
-#792 := [rewrite]: #791
-#648 := (iff #838 #647)
-#805 := (iff #508 #800)
-#797 := (ite false #519 #800)
-#804 := (iff #797 #800)
-#799 := [rewrite]: #804
-#798 := (iff #508 #797)
-#801 := (iff #520 #800)
-#807 := (= #509 #810)
-#524 := (= #518 #809)
-#530 := (= #517 #529)
-#527 := (= #431 0::int)
-#528 := [rewrite]: #527
-#808 := [monotonicity #528]: #530
-#806 := [monotonicity #808]: #524
-#811 := [monotonicity #806]: #807
-#802 := [monotonicity #811]: #801
-#813 := (iff #507 false)
-#815 := (or false false)
-#812 := (iff #815 false)
-#816 := [rewrite]: #812
-#537 := (iff #507 #815)
-#437 := (iff #839 false)
-#821 := (not true)
-#828 := (iff #821 false)
-#830 := [rewrite]: #828
-#543 := (iff #839 #821)
-#541 := (iff #837 true)
-#831 := (or #502 true)
-#818 := (iff #831 true)
-#819 := [rewrite]: #818
-#829 := (iff #837 #831)
-#483 := (iff #523 true)
-#484 := [rewrite]: #483
-#832 := [monotonicity #484]: #829
-#542 := [trans #832 #819]: #541
-#544 := [monotonicity #542]: #543
-#814 := [trans #544 #830]: #437
-#470 := (iff #833 false)
-#827 := (iff #833 #821)
-#825 := (iff #626 true)
-#485 := (or true #496)
-#823 := (iff #485 true)
-#824 := [rewrite]: #823
-#486 := (iff #626 #485)
-#822 := [monotonicity #484]: #486
-#826 := [trans #822 #824]: #825
-#465 := [monotonicity #826]: #827
-#471 := [trans #465 #830]: #470
-#538 := [monotonicity #471 #814]: #537
-#817 := [trans #538 #816]: #813
-#803 := [monotonicity #817 #802]: #798
-#646 := [trans #803 #799]: #805
-#479 := (iff #843 true)
-#494 := (or #842 true)
-#495 := (iff #494 true)
-#836 := [rewrite]: #495
-#499 := (iff #843 #494)
-#844 := (iff #841 true)
-#834 := [rewrite]: #844
-#835 := [monotonicity #834]: #499
-#820 := [trans #835 #836]: #479
-#790 := [monotonicity #820 #646]: #648
-#787 := [trans #790 #792]: #793
-#625 := [monotonicity #787]: #796
-#781 := [trans #625 #628]: #796
-#789 := [quant-inst]: #795
-#782 := [mp #789 #781]: #794
-#737 := [unit-resolution #782 #851]: #840
-#738 := [monotonicity #737]: #58
-#59 := (not #58)
-#271 := [asserted]: #59
-[unit-resolution #271 #738]: false
-unsat
-548d39bc73378ffff45c17ea9af834838e4f2aed 274 0
+f9ec262ae3b89f82ea2dac0232937218e79cd135 274 0
 #2 := false
 decl f5 :: (-> int S2)
 #11 := 0::int
@@ -13749,7 +13483,273 @@
 #269 := [asserted]: #57
 [unit-resolution #269 #742]: false
 unsat
-426e56a2fa6cae689a233b52c380ff3e1f4c5d0f 287 0
+2445ca30fa757c71a9c6aa886c0159c1fde53406 265 0
+#2 := false
+decl f5 :: (-> int S2)
+#11 := 0::int
+#57 := (f5 0::int)
+decl f3 :: (-> int int int)
+decl f6 :: (-> S2 int)
+decl f7 :: S2
+#53 := f7
+#54 := (f6 f7)
+#55 := (f3 #54 0::int)
+#56 := (f5 #55)
+#58 := (= #56 #57)
+#840 := (= #55 0::int)
+#9 := (:var 0 int)
+#8 := (:var 1 int)
+#10 := (f3 #8 #9)
+#845 := (pattern #10)
+#83 := -1::int
+#87 := (* -1::int #9)
+#84 := (* -1::int #8)
+#90 := (div #84 #87)
+#347 := (* -1::int #90)
+#348 := (+ #10 #347)
+#349 := (= #348 0::int)
+#21 := (div #8 #9)
+#344 := (* -1::int #21)
+#345 := (+ #10 #344)
+#346 := (= #345 0::int)
+#109 := (<= #9 0::int)
+#105 := (<= #8 0::int)
+#302 := (or #105 #109)
+#303 := (not #302)
+#116 := (>= #8 0::int)
+#285 := (or #109 #116)
+#286 := (not #285)
+#309 := (or #286 #303)
+#350 := (ite #309 #346 #349)
+#343 := (= #10 0::int)
+#13 := (= #9 0::int)
+#12 := (= #8 0::int)
+#14 := (or #12 #13)
+#351 := (ite #14 #343 #350)
+#846 := (forall (vars (?v0 int) (?v1 int)) (:pat #845) #351)
+#354 := (forall (vars (?v0 int) (?v1 int)) #351)
+#849 := (iff #354 #846)
+#847 := (iff #351 #351)
+#848 := [refl]: #847
+#850 := [quant-intro #848]: #849
+#314 := (ite #309 #21 #90)
+#317 := (ite #14 0::int #314)
+#320 := (= #10 #317)
+#323 := (forall (vars (?v0 int) (?v1 int)) #320)
+#355 := (iff #323 #354)
+#352 := (iff #320 #351)
+#353 := [rewrite]: #352
+#356 := [quant-intro #353]: #355
+#117 := (not #116)
+#110 := (not #109)
+#120 := (and #110 #117)
+#106 := (not #105)
+#113 := (and #106 #110)
+#123 := (or #113 #120)
+#126 := (ite #123 #21 #90)
+#129 := (ite #14 0::int #126)
+#132 := (= #10 #129)
+#135 := (forall (vars (?v0 int) (?v1 int)) #132)
+#324 := (iff #135 #323)
+#321 := (iff #132 #320)
+#318 := (= #129 #317)
+#315 := (= #126 #314)
+#312 := (iff #123 #309)
+#306 := (or #303 #286)
+#310 := (iff #306 #309)
+#311 := [rewrite]: #310
+#307 := (iff #123 #306)
+#304 := (iff #120 #286)
+#305 := [rewrite]: #304
+#283 := (iff #113 #303)
+#284 := [rewrite]: #283
+#308 := [monotonicity #284 #305]: #307
+#313 := [trans #308 #311]: #312
+#316 := [monotonicity #313]: #315
+#319 := [monotonicity #316]: #318
+#322 := [monotonicity #319]: #321
+#325 := [quant-intro #322]: #324
+#289 := (~ #135 #135)
+#287 := (~ #132 #132)
+#288 := [refl]: #287
+#290 := [nnf-pos #288]: #289
+#23 := (- #9)
+#22 := (- #8)
+#24 := (div #22 #23)
+#16 := (< 0::int #9)
+#18 := (< #8 0::int)
+#19 := (and #18 #16)
+#15 := (< 0::int #8)
+#17 := (and #15 #16)
+#20 := (or #17 #19)
+#25 := (ite #20 #21 #24)
+#26 := (ite #14 0::int #25)
+#27 := (= #10 #26)
+#28 := (forall (vars (?v0 int) (?v1 int)) #27)
+#138 := (iff #28 #135)
+#77 := (and #16 #18)
+#80 := (or #17 #77)
+#93 := (ite #80 #21 #90)
+#96 := (ite #14 0::int #93)
+#99 := (= #10 #96)
+#102 := (forall (vars (?v0 int) (?v1 int)) #99)
+#136 := (iff #102 #135)
+#133 := (iff #99 #132)
+#130 := (= #96 #129)
+#127 := (= #93 #126)
+#124 := (iff #80 #123)
+#121 := (iff #77 #120)
+#118 := (iff #18 #117)
+#119 := [rewrite]: #118
+#111 := (iff #16 #110)
+#112 := [rewrite]: #111
+#122 := [monotonicity #112 #119]: #121
+#114 := (iff #17 #113)
+#107 := (iff #15 #106)
+#108 := [rewrite]: #107
+#115 := [monotonicity #108 #112]: #114
+#125 := [monotonicity #115 #122]: #124
+#128 := [monotonicity #125]: #127
+#131 := [monotonicity #128]: #130
+#134 := [monotonicity #131]: #133
+#137 := [quant-intro #134]: #136
+#103 := (iff #28 #102)
+#100 := (iff #27 #99)
+#97 := (= #26 #96)
+#94 := (= #25 #93)
+#91 := (= #24 #90)
+#88 := (= #23 #87)
+#89 := [rewrite]: #88
+#85 := (= #22 #84)
+#86 := [rewrite]: #85
+#92 := [monotonicity #86 #89]: #91
+#81 := (iff #20 #80)
+#78 := (iff #19 #77)
+#79 := [rewrite]: #78
+#82 := [monotonicity #79]: #81
+#95 := [monotonicity #82 #92]: #94
+#98 := [monotonicity #95]: #97
+#101 := [monotonicity #98]: #100
+#104 := [quant-intro #101]: #103
+#139 := [trans #104 #137]: #138
+#76 := [asserted]: #28
+#140 := [mp #76 #139]: #135
+#274 := [mp~ #140 #290]: #135
+#326 := [mp #274 #325]: #323
+#357 := [mp #326 #356]: #354
+#851 := [mp #357 #850]: #846
+#788 := (not #846)
+#794 := (or #788 #840)
+#431 := (* -1::int 0::int)
+#516 := (* -1::int #54)
+#517 := (div #516 #431)
+#518 := (* -1::int #517)
+#509 := (+ #55 #518)
+#520 := (= #509 0::int)
+#521 := (div #54 0::int)
+#449 := (* -1::int #521)
+#522 := (+ #55 #449)
+#519 := (= #522 0::int)
+#523 := (<= 0::int 0::int)
+#502 := (<= #54 0::int)
+#837 := (or #502 #523)
+#839 := (not #837)
+#496 := (>= #54 0::int)
+#626 := (or #523 #496)
+#833 := (not #626)
+#507 := (or #833 #839)
+#508 := (ite #507 #519 #520)
+#841 := (= 0::int 0::int)
+#842 := (= #54 0::int)
+#843 := (or #842 #841)
+#838 := (ite #843 #840 #508)
+#795 := (or #788 #838)
+#796 := (iff #795 #794)
+#627 := (iff #794 #794)
+#628 := [rewrite]: #627
+#793 := (iff #838 #840)
+#529 := (div #516 0::int)
+#809 := (* -1::int #529)
+#810 := (+ #55 #809)
+#800 := (= #810 0::int)
+#1 := true
+#647 := (ite true #840 #800)
+#791 := (iff #647 #840)
+#792 := [rewrite]: #791
+#648 := (iff #838 #647)
+#805 := (iff #508 #800)
+#797 := (ite false #519 #800)
+#804 := (iff #797 #800)
+#799 := [rewrite]: #804
+#798 := (iff #508 #797)
+#801 := (iff #520 #800)
+#807 := (= #509 #810)
+#524 := (= #518 #809)
+#530 := (= #517 #529)
+#527 := (= #431 0::int)
+#528 := [rewrite]: #527
+#808 := [monotonicity #528]: #530
+#806 := [monotonicity #808]: #524
+#811 := [monotonicity #806]: #807
+#802 := [monotonicity #811]: #801
+#813 := (iff #507 false)
+#815 := (or false false)
+#812 := (iff #815 false)
+#816 := [rewrite]: #812
+#537 := (iff #507 #815)
+#437 := (iff #839 false)
+#821 := (not true)
+#828 := (iff #821 false)
+#830 := [rewrite]: #828
+#543 := (iff #839 #821)
+#541 := (iff #837 true)
+#831 := (or #502 true)
+#818 := (iff #831 true)
+#819 := [rewrite]: #818
+#829 := (iff #837 #831)
+#483 := (iff #523 true)
+#484 := [rewrite]: #483
+#832 := [monotonicity #484]: #829
+#542 := [trans #832 #819]: #541
+#544 := [monotonicity #542]: #543
+#814 := [trans #544 #830]: #437
+#470 := (iff #833 false)
+#827 := (iff #833 #821)
+#825 := (iff #626 true)
+#485 := (or true #496)
+#823 := (iff #485 true)
+#824 := [rewrite]: #823
+#486 := (iff #626 #485)
+#822 := [monotonicity #484]: #486
+#826 := [trans #822 #824]: #825
+#465 := [monotonicity #826]: #827
+#471 := [trans #465 #830]: #470
+#538 := [monotonicity #471 #814]: #537
+#817 := [trans #538 #816]: #813
+#803 := [monotonicity #817 #802]: #798
+#646 := [trans #803 #799]: #805
+#479 := (iff #843 true)
+#494 := (or #842 true)
+#495 := (iff #494 true)
+#836 := [rewrite]: #495
+#499 := (iff #843 #494)
+#844 := (iff #841 true)
+#834 := [rewrite]: #844
+#835 := [monotonicity #834]: #499
+#820 := [trans #835 #836]: #479
+#790 := [monotonicity #820 #646]: #648
+#787 := [trans #790 #792]: #793
+#625 := [monotonicity #787]: #796
+#781 := [trans #625 #628]: #796
+#789 := [quant-inst]: #795
+#782 := [mp #789 #781]: #794
+#737 := [unit-resolution #782 #851]: #840
+#738 := [monotonicity #737]: #58
+#59 := (not #58)
+#271 := [asserted]: #59
+[unit-resolution #271 #738]: false
+unsat
+7a16e7d1cff95b977a46175f34e2f58dc17b201b 287 0
 #2 := false
 decl f5 :: (-> int S2)
 #11 := 0::int
@@ -14037,7 +14037,7 @@
 #270 := [asserted]: #58
 [unit-resolution #270 #691]: false
 unsat
-2a856348a2d0d12d43659d3f8fbd60f2f395959a 321 0
+3fde1aa3674893464f069812a19859471255da8e 321 0
 #2 := false
 decl f5 :: (-> int S2)
 decl f4 :: (-> int int int)
@@ -14359,7 +14359,7 @@
 #279 := [mp #270 #276]: #274
 [unit-resolution #279 #757]: false
 unsat
-f595f2976198bb59087cfc3afdc24567f743886b 287 0
+c6bc1ae49d3543060aab7bd42065cc7be0e98df3 287 0
 #2 := false
 decl f5 :: (-> int S2)
 #53 := 1::int
@@ -14647,306 +14647,7 @@
 #270 := [asserted]: #58
 [unit-resolution #270 #692]: false
 unsat
-69a73700cfd90edae90cc37e225595659ec32fc1 298 0
-#2 := false
-decl f5 :: (-> int S2)
-#53 := 3::int
-#57 := (f5 3::int)
-decl f3 :: (-> int int int)
-#54 := 1::int
-#55 := (f3 3::int 1::int)
-#56 := (f5 #55)
-#58 := (= #56 #57)
-#790 := (= #55 3::int)
-#9 := (:var 0 int)
-#8 := (:var 1 int)
-#10 := (f3 #8 #9)
-#844 := (pattern #10)
-#11 := 0::int
-#83 := -1::int
-#87 := (* -1::int #9)
-#84 := (* -1::int #8)
-#90 := (div #84 #87)
-#347 := (* -1::int #90)
-#348 := (+ #10 #347)
-#349 := (= #348 0::int)
-#21 := (div #8 #9)
-#344 := (* -1::int #21)
-#345 := (+ #10 #344)
-#346 := (= #345 0::int)
-#109 := (<= #9 0::int)
-#105 := (<= #8 0::int)
-#302 := (or #105 #109)
-#303 := (not #302)
-#116 := (>= #8 0::int)
-#285 := (or #109 #116)
-#286 := (not #285)
-#309 := (or #286 #303)
-#350 := (ite #309 #346 #349)
-#343 := (= #10 0::int)
-#13 := (= #9 0::int)
-#12 := (= #8 0::int)
-#14 := (or #12 #13)
-#351 := (ite #14 #343 #350)
-#845 := (forall (vars (?v0 int) (?v1 int)) (:pat #844) #351)
-#354 := (forall (vars (?v0 int) (?v1 int)) #351)
-#848 := (iff #354 #845)
-#846 := (iff #351 #351)
-#847 := [refl]: #846
-#849 := [quant-intro #847]: #848
-#314 := (ite #309 #21 #90)
-#317 := (ite #14 0::int #314)
-#320 := (= #10 #317)
-#323 := (forall (vars (?v0 int) (?v1 int)) #320)
-#355 := (iff #323 #354)
-#352 := (iff #320 #351)
-#353 := [rewrite]: #352
-#356 := [quant-intro #353]: #355
-#117 := (not #116)
-#110 := (not #109)
-#120 := (and #110 #117)
-#106 := (not #105)
-#113 := (and #106 #110)
-#123 := (or #113 #120)
-#126 := (ite #123 #21 #90)
-#129 := (ite #14 0::int #126)
-#132 := (= #10 #129)
-#135 := (forall (vars (?v0 int) (?v1 int)) #132)
-#324 := (iff #135 #323)
-#321 := (iff #132 #320)
-#318 := (= #129 #317)
-#315 := (= #126 #314)
-#312 := (iff #123 #309)
-#306 := (or #303 #286)
-#310 := (iff #306 #309)
-#311 := [rewrite]: #310
-#307 := (iff #123 #306)
-#304 := (iff #120 #286)
-#305 := [rewrite]: #304
-#283 := (iff #113 #303)
-#284 := [rewrite]: #283
-#308 := [monotonicity #284 #305]: #307
-#313 := [trans #308 #311]: #312
-#316 := [monotonicity #313]: #315
-#319 := [monotonicity #316]: #318
-#322 := [monotonicity #319]: #321
-#325 := [quant-intro #322]: #324
-#289 := (~ #135 #135)
-#287 := (~ #132 #132)
-#288 := [refl]: #287
-#290 := [nnf-pos #288]: #289
-#23 := (- #9)
-#22 := (- #8)
-#24 := (div #22 #23)
-#16 := (< 0::int #9)
-#18 := (< #8 0::int)
-#19 := (and #18 #16)
-#15 := (< 0::int #8)
-#17 := (and #15 #16)
-#20 := (or #17 #19)
-#25 := (ite #20 #21 #24)
-#26 := (ite #14 0::int #25)
-#27 := (= #10 #26)
-#28 := (forall (vars (?v0 int) (?v1 int)) #27)
-#138 := (iff #28 #135)
-#77 := (and #16 #18)
-#80 := (or #17 #77)
-#93 := (ite #80 #21 #90)
-#96 := (ite #14 0::int #93)
-#99 := (= #10 #96)
-#102 := (forall (vars (?v0 int) (?v1 int)) #99)
-#136 := (iff #102 #135)
-#133 := (iff #99 #132)
-#130 := (= #96 #129)
-#127 := (= #93 #126)
-#124 := (iff #80 #123)
-#121 := (iff #77 #120)
-#118 := (iff #18 #117)
-#119 := [rewrite]: #118
-#111 := (iff #16 #110)
-#112 := [rewrite]: #111
-#122 := [monotonicity #112 #119]: #121
-#114 := (iff #17 #113)
-#107 := (iff #15 #106)
-#108 := [rewrite]: #107
-#115 := [monotonicity #108 #112]: #114
-#125 := [monotonicity #115 #122]: #124
-#128 := [monotonicity #125]: #127
-#131 := [monotonicity #128]: #130
-#134 := [monotonicity #131]: #133
-#137 := [quant-intro #134]: #136
-#103 := (iff #28 #102)
-#100 := (iff #27 #99)
-#97 := (= #26 #96)
-#94 := (= #25 #93)
-#91 := (= #24 #90)
-#88 := (= #23 #87)
-#89 := [rewrite]: #88
-#85 := (= #22 #84)
-#86 := [rewrite]: #85
-#92 := [monotonicity #86 #89]: #91
-#81 := (iff #20 #80)
-#78 := (iff #19 #77)
-#79 := [rewrite]: #78
-#82 := [monotonicity #79]: #81
-#95 := [monotonicity #82 #92]: #94
-#98 := [monotonicity #95]: #97
-#101 := [monotonicity #98]: #100
-#104 := [quant-intro #101]: #103
-#139 := [trans #104 #137]: #138
-#76 := [asserted]: #28
-#140 := [mp #76 #139]: #135
-#274 := [mp~ #140 #290]: #135
-#326 := [mp #274 #325]: #323
-#357 := [mp #326 #356]: #354
-#850 := [mp #357 #849]: #845
-#766 := (not #845)
-#768 := (or #766 #790)
-#431 := (* -1::int 1::int)
-#515 := (* -1::int 3::int)
-#516 := (div #515 #431)
-#517 := (* -1::int #516)
-#508 := (+ #55 #517)
-#519 := (= #508 0::int)
-#520 := (div 3::int 1::int)
-#521 := (* -1::int #520)
-#518 := (+ #55 #521)
-#522 := (= #518 0::int)
-#501 := (<= 1::int 0::int)
-#836 := (<= 3::int 0::int)
-#838 := (or #836 #501)
-#495 := (not #838)
-#625 := (>= 3::int 0::int)
-#832 := (or #501 #625)
-#506 := (not #832)
-#507 := (or #506 #495)
-#839 := (ite #507 #522 #519)
-#840 := (= #55 0::int)
-#841 := (= 1::int 0::int)
-#842 := (= 3::int 0::int)
-#837 := (or #842 #841)
-#843 := (ite #837 #840 #839)
-#760 := (or #766 #843)
-#759 := (iff #760 #768)
-#770 := (iff #768 #768)
-#771 := [rewrite]: #770
-#775 := (iff #843 #790)
-#682 := (ite false #840 #790)
-#685 := (iff #682 #790)
-#778 := [rewrite]: #685
-#683 := (iff #843 #682)
-#673 := (iff #839 #790)
-#1 := true
-#777 := (ite true #790 #790)
-#679 := (iff #777 #790)
-#680 := [rewrite]: #679
-#662 := (iff #839 #777)
-#773 := (iff #519 #790)
-#809 := -3::int
-#802 := (+ -3::int #55)
-#646 := (= #802 0::int)
-#791 := (iff #646 #790)
-#792 := [rewrite]: #791
-#776 := (iff #519 #646)
-#669 := (= #508 #802)
-#801 := (+ #55 -3::int)
-#803 := (= #801 #802)
-#798 := [rewrite]: #803
-#667 := (= #508 #801)
-#782 := (= #517 -3::int)
-#806 := (= #515 -3::int)
-#810 := [rewrite]: #806
-#783 := (= #517 #515)
-#780 := (= #516 3::int)
-#788 := (div -3::int -1::int)
-#626 := (= #788 3::int)
-#627 := [rewrite]: #626
-#795 := (= #516 #788)
-#793 := (= #431 -1::int)
-#794 := [rewrite]: #793
-#624 := [monotonicity #810 #794]: #795
-#781 := [trans #624 #627]: #780
-#784 := [monotonicity #781]: #783
-#785 := [trans #784 #810]: #782
-#668 := [monotonicity #785]: #667
-#628 := [trans #668 #798]: #669
-#678 := [monotonicity #628]: #776
-#774 := [trans #678 #792]: #773
-#786 := (iff #522 #790)
-#647 := (iff #522 #646)
-#804 := (= #518 #802)
-#796 := (= #518 #801)
-#799 := (= #521 -3::int)
-#523 := (= #521 #515)
-#807 := (= #520 3::int)
-#808 := [rewrite]: #807
-#805 := [monotonicity #808]: #523
-#800 := [trans #805 #810]: #799
-#797 := [monotonicity #800]: #796
-#645 := [trans #797 #798]: #804
-#789 := [monotonicity #645]: #647
-#787 := [trans #789 #792]: #786
-#528 := (iff #507 true)
-#824 := (or false true)
-#826 := (iff #824 true)
-#464 := [rewrite]: #826
-#526 := (iff #507 #824)
-#812 := (iff #495 true)
-#814 := (not false)
-#811 := (iff #814 true)
-#815 := [rewrite]: #811
-#536 := (iff #495 #814)
-#437 := (iff #838 false)
-#494 := (or false false)
-#819 := (iff #494 false)
-#482 := [rewrite]: #819
-#542 := (iff #838 #494)
-#485 := (iff #501 false)
-#821 := [rewrite]: #485
-#540 := (iff #836 false)
-#541 := [rewrite]: #540
-#543 := [monotonicity #541 #821]: #542
-#813 := [trans #543 #482]: #437
-#537 := [monotonicity #813]: #536
-#816 := [trans #537 #815]: #812
-#817 := (iff #506 false)
-#469 := (not true)
-#828 := (iff #469 false)
-#831 := [rewrite]: #828
-#470 := (iff #506 #469)
-#827 := (iff #832 true)
-#825 := (iff #832 #824)
-#822 := (iff #625 true)
-#823 := [rewrite]: #822
-#820 := [monotonicity #821 #823]: #825
-#829 := [trans #820 #464]: #827
-#830 := [monotonicity #829]: #470
-#818 := [trans #830 #831]: #817
-#527 := [monotonicity #818 #816]: #526
-#529 := [trans #527 #464]: #528
-#677 := [monotonicity #529 #787 #774]: #662
-#681 := [trans #677 #680]: #673
-#483 := (iff #837 false)
-#835 := (iff #837 #494)
-#498 := (iff #841 false)
-#834 := [rewrite]: #498
-#833 := (iff #842 false)
-#493 := [rewrite]: #833
-#478 := [monotonicity #493 #834]: #835
-#484 := [trans #478 #482]: #483
-#684 := [monotonicity #484 #681]: #683
-#779 := [trans #684 #778]: #775
-#769 := [monotonicity #779]: #759
-#767 := [trans #769 #771]: #759
-#757 := [quant-inst]: #760
-#772 := [mp #757 #767]: #768
-#705 := [unit-resolution #772 #850]: #790
-#706 := [monotonicity #705]: #58
-#59 := (not #58)
-#271 := [asserted]: #59
-[unit-resolution #271 #706]: false
-unsat
-42cd145e516d85b450559c9cc1b54c1ed7265de3 304 0
+1ce1abcb126a1a568a3f8f5f2b0d8898293280b4 304 0
 #2 := false
 decl f5 :: (-> int S2)
 #11 := 0::int
@@ -15251,7 +14952,609 @@
 #270 := [asserted]: #58
 [unit-resolution #270 #708]: false
 unsat
-4183c3ff4a9f3923626099be345775dc19db2d14 360 0
+8182954e616c62f0cc886f21c7ebfe80a132d572 298 0
+#2 := false
+decl f5 :: (-> int S2)
+#53 := 3::int
+#57 := (f5 3::int)
+decl f3 :: (-> int int int)
+#54 := 1::int
+#55 := (f3 3::int 1::int)
+#56 := (f5 #55)
+#58 := (= #56 #57)
+#790 := (= #55 3::int)
+#9 := (:var 0 int)
+#8 := (:var 1 int)
+#10 := (f3 #8 #9)
+#844 := (pattern #10)
+#11 := 0::int
+#83 := -1::int
+#87 := (* -1::int #9)
+#84 := (* -1::int #8)
+#90 := (div #84 #87)
+#347 := (* -1::int #90)
+#348 := (+ #10 #347)
+#349 := (= #348 0::int)
+#21 := (div #8 #9)
+#344 := (* -1::int #21)
+#345 := (+ #10 #344)
+#346 := (= #345 0::int)
+#109 := (<= #9 0::int)
+#105 := (<= #8 0::int)
+#302 := (or #105 #109)
+#303 := (not #302)
+#116 := (>= #8 0::int)
+#285 := (or #109 #116)
+#286 := (not #285)
+#309 := (or #286 #303)
+#350 := (ite #309 #346 #349)
+#343 := (= #10 0::int)
+#13 := (= #9 0::int)
+#12 := (= #8 0::int)
+#14 := (or #12 #13)
+#351 := (ite #14 #343 #350)
+#845 := (forall (vars (?v0 int) (?v1 int)) (:pat #844) #351)
+#354 := (forall (vars (?v0 int) (?v1 int)) #351)
+#848 := (iff #354 #845)
+#846 := (iff #351 #351)
+#847 := [refl]: #846
+#849 := [quant-intro #847]: #848
+#314 := (ite #309 #21 #90)
+#317 := (ite #14 0::int #314)
+#320 := (= #10 #317)
+#323 := (forall (vars (?v0 int) (?v1 int)) #320)
+#355 := (iff #323 #354)
+#352 := (iff #320 #351)
+#353 := [rewrite]: #352
+#356 := [quant-intro #353]: #355
+#117 := (not #116)
+#110 := (not #109)
+#120 := (and #110 #117)
+#106 := (not #105)
+#113 := (and #106 #110)
+#123 := (or #113 #120)
+#126 := (ite #123 #21 #90)
+#129 := (ite #14 0::int #126)
+#132 := (= #10 #129)
+#135 := (forall (vars (?v0 int) (?v1 int)) #132)
+#324 := (iff #135 #323)
+#321 := (iff #132 #320)
+#318 := (= #129 #317)
+#315 := (= #126 #314)
+#312 := (iff #123 #309)
+#306 := (or #303 #286)
+#310 := (iff #306 #309)
+#311 := [rewrite]: #310
+#307 := (iff #123 #306)
+#304 := (iff #120 #286)
+#305 := [rewrite]: #304
+#283 := (iff #113 #303)
+#284 := [rewrite]: #283
+#308 := [monotonicity #284 #305]: #307
+#313 := [trans #308 #311]: #312
+#316 := [monotonicity #313]: #315
+#319 := [monotonicity #316]: #318
+#322 := [monotonicity #319]: #321
+#325 := [quant-intro #322]: #324
+#289 := (~ #135 #135)
+#287 := (~ #132 #132)
+#288 := [refl]: #287
+#290 := [nnf-pos #288]: #289
+#23 := (- #9)
+#22 := (- #8)
+#24 := (div #22 #23)
+#16 := (< 0::int #9)
+#18 := (< #8 0::int)
+#19 := (and #18 #16)
+#15 := (< 0::int #8)
+#17 := (and #15 #16)
+#20 := (or #17 #19)
+#25 := (ite #20 #21 #24)
+#26 := (ite #14 0::int #25)
+#27 := (= #10 #26)
+#28 := (forall (vars (?v0 int) (?v1 int)) #27)
+#138 := (iff #28 #135)
+#77 := (and #16 #18)
+#80 := (or #17 #77)
+#93 := (ite #80 #21 #90)
+#96 := (ite #14 0::int #93)
+#99 := (= #10 #96)
+#102 := (forall (vars (?v0 int) (?v1 int)) #99)
+#136 := (iff #102 #135)
+#133 := (iff #99 #132)
+#130 := (= #96 #129)
+#127 := (= #93 #126)
+#124 := (iff #80 #123)
+#121 := (iff #77 #120)
+#118 := (iff #18 #117)
+#119 := [rewrite]: #118
+#111 := (iff #16 #110)
+#112 := [rewrite]: #111
+#122 := [monotonicity #112 #119]: #121
+#114 := (iff #17 #113)
+#107 := (iff #15 #106)
+#108 := [rewrite]: #107
+#115 := [monotonicity #108 #112]: #114
+#125 := [monotonicity #115 #122]: #124
+#128 := [monotonicity #125]: #127
+#131 := [monotonicity #128]: #130
+#134 := [monotonicity #131]: #133
+#137 := [quant-intro #134]: #136
+#103 := (iff #28 #102)
+#100 := (iff #27 #99)
+#97 := (= #26 #96)
+#94 := (= #25 #93)
+#91 := (= #24 #90)
+#88 := (= #23 #87)
+#89 := [rewrite]: #88
+#85 := (= #22 #84)
+#86 := [rewrite]: #85
+#92 := [monotonicity #86 #89]: #91
+#81 := (iff #20 #80)
+#78 := (iff #19 #77)
+#79 := [rewrite]: #78
+#82 := [monotonicity #79]: #81
+#95 := [monotonicity #82 #92]: #94
+#98 := [monotonicity #95]: #97
+#101 := [monotonicity #98]: #100
+#104 := [quant-intro #101]: #103
+#139 := [trans #104 #137]: #138
+#76 := [asserted]: #28
+#140 := [mp #76 #139]: #135
+#274 := [mp~ #140 #290]: #135
+#326 := [mp #274 #325]: #323
+#357 := [mp #326 #356]: #354
+#850 := [mp #357 #849]: #845
+#766 := (not #845)
+#768 := (or #766 #790)
+#431 := (* -1::int 1::int)
+#515 := (* -1::int 3::int)
+#516 := (div #515 #431)
+#517 := (* -1::int #516)
+#508 := (+ #55 #517)
+#519 := (= #508 0::int)
+#520 := (div 3::int 1::int)
+#521 := (* -1::int #520)
+#518 := (+ #55 #521)
+#522 := (= #518 0::int)
+#501 := (<= 1::int 0::int)
+#836 := (<= 3::int 0::int)
+#838 := (or #836 #501)
+#495 := (not #838)
+#625 := (>= 3::int 0::int)
+#832 := (or #501 #625)
+#506 := (not #832)
+#507 := (or #506 #495)
+#839 := (ite #507 #522 #519)
+#840 := (= #55 0::int)
+#841 := (= 1::int 0::int)
+#842 := (= 3::int 0::int)
+#837 := (or #842 #841)
+#843 := (ite #837 #840 #839)
+#760 := (or #766 #843)
+#759 := (iff #760 #768)
+#770 := (iff #768 #768)
+#771 := [rewrite]: #770
+#775 := (iff #843 #790)
+#682 := (ite false #840 #790)
+#685 := (iff #682 #790)
+#778 := [rewrite]: #685
+#683 := (iff #843 #682)
+#673 := (iff #839 #790)
+#1 := true
+#777 := (ite true #790 #790)
+#679 := (iff #777 #790)
+#680 := [rewrite]: #679
+#662 := (iff #839 #777)
+#773 := (iff #519 #790)
+#809 := -3::int
+#802 := (+ -3::int #55)
+#646 := (= #802 0::int)
+#791 := (iff #646 #790)
+#792 := [rewrite]: #791
+#776 := (iff #519 #646)
+#669 := (= #508 #802)
+#801 := (+ #55 -3::int)
+#803 := (= #801 #802)
+#798 := [rewrite]: #803
+#667 := (= #508 #801)
+#782 := (= #517 -3::int)
+#806 := (= #515 -3::int)
+#810 := [rewrite]: #806
+#783 := (= #517 #515)
+#780 := (= #516 3::int)
+#788 := (div -3::int -1::int)
+#626 := (= #788 3::int)
+#627 := [rewrite]: #626
+#795 := (= #516 #788)
+#793 := (= #431 -1::int)
+#794 := [rewrite]: #793
+#624 := [monotonicity #810 #794]: #795
+#781 := [trans #624 #627]: #780
+#784 := [monotonicity #781]: #783
+#785 := [trans #784 #810]: #782
+#668 := [monotonicity #785]: #667
+#628 := [trans #668 #798]: #669
+#678 := [monotonicity #628]: #776
+#774 := [trans #678 #792]: #773
+#786 := (iff #522 #790)
+#647 := (iff #522 #646)
+#804 := (= #518 #802)
+#796 := (= #518 #801)
+#799 := (= #521 -3::int)
+#523 := (= #521 #515)
+#807 := (= #520 3::int)
+#808 := [rewrite]: #807
+#805 := [monotonicity #808]: #523
+#800 := [trans #805 #810]: #799
+#797 := [monotonicity #800]: #796
+#645 := [trans #797 #798]: #804
+#789 := [monotonicity #645]: #647
+#787 := [trans #789 #792]: #786
+#528 := (iff #507 true)
+#824 := (or false true)
+#826 := (iff #824 true)
+#464 := [rewrite]: #826
+#526 := (iff #507 #824)
+#812 := (iff #495 true)
+#814 := (not false)
+#811 := (iff #814 true)
+#815 := [rewrite]: #811
+#536 := (iff #495 #814)
+#437 := (iff #838 false)
+#494 := (or false false)
+#819 := (iff #494 false)
+#482 := [rewrite]: #819
+#542 := (iff #838 #494)
+#485 := (iff #501 false)
+#821 := [rewrite]: #485
+#540 := (iff #836 false)
+#541 := [rewrite]: #540
+#543 := [monotonicity #541 #821]: #542
+#813 := [trans #543 #482]: #437
+#537 := [monotonicity #813]: #536
+#816 := [trans #537 #815]: #812
+#817 := (iff #506 false)
+#469 := (not true)
+#828 := (iff #469 false)
+#831 := [rewrite]: #828
+#470 := (iff #506 #469)
+#827 := (iff #832 true)
+#825 := (iff #832 #824)
+#822 := (iff #625 true)
+#823 := [rewrite]: #822
+#820 := [monotonicity #821 #823]: #825
+#829 := [trans #820 #464]: #827
+#830 := [monotonicity #829]: #470
+#818 := [trans #830 #831]: #817
+#527 := [monotonicity #818 #816]: #526
+#529 := [trans #527 #464]: #528
+#677 := [monotonicity #529 #787 #774]: #662
+#681 := [trans #677 #680]: #673
+#483 := (iff #837 false)
+#835 := (iff #837 #494)
+#498 := (iff #841 false)
+#834 := [rewrite]: #498
+#833 := (iff #842 false)
+#493 := [rewrite]: #833
+#478 := [monotonicity #493 #834]: #835
+#484 := [trans #478 #482]: #483
+#684 := [monotonicity #484 #681]: #683
+#779 := [trans #684 #778]: #775
+#769 := [monotonicity #779]: #759
+#767 := [trans #769 #771]: #759
+#757 := [quant-inst]: #760
+#772 := [mp #757 #767]: #768
+#705 := [unit-resolution #772 #850]: #790
+#706 := [monotonicity #705]: #58
+#59 := (not #58)
+#271 := [asserted]: #59
+[unit-resolution #271 #706]: false
+unsat
+a73336d8974d339785d03ee7b06059fa66e36b1e 302 0
+#2 := false
+decl f5 :: (-> int S2)
+#11 := 0::int
+#56 := (f5 0::int)
+decl f4 :: (-> int int int)
+#53 := 1::int
+#54 := (f4 1::int 1::int)
+#55 := (f5 #54)
+#57 := (= #55 #56)
+#505 := (= #54 0::int)
+#9 := (:var 0 int)
+#8 := (:var 1 int)
+#29 := (f4 #8 #9)
+#850 := (pattern #29)
+#82 := -1::int
+#86 := (* -1::int #9)
+#83 := (* -1::int #8)
+#141 := (mod #83 #86)
+#362 := (+ #29 #141)
+#363 := (= #362 0::int)
+#30 := (mod #8 #9)
+#359 := (* -1::int #30)
+#360 := (+ #29 #359)
+#361 := (= #360 0::int)
+#108 := (<= #9 0::int)
+#104 := (<= #8 0::int)
+#301 := (or #104 #108)
+#302 := (not #301)
+#115 := (>= #8 0::int)
+#284 := (or #108 #115)
+#285 := (not #284)
+#308 := (or #285 #302)
+#364 := (ite #308 #361 #363)
+#358 := (= #29 0::int)
+#12 := (= #8 0::int)
+#365 := (ite #12 #358 #364)
+#357 := (= #8 #29)
+#13 := (= #9 0::int)
+#366 := (ite #13 #357 #365)
+#851 := (forall (vars (?v0 int) (?v1 int)) (:pat #850) #366)
+#369 := (forall (vars (?v0 int) (?v1 int)) #366)
+#854 := (iff #369 #851)
+#852 := (iff #366 #366)
+#853 := [refl]: #852
+#855 := [quant-intro #853]: #854
+#147 := (* -1::int #141)
+#326 := (ite #308 #30 #147)
+#329 := (ite #12 0::int #326)
+#332 := (ite #13 #8 #329)
+#335 := (= #29 #332)
+#338 := (forall (vars (?v0 int) (?v1 int)) #335)
+#370 := (iff #338 #369)
+#367 := (iff #335 #366)
+#368 := [rewrite]: #367
+#371 := [quant-intro #368]: #370
+#116 := (not #115)
+#109 := (not #108)
+#119 := (and #109 #116)
+#105 := (not #104)
+#112 := (and #105 #109)
+#122 := (or #112 #119)
+#167 := (ite #122 #30 #147)
+#170 := (ite #12 0::int #167)
+#173 := (ite #13 #8 #170)
+#176 := (= #29 #173)
+#179 := (forall (vars (?v0 int) (?v1 int)) #176)
+#339 := (iff #179 #338)
+#336 := (iff #176 #335)
+#333 := (= #173 #332)
+#330 := (= #170 #329)
+#327 := (= #167 #326)
+#311 := (iff #122 #308)
+#305 := (or #302 #285)
+#309 := (iff #305 #308)
+#310 := [rewrite]: #309
+#306 := (iff #122 #305)
+#303 := (iff #119 #285)
+#304 := [rewrite]: #303
+#282 := (iff #112 #302)
+#283 := [rewrite]: #282
+#307 := [monotonicity #283 #304]: #306
+#312 := [trans #307 #310]: #311
+#328 := [monotonicity #312]: #327
+#331 := [monotonicity #328]: #330
+#334 := [monotonicity #331]: #333
+#337 := [monotonicity #334]: #336
+#340 := [quant-intro #337]: #339
+#274 := (~ #179 #179)
+#271 := (~ #176 #176)
+#290 := [refl]: #271
+#275 := [nnf-pos #290]: #274
+#23 := (- #9)
+#22 := (- #8)
+#31 := (mod #22 #23)
+#32 := (- #31)
+#16 := (< 0::int #9)
+#18 := (< #8 0::int)
+#19 := (and #18 #16)
+#15 := (< 0::int #8)
+#17 := (and #15 #16)
+#20 := (or #17 #19)
+#33 := (ite #20 #30 #32)
+#34 := (ite #12 0::int #33)
+#35 := (ite #13 #8 #34)
+#36 := (= #29 #35)
+#37 := (forall (vars (?v0 int) (?v1 int)) #36)
+#182 := (iff #37 #179)
+#76 := (and #16 #18)
+#79 := (or #17 #76)
+#152 := (ite #79 #30 #147)
+#155 := (ite #12 0::int #152)
+#158 := (ite #13 #8 #155)
+#161 := (= #29 #158)
+#164 := (forall (vars (?v0 int) (?v1 int)) #161)
+#180 := (iff #164 #179)
+#177 := (iff #161 #176)
+#174 := (= #158 #173)
+#171 := (= #155 #170)
+#168 := (= #152 #167)
+#123 := (iff #79 #122)
+#120 := (iff #76 #119)
+#117 := (iff #18 #116)
+#118 := [rewrite]: #117
+#110 := (iff #16 #109)
+#111 := [rewrite]: #110
+#121 := [monotonicity #111 #118]: #120
+#113 := (iff #17 #112)
+#106 := (iff #15 #105)
+#107 := [rewrite]: #106
+#114 := [monotonicity #107 #111]: #113
+#124 := [monotonicity #114 #121]: #123
+#169 := [monotonicity #124]: #168
+#172 := [monotonicity #169]: #171
+#175 := [monotonicity #172]: #174
+#178 := [monotonicity #175]: #177
+#181 := [quant-intro #178]: #180
+#165 := (iff #37 #164)
+#162 := (iff #36 #161)
+#159 := (= #35 #158)
+#156 := (= #34 #155)
+#153 := (= #33 #152)
+#150 := (= #32 #147)
+#144 := (- #141)
+#148 := (= #144 #147)
+#149 := [rewrite]: #148
+#145 := (= #32 #144)
+#142 := (= #31 #141)
+#87 := (= #23 #86)
+#88 := [rewrite]: #87
+#84 := (= #22 #83)
+#85 := [rewrite]: #84
+#143 := [monotonicity #85 #88]: #142
+#146 := [monotonicity #143]: #145
+#151 := [trans #146 #149]: #150
+#80 := (iff #20 #79)
+#77 := (iff #19 #76)
+#78 := [rewrite]: #77
+#81 := [monotonicity #78]: #80
+#154 := [monotonicity #81 #151]: #153
+#157 := [monotonicity #154]: #156
+#160 := [monotonicity #157]: #159
+#163 := [monotonicity #160]: #162
+#166 := [quant-intro #163]: #165
+#183 := [trans #166 #181]: #182
+#140 := [asserted]: #37
+#184 := [mp #140 #183]: #179
+#291 := [mp~ #184 #275]: #179
+#341 := [mp #291 #340]: #338
+#372 := [mp #341 #371]: #369
+#856 := [mp #372 #855]: #851
+#776 := (not #851)
+#661 := (or #776 #505)
+#430 := (* -1::int 1::int)
+#514 := (mod #430 #430)
+#515 := (+ #54 #514)
+#516 := (= #515 0::int)
+#507 := (mod 1::int 1::int)
+#518 := (* -1::int #507)
+#519 := (+ #54 #518)
+#520 := (= #519 0::int)
+#517 := (<= 1::int 0::int)
+#521 := (or #517 #517)
+#500 := (not #521)
+#835 := (>= 1::int 0::int)
+#837 := (or #517 #835)
+#494 := (not #837)
+#624 := (or #494 #500)
+#831 := (ite #624 #520 #516)
+#506 := (= 1::int 0::int)
+#838 := (ite #506 #505 #831)
+#839 := (= 1::int #54)
+#840 := (ite #506 #839 #838)
+#676 := (or #776 #840)
+#679 := (iff #676 #661)
+#680 := (iff #661 #661)
+#681 := [rewrite]: #680
+#772 := (iff #840 #505)
+#832 := (= #54 1::int)
+#667 := (ite false #832 #505)
+#775 := (iff #667 #505)
+#677 := [rewrite]: #775
+#668 := (iff #840 #667)
+#784 := (iff #838 #505)
+#779 := (ite false #505 #505)
+#783 := (iff #779 #505)
+#781 := [rewrite]: #783
+#780 := (iff #838 #779)
+#625 := (iff #831 #505)
+#1 := true
+#792 := (ite true #505 #505)
+#794 := (iff #792 #505)
+#623 := [rewrite]: #794
+#793 := (iff #831 #792)
+#785 := (iff #516 #505)
+#790 := (= #515 #54)
+#807 := (+ #54 0::int)
+#808 := (= #807 #54)
+#805 := [rewrite]: #808
+#788 := (= #515 #807)
+#645 := (= #514 0::int)
+#801 := (mod -1::int -1::int)
+#803 := (= #801 0::int)
+#644 := [rewrite]: #803
+#802 := (= #514 #801)
+#795 := (= #430 -1::int)
+#796 := [rewrite]: #795
+#797 := [monotonicity #796 #796]: #802
+#646 := [trans #797 #644]: #645
+#789 := [monotonicity #646]: #788
+#791 := [trans #789 #805]: #790
+#786 := [monotonicity #791]: #785
+#799 := (iff #520 #505)
+#809 := (= #519 #54)
+#522 := (= #519 #807)
+#528 := (= #518 0::int)
+#811 := (* -1::int 0::int)
+#526 := (= #811 0::int)
+#527 := [rewrite]: #526
+#815 := (= #518 #811)
+#810 := (= #507 0::int)
+#814 := [rewrite]: #810
+#525 := [monotonicity #814]: #815
+#806 := [trans #525 #527]: #528
+#804 := [monotonicity #806]: #522
+#798 := [trans #804 #805]: #809
+#800 := [monotonicity #798]: #799
+#535 := (iff #624 true)
+#477 := (or false true)
+#482 := (iff #477 true)
+#483 := [rewrite]: #482
+#812 := (iff #624 #477)
+#542 := (iff #500 true)
+#816 := (not false)
+#540 := (iff #816 true)
+#541 := [rewrite]: #540
+#817 := (iff #500 #816)
+#827 := (iff #521 false)
+#826 := (or false false)
+#469 := (iff #826 false)
+#829 := [rewrite]: #469
+#828 := (iff #521 #826)
+#497 := (iff #517 false)
+#833 := [rewrite]: #497
+#468 := [monotonicity #833 #833]: #828
+#830 := [trans #468 #829]: #827
+#539 := [monotonicity #830]: #817
+#436 := [trans #539 #541]: #542
+#825 := (iff #494 false)
+#821 := (not true)
+#824 := (iff #821 false)
+#819 := [rewrite]: #824
+#822 := (iff #494 #821)
+#484 := (iff #837 true)
+#818 := (iff #837 #477)
+#493 := (iff #835 true)
+#834 := [rewrite]: #493
+#481 := [monotonicity #833 #834]: #818
+#820 := [trans #481 #483]: #484
+#823 := [monotonicity #820]: #822
+#463 := [trans #823 #819]: #825
+#813 := [monotonicity #463 #436]: #812
+#536 := [trans #813 #483]: #535
+#787 := [monotonicity #536 #800 #786]: #793
+#626 := [trans #787 #623]: #625
+#841 := (iff #506 false)
+#836 := [rewrite]: #841
+#782 := [monotonicity #836 #626]: #780
+#666 := [trans #782 #781]: #784
+#842 := (iff #839 #832)
+#492 := [rewrite]: #842
+#627 := [monotonicity #836 #492 #666]: #668
+#773 := [trans #627 #677]: #772
+#672 := [monotonicity #773]: #679
+#682 := [trans #672 #681]: #679
+#678 := [quant-inst]: #676
+#683 := [mp #678 #682]: #661
+#703 := [unit-resolution #683 #856]: #505
+#699 := [monotonicity #703]: #57
+#58 := (not #57)
+#270 := [asserted]: #58
+[unit-resolution #270 #699]: false
+unsat
+aa365ca33021a3af06f636ef2547aa25906c3855 360 0
 #2 := false
 decl f5 :: (-> int S2)
 decl f3 :: (-> int int int)
@@ -15612,599 +15915,7 @@
 #557 := [trans #620 #572]: #272
 [unit-resolution #280 #557]: false
 unsat
-121357a49f554c92c48529c5e8845192f6c0a8a5 302 0
-#2 := false
-decl f5 :: (-> int S2)
-#11 := 0::int
-#56 := (f5 0::int)
-decl f4 :: (-> int int int)
-#53 := 1::int
-#54 := (f4 1::int 1::int)
-#55 := (f5 #54)
-#57 := (= #55 #56)
-#505 := (= #54 0::int)
-#9 := (:var 0 int)
-#8 := (:var 1 int)
-#29 := (f4 #8 #9)
-#850 := (pattern #29)
-#82 := -1::int
-#86 := (* -1::int #9)
-#83 := (* -1::int #8)
-#141 := (mod #83 #86)
-#362 := (+ #29 #141)
-#363 := (= #362 0::int)
-#30 := (mod #8 #9)
-#359 := (* -1::int #30)
-#360 := (+ #29 #359)
-#361 := (= #360 0::int)
-#108 := (<= #9 0::int)
-#104 := (<= #8 0::int)
-#301 := (or #104 #108)
-#302 := (not #301)
-#115 := (>= #8 0::int)
-#284 := (or #108 #115)
-#285 := (not #284)
-#308 := (or #285 #302)
-#364 := (ite #308 #361 #363)
-#358 := (= #29 0::int)
-#12 := (= #8 0::int)
-#365 := (ite #12 #358 #364)
-#357 := (= #8 #29)
-#13 := (= #9 0::int)
-#366 := (ite #13 #357 #365)
-#851 := (forall (vars (?v0 int) (?v1 int)) (:pat #850) #366)
-#369 := (forall (vars (?v0 int) (?v1 int)) #366)
-#854 := (iff #369 #851)
-#852 := (iff #366 #366)
-#853 := [refl]: #852
-#855 := [quant-intro #853]: #854
-#147 := (* -1::int #141)
-#326 := (ite #308 #30 #147)
-#329 := (ite #12 0::int #326)
-#332 := (ite #13 #8 #329)
-#335 := (= #29 #332)
-#338 := (forall (vars (?v0 int) (?v1 int)) #335)
-#370 := (iff #338 #369)
-#367 := (iff #335 #366)
-#368 := [rewrite]: #367
-#371 := [quant-intro #368]: #370
-#116 := (not #115)
-#109 := (not #108)
-#119 := (and #109 #116)
-#105 := (not #104)
-#112 := (and #105 #109)
-#122 := (or #112 #119)
-#167 := (ite #122 #30 #147)
-#170 := (ite #12 0::int #167)
-#173 := (ite #13 #8 #170)
-#176 := (= #29 #173)
-#179 := (forall (vars (?v0 int) (?v1 int)) #176)
-#339 := (iff #179 #338)
-#336 := (iff #176 #335)
-#333 := (= #173 #332)
-#330 := (= #170 #329)
-#327 := (= #167 #326)
-#311 := (iff #122 #308)
-#305 := (or #302 #285)
-#309 := (iff #305 #308)
-#310 := [rewrite]: #309
-#306 := (iff #122 #305)
-#303 := (iff #119 #285)
-#304 := [rewrite]: #303
-#282 := (iff #112 #302)
-#283 := [rewrite]: #282
-#307 := [monotonicity #283 #304]: #306
-#312 := [trans #307 #310]: #311
-#328 := [monotonicity #312]: #327
-#331 := [monotonicity #328]: #330
-#334 := [monotonicity #331]: #333
-#337 := [monotonicity #334]: #336
-#340 := [quant-intro #337]: #339
-#274 := (~ #179 #179)
-#271 := (~ #176 #176)
-#290 := [refl]: #271
-#275 := [nnf-pos #290]: #274
-#23 := (- #9)
-#22 := (- #8)
-#31 := (mod #22 #23)
-#32 := (- #31)
-#16 := (< 0::int #9)
-#18 := (< #8 0::int)
-#19 := (and #18 #16)
-#15 := (< 0::int #8)
-#17 := (and #15 #16)
-#20 := (or #17 #19)
-#33 := (ite #20 #30 #32)
-#34 := (ite #12 0::int #33)
-#35 := (ite #13 #8 #34)
-#36 := (= #29 #35)
-#37 := (forall (vars (?v0 int) (?v1 int)) #36)
-#182 := (iff #37 #179)
-#76 := (and #16 #18)
-#79 := (or #17 #76)
-#152 := (ite #79 #30 #147)
-#155 := (ite #12 0::int #152)
-#158 := (ite #13 #8 #155)
-#161 := (= #29 #158)
-#164 := (forall (vars (?v0 int) (?v1 int)) #161)
-#180 := (iff #164 #179)
-#177 := (iff #161 #176)
-#174 := (= #158 #173)
-#171 := (= #155 #170)
-#168 := (= #152 #167)
-#123 := (iff #79 #122)
-#120 := (iff #76 #119)
-#117 := (iff #18 #116)
-#118 := [rewrite]: #117
-#110 := (iff #16 #109)
-#111 := [rewrite]: #110
-#121 := [monotonicity #111 #118]: #120
-#113 := (iff #17 #112)
-#106 := (iff #15 #105)
-#107 := [rewrite]: #106
-#114 := [monotonicity #107 #111]: #113
-#124 := [monotonicity #114 #121]: #123
-#169 := [monotonicity #124]: #168
-#172 := [monotonicity #169]: #171
-#175 := [monotonicity #172]: #174
-#178 := [monotonicity #175]: #177
-#181 := [quant-intro #178]: #180
-#165 := (iff #37 #164)
-#162 := (iff #36 #161)
-#159 := (= #35 #158)
-#156 := (= #34 #155)
-#153 := (= #33 #152)
-#150 := (= #32 #147)
-#144 := (- #141)
-#148 := (= #144 #147)
-#149 := [rewrite]: #148
-#145 := (= #32 #144)
-#142 := (= #31 #141)
-#87 := (= #23 #86)
-#88 := [rewrite]: #87
-#84 := (= #22 #83)
-#85 := [rewrite]: #84
-#143 := [monotonicity #85 #88]: #142
-#146 := [monotonicity #143]: #145
-#151 := [trans #146 #149]: #150
-#80 := (iff #20 #79)
-#77 := (iff #19 #76)
-#78 := [rewrite]: #77
-#81 := [monotonicity #78]: #80
-#154 := [monotonicity #81 #151]: #153
-#157 := [monotonicity #154]: #156
-#160 := [monotonicity #157]: #159
-#163 := [monotonicity #160]: #162
-#166 := [quant-intro #163]: #165
-#183 := [trans #166 #181]: #182
-#140 := [asserted]: #37
-#184 := [mp #140 #183]: #179
-#291 := [mp~ #184 #275]: #179
-#341 := [mp #291 #340]: #338
-#372 := [mp #341 #371]: #369
-#856 := [mp #372 #855]: #851
-#776 := (not #851)
-#661 := (or #776 #505)
-#430 := (* -1::int 1::int)
-#514 := (mod #430 #430)
-#515 := (+ #54 #514)
-#516 := (= #515 0::int)
-#507 := (mod 1::int 1::int)
-#518 := (* -1::int #507)
-#519 := (+ #54 #518)
-#520 := (= #519 0::int)
-#517 := (<= 1::int 0::int)
-#521 := (or #517 #517)
-#500 := (not #521)
-#835 := (>= 1::int 0::int)
-#837 := (or #517 #835)
-#494 := (not #837)
-#624 := (or #494 #500)
-#831 := (ite #624 #520 #516)
-#506 := (= 1::int 0::int)
-#838 := (ite #506 #505 #831)
-#839 := (= 1::int #54)
-#840 := (ite #506 #839 #838)
-#676 := (or #776 #840)
-#679 := (iff #676 #661)
-#680 := (iff #661 #661)
-#681 := [rewrite]: #680
-#772 := (iff #840 #505)
-#832 := (= #54 1::int)
-#667 := (ite false #832 #505)
-#775 := (iff #667 #505)
-#677 := [rewrite]: #775
-#668 := (iff #840 #667)
-#784 := (iff #838 #505)
-#779 := (ite false #505 #505)
-#783 := (iff #779 #505)
-#781 := [rewrite]: #783
-#780 := (iff #838 #779)
-#625 := (iff #831 #505)
-#1 := true
-#792 := (ite true #505 #505)
-#794 := (iff #792 #505)
-#623 := [rewrite]: #794
-#793 := (iff #831 #792)
-#785 := (iff #516 #505)
-#790 := (= #515 #54)
-#807 := (+ #54 0::int)
-#808 := (= #807 #54)
-#805 := [rewrite]: #808
-#788 := (= #515 #807)
-#645 := (= #514 0::int)
-#801 := (mod -1::int -1::int)
-#803 := (= #801 0::int)
-#644 := [rewrite]: #803
-#802 := (= #514 #801)
-#795 := (= #430 -1::int)
-#796 := [rewrite]: #795
-#797 := [monotonicity #796 #796]: #802
-#646 := [trans #797 #644]: #645
-#789 := [monotonicity #646]: #788
-#791 := [trans #789 #805]: #790
-#786 := [monotonicity #791]: #785
-#799 := (iff #520 #505)
-#809 := (= #519 #54)
-#522 := (= #519 #807)
-#528 := (= #518 0::int)
-#811 := (* -1::int 0::int)
-#526 := (= #811 0::int)
-#527 := [rewrite]: #526
-#815 := (= #518 #811)
-#810 := (= #507 0::int)
-#814 := [rewrite]: #810
-#525 := [monotonicity #814]: #815
-#806 := [trans #525 #527]: #528
-#804 := [monotonicity #806]: #522
-#798 := [trans #804 #805]: #809
-#800 := [monotonicity #798]: #799
-#535 := (iff #624 true)
-#477 := (or false true)
-#482 := (iff #477 true)
-#483 := [rewrite]: #482
-#812 := (iff #624 #477)
-#542 := (iff #500 true)
-#816 := (not false)
-#540 := (iff #816 true)
-#541 := [rewrite]: #540
-#817 := (iff #500 #816)
-#827 := (iff #521 false)
-#826 := (or false false)
-#469 := (iff #826 false)
-#829 := [rewrite]: #469
-#828 := (iff #521 #826)
-#497 := (iff #517 false)
-#833 := [rewrite]: #497
-#468 := [monotonicity #833 #833]: #828
-#830 := [trans #468 #829]: #827
-#539 := [monotonicity #830]: #817
-#436 := [trans #539 #541]: #542
-#825 := (iff #494 false)
-#821 := (not true)
-#824 := (iff #821 false)
-#819 := [rewrite]: #824
-#822 := (iff #494 #821)
-#484 := (iff #837 true)
-#818 := (iff #837 #477)
-#493 := (iff #835 true)
-#834 := [rewrite]: #493
-#481 := [monotonicity #833 #834]: #818
-#820 := [trans #481 #483]: #484
-#823 := [monotonicity #820]: #822
-#463 := [trans #823 #819]: #825
-#813 := [monotonicity #463 #436]: #812
-#536 := [trans #813 #483]: #535
-#787 := [monotonicity #536 #800 #786]: #793
-#626 := [trans #787 #623]: #625
-#841 := (iff #506 false)
-#836 := [rewrite]: #841
-#782 := [monotonicity #836 #626]: #780
-#666 := [trans #782 #781]: #784
-#842 := (iff #839 #832)
-#492 := [rewrite]: #842
-#627 := [monotonicity #836 #492 #666]: #668
-#773 := [trans #627 #677]: #772
-#672 := [monotonicity #773]: #679
-#682 := [trans #672 #681]: #679
-#678 := [quant-inst]: #676
-#683 := [mp #678 #682]: #661
-#703 := [unit-resolution #683 #856]: #505
-#699 := [monotonicity #703]: #57
-#58 := (not #57)
-#270 := [asserted]: #58
-[unit-resolution #270 #699]: false
-unsat
-f2f039ccfb9f8bb6046ed67b2d5f9e4965b93c1c 288 0
-#2 := false
-decl f5 :: (-> int S2)
-#11 := 0::int
-#56 := (f5 0::int)
-decl f3 :: (-> int int int)
-#53 := 3::int
-#54 := (f3 0::int 3::int)
-#55 := (f5 #54)
-#57 := (= #55 #56)
-#839 := (= #54 0::int)
-#9 := (:var 0 int)
-#8 := (:var 1 int)
-#10 := (f3 #8 #9)
-#844 := (pattern #10)
-#82 := -1::int
-#86 := (* -1::int #9)
-#83 := (* -1::int #8)
-#89 := (div #83 #86)
-#346 := (* -1::int #89)
-#347 := (+ #10 #346)
-#348 := (= #347 0::int)
-#21 := (div #8 #9)
-#343 := (* -1::int #21)
-#344 := (+ #10 #343)
-#345 := (= #344 0::int)
-#108 := (<= #9 0::int)
-#104 := (<= #8 0::int)
-#301 := (or #104 #108)
-#302 := (not #301)
-#115 := (>= #8 0::int)
-#284 := (or #108 #115)
-#285 := (not #284)
-#308 := (or #285 #302)
-#349 := (ite #308 #345 #348)
-#342 := (= #10 0::int)
-#13 := (= #9 0::int)
-#12 := (= #8 0::int)
-#14 := (or #12 #13)
-#350 := (ite #14 #342 #349)
-#845 := (forall (vars (?v0 int) (?v1 int)) (:pat #844) #350)
-#353 := (forall (vars (?v0 int) (?v1 int)) #350)
-#848 := (iff #353 #845)
-#846 := (iff #350 #350)
-#847 := [refl]: #846
-#849 := [quant-intro #847]: #848
-#313 := (ite #308 #21 #89)
-#316 := (ite #14 0::int #313)
-#319 := (= #10 #316)
-#322 := (forall (vars (?v0 int) (?v1 int)) #319)
-#354 := (iff #322 #353)
-#351 := (iff #319 #350)
-#352 := [rewrite]: #351
-#355 := [quant-intro #352]: #354
-#116 := (not #115)
-#109 := (not #108)
-#119 := (and #109 #116)
-#105 := (not #104)
-#112 := (and #105 #109)
-#122 := (or #112 #119)
-#125 := (ite #122 #21 #89)
-#128 := (ite #14 0::int #125)
-#131 := (= #10 #128)
-#134 := (forall (vars (?v0 int) (?v1 int)) #131)
-#323 := (iff #134 #322)
-#320 := (iff #131 #319)
-#317 := (= #128 #316)
-#314 := (= #125 #313)
-#311 := (iff #122 #308)
-#305 := (or #302 #285)
-#309 := (iff #305 #308)
-#310 := [rewrite]: #309
-#306 := (iff #122 #305)
-#303 := (iff #119 #285)
-#304 := [rewrite]: #303
-#282 := (iff #112 #302)
-#283 := [rewrite]: #282
-#307 := [monotonicity #283 #304]: #306
-#312 := [trans #307 #310]: #311
-#315 := [monotonicity #312]: #314
-#318 := [monotonicity #315]: #317
-#321 := [monotonicity #318]: #320
-#324 := [quant-intro #321]: #323
-#288 := (~ #134 #134)
-#286 := (~ #131 #131)
-#287 := [refl]: #286
-#289 := [nnf-pos #287]: #288
-#23 := (- #9)
-#22 := (- #8)
-#24 := (div #22 #23)
-#16 := (< 0::int #9)
-#18 := (< #8 0::int)
-#19 := (and #18 #16)
-#15 := (< 0::int #8)
-#17 := (and #15 #16)
-#20 := (or #17 #19)
-#25 := (ite #20 #21 #24)
-#26 := (ite #14 0::int #25)
-#27 := (= #10 #26)
-#28 := (forall (vars (?v0 int) (?v1 int)) #27)
-#137 := (iff #28 #134)
-#76 := (and #16 #18)
-#79 := (or #17 #76)
-#92 := (ite #79 #21 #89)
-#95 := (ite #14 0::int #92)
-#98 := (= #10 #95)
-#101 := (forall (vars (?v0 int) (?v1 int)) #98)
-#135 := (iff #101 #134)
-#132 := (iff #98 #131)
-#129 := (= #95 #128)
-#126 := (= #92 #125)
-#123 := (iff #79 #122)
-#120 := (iff #76 #119)
-#117 := (iff #18 #116)
-#118 := [rewrite]: #117
-#110 := (iff #16 #109)
-#111 := [rewrite]: #110
-#121 := [monotonicity #111 #118]: #120
-#113 := (iff #17 #112)
-#106 := (iff #15 #105)
-#107 := [rewrite]: #106
-#114 := [monotonicity #107 #111]: #113
-#124 := [monotonicity #114 #121]: #123
-#127 := [monotonicity #124]: #126
-#130 := [monotonicity #127]: #129
-#133 := [monotonicity #130]: #132
-#136 := [quant-intro #133]: #135
-#102 := (iff #28 #101)
-#99 := (iff #27 #98)
-#96 := (= #26 #95)
-#93 := (= #25 #92)
-#90 := (= #24 #89)
-#87 := (= #23 #86)
-#88 := [rewrite]: #87
-#84 := (= #22 #83)
-#85 := [rewrite]: #84
-#91 := [monotonicity #85 #88]: #90
-#80 := (iff #20 #79)
-#77 := (iff #19 #76)
-#78 := [rewrite]: #77
-#81 := [monotonicity #78]: #80
-#94 := [monotonicity #81 #91]: #93
-#97 := [monotonicity #94]: #96
-#100 := [monotonicity #97]: #99
-#103 := [quant-intro #100]: #102
-#138 := [trans #103 #136]: #137
-#75 := [asserted]: #28
-#139 := [mp #75 #138]: #134
-#273 := [mp~ #139 #289]: #134
-#325 := [mp #273 #324]: #322
-#356 := [mp #325 #355]: #353
-#850 := [mp #356 #849]: #845
-#680 := (not #845)
-#673 := (or #680 #839)
-#430 := (* -1::int 3::int)
-#515 := (* -1::int 0::int)
-#516 := (div #515 #430)
-#517 := (* -1::int #516)
-#508 := (+ #54 #517)
-#519 := (= #508 0::int)
-#520 := (div 0::int 3::int)
-#448 := (* -1::int #520)
-#521 := (+ #54 #448)
-#518 := (= #521 0::int)
-#522 := (<= 3::int 0::int)
-#501 := (<= 0::int 0::int)
-#836 := (or #501 #522)
-#838 := (not #836)
-#495 := (>= 0::int 0::int)
-#625 := (or #522 #495)
-#832 := (not #625)
-#506 := (or #832 #838)
-#507 := (ite #506 #518 #519)
-#840 := (= 3::int 0::int)
-#841 := (= 0::int 0::int)
-#842 := (or #841 #840)
-#837 := (ite #842 #839 #507)
-#681 := (or #680 #837)
-#683 := (iff #681 #673)
-#685 := (iff #673 #673)
-#778 := [rewrite]: #685
-#677 := (iff #837 #839)
-#1 := true
-#678 := (ite true #839 #839)
-#777 := (iff #678 #839)
-#662 := [rewrite]: #777
-#773 := (iff #837 #678)
-#628 := (iff #507 #839)
-#782 := (ite false #839 #839)
-#668 := (iff #782 #839)
-#669 := [rewrite]: #668
-#785 := (iff #507 #782)
-#783 := (iff #519 #839)
-#780 := (= #508 #54)
-#799 := (+ #54 0::int)
-#796 := (= #799 #54)
-#797 := [rewrite]: #796
-#626 := (= #508 #799)
-#795 := (= #517 0::int)
-#805 := (= #515 0::int)
-#809 := [rewrite]: #805
-#794 := (= #517 #515)
-#787 := (= #516 0::int)
-#645 := -3::int
-#789 := (div 0::int -3::int)
-#792 := (= #789 0::int)
-#786 := [rewrite]: #792
-#790 := (= #516 #789)
-#646 := (= #430 -3::int)
-#647 := [rewrite]: #646
-#791 := [monotonicity #809 #647]: #790
-#793 := [trans #791 #786]: #787
-#788 := [monotonicity #793]: #794
-#624 := [trans #788 #809]: #795
-#627 := [monotonicity #624]: #626
-#781 := [trans #627 #797]: #780
-#784 := [monotonicity #781]: #783
-#798 := (iff #518 #839)
-#802 := (= #521 #54)
-#800 := (= #521 #799)
-#806 := (= #448 0::int)
-#808 := (= #448 #515)
-#529 := (= #520 0::int)
-#807 := [rewrite]: #529
-#523 := [monotonicity #807]: #808
-#810 := [trans #523 #809]: #806
-#801 := [monotonicity #810]: #800
-#803 := [trans #801 #797]: #802
-#804 := [monotonicity #803]: #798
-#527 := (iff #506 false)
-#811 := (or false false)
-#816 := (iff #811 false)
-#526 := [rewrite]: #816
-#815 := (iff #506 #811)
-#536 := (iff #838 false)
-#829 := (not true)
-#830 := (iff #829 false)
-#828 := [rewrite]: #830
-#813 := (iff #838 #829)
-#543 := (iff #836 true)
-#834 := (or true false)
-#478 := (iff #834 true)
-#819 := [rewrite]: #478
-#541 := (iff #836 #834)
-#484 := (iff #522 false)
-#485 := [rewrite]: #484
-#818 := (iff #501 true)
-#540 := [rewrite]: #818
-#542 := [monotonicity #540 #485]: #541
-#436 := [trans #542 #819]: #543
-#814 := [monotonicity #436]: #813
-#537 := [trans #814 #828]: #536
-#831 := (iff #832 false)
-#469 := (iff #832 #829)
-#464 := (iff #625 true)
-#823 := (or false true)
-#820 := (iff #823 true)
-#826 := [rewrite]: #820
-#824 := (iff #625 #823)
-#821 := (iff #495 true)
-#822 := [rewrite]: #821
-#825 := [monotonicity #485 #822]: #824
-#827 := [trans #825 #826]: #464
-#470 := [monotonicity #827]: #469
-#817 := [trans #470 #828]: #831
-#812 := [monotonicity #817 #537]: #815
-#528 := [trans #812 #526]: #527
-#667 := [monotonicity #528 #804 #784]: #785
-#776 := [trans #667 #669]: #628
-#482 := (iff #842 true)
-#494 := (iff #842 #834)
-#493 := (iff #840 false)
-#498 := [rewrite]: #493
-#843 := (iff #841 true)
-#833 := [rewrite]: #843
-#835 := [monotonicity #833 #498]: #494
-#483 := [trans #835 #819]: #482
-#774 := [monotonicity #483 #776]: #773
-#679 := [trans #774 #662]: #677
-#684 := [monotonicity #679]: #683
-#775 := [trans #684 #778]: #683
-#682 := [quant-inst]: #681
-#779 := [mp #682 #775]: #673
-#691 := [unit-resolution #779 #850]: #839
-#692 := [monotonicity #691]: #57
-#58 := (not #57)
-#270 := [asserted]: #58
-[unit-resolution #270 #692]: false
-unsat
-2c035401970833955895c9fd35464fade49dcbf1 313 0
+79a0fde07c4517bfcd8cf389acc12b7fcaddd64c 313 0
 #2 := false
 decl f5 :: (-> int S2)
 #11 := 0::int
@@ -16518,7 +16229,296 @@
 #271 := [asserted]: #59
 [unit-resolution #271 #702]: false
 unsat
-ed1dcbda8b48a8192bb34e0311b0082775d33ed7 302 0
+b6098bbff5fba6e8ac8e634e284360adde41d954 288 0
+#2 := false
+decl f5 :: (-> int S2)
+#11 := 0::int
+#56 := (f5 0::int)
+decl f3 :: (-> int int int)
+#53 := 3::int
+#54 := (f3 0::int 3::int)
+#55 := (f5 #54)
+#57 := (= #55 #56)
+#839 := (= #54 0::int)
+#9 := (:var 0 int)
+#8 := (:var 1 int)
+#10 := (f3 #8 #9)
+#844 := (pattern #10)
+#82 := -1::int
+#86 := (* -1::int #9)
+#83 := (* -1::int #8)
+#89 := (div #83 #86)
+#346 := (* -1::int #89)
+#347 := (+ #10 #346)
+#348 := (= #347 0::int)
+#21 := (div #8 #9)
+#343 := (* -1::int #21)
+#344 := (+ #10 #343)
+#345 := (= #344 0::int)
+#108 := (<= #9 0::int)
+#104 := (<= #8 0::int)
+#301 := (or #104 #108)
+#302 := (not #301)
+#115 := (>= #8 0::int)
+#284 := (or #108 #115)
+#285 := (not #284)
+#308 := (or #285 #302)
+#349 := (ite #308 #345 #348)
+#342 := (= #10 0::int)
+#13 := (= #9 0::int)
+#12 := (= #8 0::int)
+#14 := (or #12 #13)
+#350 := (ite #14 #342 #349)
+#845 := (forall (vars (?v0 int) (?v1 int)) (:pat #844) #350)
+#353 := (forall (vars (?v0 int) (?v1 int)) #350)
+#848 := (iff #353 #845)
+#846 := (iff #350 #350)
+#847 := [refl]: #846
+#849 := [quant-intro #847]: #848
+#313 := (ite #308 #21 #89)
+#316 := (ite #14 0::int #313)
+#319 := (= #10 #316)
+#322 := (forall (vars (?v0 int) (?v1 int)) #319)
+#354 := (iff #322 #353)
+#351 := (iff #319 #350)
+#352 := [rewrite]: #351
+#355 := [quant-intro #352]: #354
+#116 := (not #115)
+#109 := (not #108)
+#119 := (and #109 #116)
+#105 := (not #104)
+#112 := (and #105 #109)
+#122 := (or #112 #119)
+#125 := (ite #122 #21 #89)
+#128 := (ite #14 0::int #125)
+#131 := (= #10 #128)
+#134 := (forall (vars (?v0 int) (?v1 int)) #131)
+#323 := (iff #134 #322)
+#320 := (iff #131 #319)
+#317 := (= #128 #316)
+#314 := (= #125 #313)
+#311 := (iff #122 #308)
+#305 := (or #302 #285)
+#309 := (iff #305 #308)
+#310 := [rewrite]: #309
+#306 := (iff #122 #305)
+#303 := (iff #119 #285)
+#304 := [rewrite]: #303
+#282 := (iff #112 #302)
+#283 := [rewrite]: #282
+#307 := [monotonicity #283 #304]: #306
+#312 := [trans #307 #310]: #311
+#315 := [monotonicity #312]: #314
+#318 := [monotonicity #315]: #317
+#321 := [monotonicity #318]: #320
+#324 := [quant-intro #321]: #323
+#288 := (~ #134 #134)
+#286 := (~ #131 #131)
+#287 := [refl]: #286
+#289 := [nnf-pos #287]: #288
+#23 := (- #9)
+#22 := (- #8)
+#24 := (div #22 #23)
+#16 := (< 0::int #9)
+#18 := (< #8 0::int)
+#19 := (and #18 #16)
+#15 := (< 0::int #8)
+#17 := (and #15 #16)
+#20 := (or #17 #19)
+#25 := (ite #20 #21 #24)
+#26 := (ite #14 0::int #25)
+#27 := (= #10 #26)
+#28 := (forall (vars (?v0 int) (?v1 int)) #27)
+#137 := (iff #28 #134)
+#76 := (and #16 #18)
+#79 := (or #17 #76)
+#92 := (ite #79 #21 #89)
+#95 := (ite #14 0::int #92)
+#98 := (= #10 #95)
+#101 := (forall (vars (?v0 int) (?v1 int)) #98)
+#135 := (iff #101 #134)
+#132 := (iff #98 #131)
+#129 := (= #95 #128)
+#126 := (= #92 #125)
+#123 := (iff #79 #122)
+#120 := (iff #76 #119)
+#117 := (iff #18 #116)
+#118 := [rewrite]: #117
+#110 := (iff #16 #109)
+#111 := [rewrite]: #110
+#121 := [monotonicity #111 #118]: #120
+#113 := (iff #17 #112)
+#106 := (iff #15 #105)
+#107 := [rewrite]: #106
+#114 := [monotonicity #107 #111]: #113
+#124 := [monotonicity #114 #121]: #123
+#127 := [monotonicity #124]: #126
+#130 := [monotonicity #127]: #129
+#133 := [monotonicity #130]: #132
+#136 := [quant-intro #133]: #135
+#102 := (iff #28 #101)
+#99 := (iff #27 #98)
+#96 := (= #26 #95)
+#93 := (= #25 #92)
+#90 := (= #24 #89)
+#87 := (= #23 #86)
+#88 := [rewrite]: #87
+#84 := (= #22 #83)
+#85 := [rewrite]: #84
+#91 := [monotonicity #85 #88]: #90
+#80 := (iff #20 #79)
+#77 := (iff #19 #76)
+#78 := [rewrite]: #77
+#81 := [monotonicity #78]: #80
+#94 := [monotonicity #81 #91]: #93
+#97 := [monotonicity #94]: #96
+#100 := [monotonicity #97]: #99
+#103 := [quant-intro #100]: #102
+#138 := [trans #103 #136]: #137
+#75 := [asserted]: #28
+#139 := [mp #75 #138]: #134
+#273 := [mp~ #139 #289]: #134
+#325 := [mp #273 #324]: #322
+#356 := [mp #325 #355]: #353
+#850 := [mp #356 #849]: #845
+#680 := (not #845)
+#673 := (or #680 #839)
+#430 := (* -1::int 3::int)
+#515 := (* -1::int 0::int)
+#516 := (div #515 #430)
+#517 := (* -1::int #516)
+#508 := (+ #54 #517)
+#519 := (= #508 0::int)
+#520 := (div 0::int 3::int)
+#448 := (* -1::int #520)
+#521 := (+ #54 #448)
+#518 := (= #521 0::int)
+#522 := (<= 3::int 0::int)
+#501 := (<= 0::int 0::int)
+#836 := (or #501 #522)
+#838 := (not #836)
+#495 := (>= 0::int 0::int)
+#625 := (or #522 #495)
+#832 := (not #625)
+#506 := (or #832 #838)
+#507 := (ite #506 #518 #519)
+#840 := (= 3::int 0::int)
+#841 := (= 0::int 0::int)
+#842 := (or #841 #840)
+#837 := (ite #842 #839 #507)
+#681 := (or #680 #837)
+#683 := (iff #681 #673)
+#685 := (iff #673 #673)
+#778 := [rewrite]: #685
+#677 := (iff #837 #839)
+#1 := true
+#678 := (ite true #839 #839)
+#777 := (iff #678 #839)
+#662 := [rewrite]: #777
+#773 := (iff #837 #678)
+#628 := (iff #507 #839)
+#782 := (ite false #839 #839)
+#668 := (iff #782 #839)
+#669 := [rewrite]: #668
+#785 := (iff #507 #782)
+#783 := (iff #519 #839)
+#780 := (= #508 #54)
+#799 := (+ #54 0::int)
+#796 := (= #799 #54)
+#797 := [rewrite]: #796
+#626 := (= #508 #799)
+#795 := (= #517 0::int)
+#805 := (= #515 0::int)
+#809 := [rewrite]: #805
+#794 := (= #517 #515)
+#787 := (= #516 0::int)
+#645 := -3::int
+#789 := (div 0::int -3::int)
+#792 := (= #789 0::int)
+#786 := [rewrite]: #792
+#790 := (= #516 #789)
+#646 := (= #430 -3::int)
+#647 := [rewrite]: #646
+#791 := [monotonicity #809 #647]: #790
+#793 := [trans #791 #786]: #787
+#788 := [monotonicity #793]: #794
+#624 := [trans #788 #809]: #795
+#627 := [monotonicity #624]: #626
+#781 := [trans #627 #797]: #780
+#784 := [monotonicity #781]: #783
+#798 := (iff #518 #839)
+#802 := (= #521 #54)
+#800 := (= #521 #799)
+#806 := (= #448 0::int)
+#808 := (= #448 #515)
+#529 := (= #520 0::int)
+#807 := [rewrite]: #529
+#523 := [monotonicity #807]: #808
+#810 := [trans #523 #809]: #806
+#801 := [monotonicity #810]: #800
+#803 := [trans #801 #797]: #802
+#804 := [monotonicity #803]: #798
+#527 := (iff #506 false)
+#811 := (or false false)
+#816 := (iff #811 false)
+#526 := [rewrite]: #816
+#815 := (iff #506 #811)
+#536 := (iff #838 false)
+#829 := (not true)
+#830 := (iff #829 false)
+#828 := [rewrite]: #830
+#813 := (iff #838 #829)
+#543 := (iff #836 true)
+#834 := (or true false)
+#478 := (iff #834 true)
+#819 := [rewrite]: #478
+#541 := (iff #836 #834)
+#484 := (iff #522 false)
+#485 := [rewrite]: #484
+#818 := (iff #501 true)
+#540 := [rewrite]: #818
+#542 := [monotonicity #540 #485]: #541
+#436 := [trans #542 #819]: #543
+#814 := [monotonicity #436]: #813
+#537 := [trans #814 #828]: #536
+#831 := (iff #832 false)
+#469 := (iff #832 #829)
+#464 := (iff #625 true)
+#823 := (or false true)
+#820 := (iff #823 true)
+#826 := [rewrite]: #820
+#824 := (iff #625 #823)
+#821 := (iff #495 true)
+#822 := [rewrite]: #821
+#825 := [monotonicity #485 #822]: #824
+#827 := [trans #825 #826]: #464
+#470 := [monotonicity #827]: #469
+#817 := [trans #470 #828]: #831
+#812 := [monotonicity #817 #537]: #815
+#528 := [trans #812 #526]: #527
+#667 := [monotonicity #528 #804 #784]: #785
+#776 := [trans #667 #669]: #628
+#482 := (iff #842 true)
+#494 := (iff #842 #834)
+#493 := (iff #840 false)
+#498 := [rewrite]: #493
+#843 := (iff #841 true)
+#833 := [rewrite]: #843
+#835 := [monotonicity #833 #498]: #494
+#483 := [trans #835 #819]: #482
+#774 := [monotonicity #483 #776]: #773
+#679 := [trans #774 #662]: #677
+#684 := [monotonicity #679]: #683
+#775 := [trans #684 #778]: #683
+#682 := [quant-inst]: #681
+#779 := [mp #682 #775]: #673
+#691 := [unit-resolution #779 #850]: #839
+#692 := [monotonicity #691]: #57
+#58 := (not #57)
+#270 := [asserted]: #58
+[unit-resolution #270 #692]: false
+unsat
+86ae6406add6790c99d1c1c3b3a6bf3c60c7e019 302 0
 #2 := false
 decl f5 :: (-> int S2)
 #11 := 0::int
@@ -16821,7 +16821,7 @@
 #271 := [asserted]: #59
 [unit-resolution #271 #702]: false
 unsat
-80ae46a7e9c57ab25c6d7a036d7583b3c508d2eb 447 0
+0aa64721f85c4c9c0df00c84259b25141ea1f07e 447 0
 #2 := false
 #11 := 0::int
 decl f6 :: (-> S2 int)
@@ -17269,7 +17269,7 @@
 #639 := [th-lemma]: #638
 [unit-resolution #639 #637 #636 #660]: false
 unsat
-8f1427496ff61632aac173e792df93e6d2f8fec2 292 0
+a2a1b7b5735fca4ed872e71176348b8f63dcb65b 292 0
 #2 := false
 decl f5 :: (-> int S2)
 #56 := 1::int
@@ -17562,7 +17562,313 @@
 #271 := [asserted]: #59
 [unit-resolution #271 #701]: false
 unsat
-d3447cf6898d788767aea97d325e514adc5f9e24 538 0
+5c15f7e076aa5690517f22531eb4e4a8a733ed8e 305 0
+#2 := false
+decl f5 :: (-> int S2)
+#11 := 0::int
+#56 := (f5 0::int)
+decl f4 :: (-> int int int)
+#53 := 3::int
+#54 := (f4 0::int 3::int)
+#55 := (f5 #54)
+#57 := (= #55 #56)
+#507 := (= #54 0::int)
+#9 := (:var 0 int)
+#8 := (:var 1 int)
+#29 := (f4 #8 #9)
+#851 := (pattern #29)
+#82 := -1::int
+#86 := (* -1::int #9)
+#83 := (* -1::int #8)
+#141 := (mod #83 #86)
+#362 := (+ #29 #141)
+#363 := (= #362 0::int)
+#30 := (mod #8 #9)
+#359 := (* -1::int #30)
+#360 := (+ #29 #359)
+#361 := (= #360 0::int)
+#108 := (<= #9 0::int)
+#104 := (<= #8 0::int)
+#301 := (or #104 #108)
+#302 := (not #301)
+#115 := (>= #8 0::int)
+#284 := (or #108 #115)
+#285 := (not #284)
+#308 := (or #285 #302)
+#364 := (ite #308 #361 #363)
+#358 := (= #29 0::int)
+#12 := (= #8 0::int)
+#365 := (ite #12 #358 #364)
+#357 := (= #8 #29)
+#13 := (= #9 0::int)
+#366 := (ite #13 #357 #365)
+#852 := (forall (vars (?v0 int) (?v1 int)) (:pat #851) #366)
+#369 := (forall (vars (?v0 int) (?v1 int)) #366)
+#855 := (iff #369 #852)
+#853 := (iff #366 #366)
+#854 := [refl]: #853
+#856 := [quant-intro #854]: #855
+#147 := (* -1::int #141)
+#326 := (ite #308 #30 #147)
+#329 := (ite #12 0::int #326)
+#332 := (ite #13 #8 #329)
+#335 := (= #29 #332)
+#338 := (forall (vars (?v0 int) (?v1 int)) #335)
+#370 := (iff #338 #369)
+#367 := (iff #335 #366)
+#368 := [rewrite]: #367
+#371 := [quant-intro #368]: #370
+#116 := (not #115)
+#109 := (not #108)
+#119 := (and #109 #116)
+#105 := (not #104)
+#112 := (and #105 #109)
+#122 := (or #112 #119)
+#167 := (ite #122 #30 #147)
+#170 := (ite #12 0::int #167)
+#173 := (ite #13 #8 #170)
+#176 := (= #29 #173)
+#179 := (forall (vars (?v0 int) (?v1 int)) #176)
+#339 := (iff #179 #338)
+#336 := (iff #176 #335)
+#333 := (= #173 #332)
+#330 := (= #170 #329)
+#327 := (= #167 #326)
+#311 := (iff #122 #308)
+#305 := (or #302 #285)
+#309 := (iff #305 #308)
+#310 := [rewrite]: #309
+#306 := (iff #122 #305)
+#303 := (iff #119 #285)
+#304 := [rewrite]: #303
+#282 := (iff #112 #302)
+#283 := [rewrite]: #282
+#307 := [monotonicity #283 #304]: #306
+#312 := [trans #307 #310]: #311
+#328 := [monotonicity #312]: #327
+#331 := [monotonicity #328]: #330
+#334 := [monotonicity #331]: #333
+#337 := [monotonicity #334]: #336
+#340 := [quant-intro #337]: #339
+#274 := (~ #179 #179)
+#271 := (~ #176 #176)
+#290 := [refl]: #271
+#275 := [nnf-pos #290]: #274
+#23 := (- #9)
+#22 := (- #8)
+#31 := (mod #22 #23)
+#32 := (- #31)
+#16 := (< 0::int #9)
+#18 := (< #8 0::int)
+#19 := (and #18 #16)
+#15 := (< 0::int #8)
+#17 := (and #15 #16)
+#20 := (or #17 #19)
+#33 := (ite #20 #30 #32)
+#34 := (ite #12 0::int #33)
+#35 := (ite #13 #8 #34)
+#36 := (= #29 #35)
+#37 := (forall (vars (?v0 int) (?v1 int)) #36)
+#182 := (iff #37 #179)
+#76 := (and #16 #18)
+#79 := (or #17 #76)
+#152 := (ite #79 #30 #147)
+#155 := (ite #12 0::int #152)
+#158 := (ite #13 #8 #155)
+#161 := (= #29 #158)
+#164 := (forall (vars (?v0 int) (?v1 int)) #161)
+#180 := (iff #164 #179)
+#177 := (iff #161 #176)
+#174 := (= #158 #173)
+#171 := (= #155 #170)
+#168 := (= #152 #167)
+#123 := (iff #79 #122)
+#120 := (iff #76 #119)
+#117 := (iff #18 #116)
+#118 := [rewrite]: #117
+#110 := (iff #16 #109)
+#111 := [rewrite]: #110
+#121 := [monotonicity #111 #118]: #120
+#113 := (iff #17 #112)
+#106 := (iff #15 #105)
+#107 := [rewrite]: #106
+#114 := [monotonicity #107 #111]: #113
+#124 := [monotonicity #114 #121]: #123
+#169 := [monotonicity #124]: #168
+#172 := [monotonicity #169]: #171
+#175 := [monotonicity #172]: #174
+#178 := [monotonicity #175]: #177
+#181 := [quant-intro #178]: #180
+#165 := (iff #37 #164)
+#162 := (iff #36 #161)
+#159 := (= #35 #158)
+#156 := (= #34 #155)
+#153 := (= #33 #152)
+#150 := (= #32 #147)
+#144 := (- #141)
+#148 := (= #144 #147)
+#149 := [rewrite]: #148
+#145 := (= #32 #144)
+#142 := (= #31 #141)
+#87 := (= #23 #86)
+#88 := [rewrite]: #87
+#84 := (= #22 #83)
+#85 := [rewrite]: #84
+#143 := [monotonicity #85 #88]: #142
+#146 := [monotonicity #143]: #145
+#151 := [trans #146 #149]: #150
+#80 := (iff #20 #79)
+#77 := (iff #19 #76)
+#78 := [rewrite]: #77
+#81 := [monotonicity #78]: #80
+#154 := [monotonicity #81 #151]: #153
+#157 := [monotonicity #154]: #156
+#160 := [monotonicity #157]: #159
+#163 := [monotonicity #160]: #162
+#166 := [quant-intro #163]: #165
+#183 := [trans #166 #181]: #182
+#140 := [asserted]: #37
+#184 := [mp #140 #183]: #179
+#291 := [mp~ #184 #275]: #179
+#341 := [mp #291 #340]: #338
+#372 := [mp #341 #371]: #369
+#857 := [mp #372 #856]: #852
+#677 := (not #852)
+#679 := (or #677 #507)
+#430 := (* -1::int 3::int)
+#515 := (* -1::int 0::int)
+#516 := (mod #515 #430)
+#517 := (+ #54 #516)
+#508 := (= #517 0::int)
+#519 := (mod 0::int 3::int)
+#520 := (* -1::int #519)
+#448 := (+ #54 #520)
+#521 := (= #448 0::int)
+#518 := (<= 3::int 0::int)
+#522 := (<= 0::int 0::int)
+#501 := (or #522 #518)
+#836 := (not #501)
+#838 := (>= 0::int 0::int)
+#495 := (or #518 #838)
+#625 := (not #495)
+#832 := (or #625 #836)
+#506 := (ite #832 #521 #508)
+#839 := (= 0::int 0::int)
+#840 := (ite #839 #507 #506)
+#841 := (= 0::int #54)
+#842 := (= 3::int 0::int)
+#837 := (ite #842 #841 #840)
+#680 := (or #677 #837)
+#681 := (iff #680 #679)
+#683 := (iff #679 #679)
+#684 := [rewrite]: #683
+#777 := (iff #837 #507)
+#626 := (ite false #507 #507)
+#781 := (iff #626 #507)
+#783 := [rewrite]: #781
+#773 := (iff #837 #626)
+#776 := (iff #840 #507)
+#1 := true
+#785 := (ite true #507 #507)
+#669 := (iff #785 #507)
+#628 := [rewrite]: #669
+#667 := (iff #840 #785)
+#784 := (iff #506 #507)
+#627 := (iff #506 #626)
+#795 := (iff #508 #507)
+#794 := (= #517 #54)
+#806 := (+ #54 0::int)
+#800 := (= #806 #54)
+#801 := [rewrite]: #800
+#787 := (= #517 #806)
+#792 := (= #516 0::int)
+#798 := -3::int
+#646 := (mod 0::int -3::int)
+#790 := (= #646 0::int)
+#791 := [rewrite]: #790
+#647 := (= #516 #646)
+#804 := (= #430 -3::int)
+#645 := [rewrite]: #804
+#808 := (= #515 0::int)
+#523 := [rewrite]: #808
+#789 := [monotonicity #523 #645]: #647
+#786 := [trans #789 #791]: #792
+#793 := [monotonicity #786]: #787
+#788 := [trans #793 #801]: #794
+#624 := [monotonicity #788]: #795
+#802 := (iff #521 #507)
+#796 := (= #448 #54)
+#810 := (= #448 #806)
+#805 := (= #520 0::int)
+#529 := (= #520 #515)
+#527 := (= #519 0::int)
+#528 := [rewrite]: #527
+#807 := [monotonicity #528]: #529
+#809 := [trans #807 #523]: #805
+#799 := [monotonicity #809]: #810
+#797 := [trans #799 #801]: #796
+#803 := [monotonicity #797]: #802
+#816 := (iff #832 false)
+#536 := (or false false)
+#815 := (iff #536 false)
+#812 := [rewrite]: #815
+#537 := (iff #832 #536)
+#813 := (iff #836 false)
+#825 := (not true)
+#464 := (iff #825 false)
+#827 := [rewrite]: #464
+#543 := (iff #836 #825)
+#541 := (iff #501 true)
+#828 := (or true false)
+#818 := (iff #828 true)
+#540 := [rewrite]: #818
+#831 := (iff #501 #828)
+#835 := (iff #518 false)
+#478 := [rewrite]: #835
+#470 := (iff #522 true)
+#830 := [rewrite]: #470
+#817 := [monotonicity #830 #478]: #831
+#542 := [trans #817 #540]: #541
+#436 := [monotonicity #542]: #543
+#814 := [trans #436 #827]: #813
+#829 := (iff #625 false)
+#820 := (iff #625 #825)
+#823 := (iff #495 true)
+#483 := (or false true)
+#821 := (iff #483 true)
+#822 := [rewrite]: #821
+#484 := (iff #495 #483)
+#819 := (iff #838 true)
+#482 := [rewrite]: #819
+#485 := [monotonicity #478 #482]: #484
+#824 := [trans #485 #822]: #823
+#826 := [monotonicity #824]: #820
+#469 := [trans #826 #827]: #829
+#811 := [monotonicity #469 #814]: #537
+#526 := [trans #811 #812]: #816
+#780 := [monotonicity #526 #803 #624]: #627
+#782 := [trans #780 #783]: #784
+#834 := (iff #839 true)
+#494 := [rewrite]: #834
+#668 := [monotonicity #494 #782]: #667
+#678 := [trans #668 #628]: #776
+#493 := (iff #841 #507)
+#498 := [rewrite]: #493
+#843 := (iff #842 false)
+#833 := [rewrite]: #843
+#774 := [monotonicity #833 #498 #678]: #773
+#662 := [trans #774 #783]: #777
+#682 := [monotonicity #662]: #681
+#685 := [trans #682 #684]: #681
+#673 := [quant-inst]: #680
+#778 := [mp #673 #685]: #679
+#713 := [unit-resolution #778 #857]: #507
+#709 := [monotonicity #713]: #57
+#58 := (not #57)
+#270 := [asserted]: #58
+[unit-resolution #270 #709]: false
+unsat
+8c2d3e4568510c293138be5f353975b23e5bdc6e 538 0
 #2 := false
 #11 := 0::int
 decl f6 :: (-> S2 int)
@@ -18101,98 +18407,99 @@
 #593 := [trans #591 #608]: #781
 [unit-resolution #661 #593]: false
 unsat
-124e92a80da0b0c9c6ea2fb487ed064cc0c65420 305 0
+6dd67c9a5af172ae1a01724c38372069dc3347ac 328 0
 #2 := false
 decl f5 :: (-> int S2)
-#11 := 0::int
-#56 := (f5 0::int)
+#53 := 1::int
+#57 := (f5 1::int)
 decl f4 :: (-> int int int)
-#53 := 3::int
-#54 := (f4 0::int 3::int)
-#55 := (f5 #54)
-#57 := (= #55 #56)
-#507 := (= #54 0::int)
+#54 := 3::int
+#55 := (f4 1::int 3::int)
+#56 := (f5 #55)
+#58 := (= #56 #57)
+#834 := (= #55 1::int)
 #9 := (:var 0 int)
 #8 := (:var 1 int)
 #29 := (f4 #8 #9)
 #851 := (pattern #29)
-#82 := -1::int
-#86 := (* -1::int #9)
-#83 := (* -1::int #8)
-#141 := (mod #83 #86)
-#362 := (+ #29 #141)
-#363 := (= #362 0::int)
+#11 := 0::int
+#83 := -1::int
+#87 := (* -1::int #9)
+#84 := (* -1::int #8)
+#142 := (mod #84 #87)
+#363 := (+ #29 #142)
+#364 := (= #363 0::int)
 #30 := (mod #8 #9)
-#359 := (* -1::int #30)
-#360 := (+ #29 #359)
-#361 := (= #360 0::int)
-#108 := (<= #9 0::int)
-#104 := (<= #8 0::int)
-#301 := (or #104 #108)
-#302 := (not #301)
-#115 := (>= #8 0::int)
-#284 := (or #108 #115)
-#285 := (not #284)
-#308 := (or #285 #302)
-#364 := (ite #308 #361 #363)
-#358 := (= #29 0::int)
-#12 := (= #8 0::int)
-#365 := (ite #12 #358 #364)
-#357 := (= #8 #29)
-#13 := (= #9 0::int)
-#366 := (ite #13 #357 #365)
-#852 := (forall (vars (?v0 int) (?v1 int)) (:pat #851) #366)
-#369 := (forall (vars (?v0 int) (?v1 int)) #366)
-#855 := (iff #369 #852)
-#853 := (iff #366 #366)
+#360 := (* -1::int #30)
+#361 := (+ #29 #360)
+#362 := (= #361 0::int)
+#109 := (<= #9 0::int)
+#105 := (<= #8 0::int)
+#302 := (or #105 #109)
+#303 := (not #302)
+#116 := (>= #8 0::int)
+#285 := (or #109 #116)
+#286 := (not #285)
+#309 := (or #286 #303)
+#365 := (ite #309 #362 #364)
+#359 := (= #29 0::int)
+#12 := (= #8 0::int)
+#366 := (ite #12 #359 #365)
+#358 := (= #8 #29)
+#13 := (= #9 0::int)
+#367 := (ite #13 #358 #366)
+#852 := (forall (vars (?v0 int) (?v1 int)) (:pat #851) #367)
+#370 := (forall (vars (?v0 int) (?v1 int)) #367)
+#855 := (iff #370 #852)
+#853 := (iff #367 #367)
 #854 := [refl]: #853
 #856 := [quant-intro #854]: #855
-#147 := (* -1::int #141)
-#326 := (ite #308 #30 #147)
-#329 := (ite #12 0::int #326)
-#332 := (ite #13 #8 #329)
-#335 := (= #29 #332)
-#338 := (forall (vars (?v0 int) (?v1 int)) #335)
-#370 := (iff #338 #369)
-#367 := (iff #335 #366)
-#368 := [rewrite]: #367
-#371 := [quant-intro #368]: #370
-#116 := (not #115)
-#109 := (not #108)
-#119 := (and #109 #116)
-#105 := (not #104)
-#112 := (and #105 #109)
-#122 := (or #112 #119)
-#167 := (ite #122 #30 #147)
-#170 := (ite #12 0::int #167)
-#173 := (ite #13 #8 #170)
-#176 := (= #29 #173)
-#179 := (forall (vars (?v0 int) (?v1 int)) #176)
-#339 := (iff #179 #338)
-#336 := (iff #176 #335)
-#333 := (= #173 #332)
-#330 := (= #170 #329)
-#327 := (= #167 #326)
-#311 := (iff #122 #308)
-#305 := (or #302 #285)
-#309 := (iff #305 #308)
-#310 := [rewrite]: #309
-#306 := (iff #122 #305)
-#303 := (iff #119 #285)
-#304 := [rewrite]: #303
-#282 := (iff #112 #302)
-#283 := [rewrite]: #282
-#307 := [monotonicity #283 #304]: #306
-#312 := [trans #307 #310]: #311
-#328 := [monotonicity #312]: #327
-#331 := [monotonicity #328]: #330
-#334 := [monotonicity #331]: #333
-#337 := [monotonicity #334]: #336
-#340 := [quant-intro #337]: #339
-#274 := (~ #179 #179)
-#271 := (~ #176 #176)
-#290 := [refl]: #271
-#275 := [nnf-pos #290]: #274
+#148 := (* -1::int #142)
+#327 := (ite #309 #30 #148)
+#330 := (ite #12 0::int #327)
+#333 := (ite #13 #8 #330)
+#336 := (= #29 #333)
+#339 := (forall (vars (?v0 int) (?v1 int)) #336)
+#371 := (iff #339 #370)
+#368 := (iff #336 #367)
+#369 := [rewrite]: #368
+#372 := [quant-intro #369]: #371
+#117 := (not #116)
+#110 := (not #109)
+#120 := (and #110 #117)
+#106 := (not #105)
+#113 := (and #106 #110)
+#123 := (or #113 #120)
+#168 := (ite #123 #30 #148)
+#171 := (ite #12 0::int #168)
+#174 := (ite #13 #8 #171)
+#177 := (= #29 #174)
+#180 := (forall (vars (?v0 int) (?v1 int)) #177)
+#340 := (iff #180 #339)
+#337 := (iff #177 #336)
+#334 := (= #174 #333)
+#331 := (= #171 #330)
+#328 := (= #168 #327)
+#312 := (iff #123 #309)
+#306 := (or #303 #286)
+#310 := (iff #306 #309)
+#311 := [rewrite]: #310
+#307 := (iff #123 #306)
+#304 := (iff #120 #286)
+#305 := [rewrite]: #304
+#283 := (iff #113 #303)
+#284 := [rewrite]: #283
+#308 := [monotonicity #284 #305]: #307
+#313 := [trans #308 #311]: #312
+#329 := [monotonicity #313]: #328
+#332 := [monotonicity #329]: #331
+#335 := [monotonicity #332]: #334
+#338 := [monotonicity #335]: #337
+#341 := [quant-intro #338]: #340
+#275 := (~ #180 #180)
+#272 := (~ #177 #177)
+#291 := [refl]: #272
+#276 := [nnf-pos #291]: #275
 #23 := (- #9)
 #22 := (- #8)
 #31 := (mod #22 #23)
@@ -18208,206 +18515,228 @@
 #35 := (ite #13 #8 #34)
 #36 := (= #29 #35)
 #37 := (forall (vars (?v0 int) (?v1 int)) #36)
-#182 := (iff #37 #179)
-#76 := (and #16 #18)
-#79 := (or #17 #76)
-#152 := (ite #79 #30 #147)
-#155 := (ite #12 0::int #152)
-#158 := (ite #13 #8 #155)
-#161 := (= #29 #158)
-#164 := (forall (vars (?v0 int) (?v1 int)) #161)
-#180 := (iff #164 #179)
-#177 := (iff #161 #176)
-#174 := (= #158 #173)
-#171 := (= #155 #170)
-#168 := (= #152 #167)
-#123 := (iff #79 #122)
-#120 := (iff #76 #119)
-#117 := (iff #18 #116)
-#118 := [rewrite]: #117
-#110 := (iff #16 #109)
-#111 := [rewrite]: #110
-#121 := [monotonicity #111 #118]: #120
-#113 := (iff #17 #112)
-#106 := (iff #15 #105)
-#107 := [rewrite]: #106
-#114 := [monotonicity #107 #111]: #113
-#124 := [monotonicity #114 #121]: #123
-#169 := [monotonicity #124]: #168
-#172 := [monotonicity #169]: #171
-#175 := [monotonicity #172]: #174
-#178 := [monotonicity #175]: #177
-#181 := [quant-intro #178]: #180
-#165 := (iff #37 #164)
-#162 := (iff #36 #161)
-#159 := (= #35 #158)
-#156 := (= #34 #155)
-#153 := (= #33 #152)
-#150 := (= #32 #147)
-#144 := (- #141)
-#148 := (= #144 #147)
-#149 := [rewrite]: #148
-#145 := (= #32 #144)
-#142 := (= #31 #141)
-#87 := (= #23 #86)
-#88 := [rewrite]: #87
-#84 := (= #22 #83)
-#85 := [rewrite]: #84
-#143 := [monotonicity #85 #88]: #142
-#146 := [monotonicity #143]: #145
-#151 := [trans #146 #149]: #150
-#80 := (iff #20 #79)
-#77 := (iff #19 #76)
-#78 := [rewrite]: #77
-#81 := [monotonicity #78]: #80
-#154 := [monotonicity #81 #151]: #153
-#157 := [monotonicity #154]: #156
-#160 := [monotonicity #157]: #159
-#163 := [monotonicity #160]: #162
-#166 := [quant-intro #163]: #165
-#183 := [trans #166 #181]: #182
-#140 := [asserted]: #37
-#184 := [mp #140 #183]: #179
-#291 := [mp~ #184 #275]: #179
-#341 := [mp #291 #340]: #338
-#372 := [mp #341 #371]: #369
-#857 := [mp #372 #856]: #852
-#677 := (not #852)
-#679 := (or #677 #507)
-#430 := (* -1::int 3::int)
-#515 := (* -1::int 0::int)
-#516 := (mod #515 #430)
-#517 := (+ #54 #516)
+#183 := (iff #37 #180)
+#77 := (and #16 #18)
+#80 := (or #17 #77)
+#153 := (ite #80 #30 #148)
+#156 := (ite #12 0::int #153)
+#159 := (ite #13 #8 #156)
+#162 := (= #29 #159)
+#165 := (forall (vars (?v0 int) (?v1 int)) #162)
+#181 := (iff #165 #180)
+#178 := (iff #162 #177)
+#175 := (= #159 #174)
+#172 := (= #156 #171)
+#169 := (= #153 #168)
+#124 := (iff #80 #123)
+#121 := (iff #77 #120)
+#118 := (iff #18 #117)
+#119 := [rewrite]: #118
+#111 := (iff #16 #110)
+#112 := [rewrite]: #111
+#122 := [monotonicity #112 #119]: #121
+#114 := (iff #17 #113)
+#107 := (iff #15 #106)
+#108 := [rewrite]: #107
+#115 := [monotonicity #108 #112]: #114
+#125 := [monotonicity #115 #122]: #124
+#170 := [monotonicity #125]: #169
+#173 := [monotonicity #170]: #172
+#176 := [monotonicity #173]: #175
+#179 := [monotonicity #176]: #178
+#182 := [quant-intro #179]: #181
+#166 := (iff #37 #165)
+#163 := (iff #36 #162)
+#160 := (= #35 #159)
+#157 := (= #34 #156)
+#154 := (= #33 #153)
+#151 := (= #32 #148)
+#145 := (- #142)
+#149 := (= #145 #148)
+#150 := [rewrite]: #149
+#146 := (= #32 #145)
+#143 := (= #31 #142)
+#88 := (= #23 #87)
+#89 := [rewrite]: #88
+#85 := (= #22 #84)
+#86 := [rewrite]: #85
+#144 := [monotonicity #86 #89]: #143
+#147 := [monotonicity #144]: #146
+#152 := [trans #147 #150]: #151
+#81 := (iff #20 #80)
+#78 := (iff #19 #77)
+#79 := [rewrite]: #78
+#82 := [monotonicity #79]: #81
+#155 := [monotonicity #82 #152]: #154
+#158 := [monotonicity #155]: #157
+#161 := [monotonicity #158]: #160
+#164 := [monotonicity #161]: #163
+#167 := [quant-intro #164]: #166
+#184 := [trans #167 #182]: #183
+#141 := [asserted]: #37
+#185 := [mp #141 #184]: #180
+#292 := [mp~ #185 #276]: #180
+#342 := [mp #292 #341]: #339
+#373 := [mp #342 #372]: #370
+#857 := [mp #373 #856]: #852
+#762 := (not #852)
+#763 := (or #762 #834)
+#431 := (* -1::int 3::int)
+#515 := (* -1::int 1::int)
+#516 := (mod #515 #431)
+#517 := (+ #55 #516)
 #508 := (= #517 0::int)
-#519 := (mod 0::int 3::int)
+#519 := (mod 1::int 3::int)
 #520 := (* -1::int #519)
-#448 := (+ #54 #520)
-#521 := (= #448 0::int)
-#518 := (<= 3::int 0::int)
-#522 := (<= 0::int 0::int)
-#501 := (or #522 #518)
-#836 := (not #501)
-#838 := (>= 0::int 0::int)
-#495 := (or #518 #838)
-#625 := (not #495)
-#832 := (or #625 #836)
-#506 := (ite #832 #521 #508)
-#839 := (= 0::int 0::int)
-#840 := (ite #839 #507 #506)
-#841 := (= 0::int #54)
-#842 := (= 3::int 0::int)
-#837 := (ite #842 #841 #840)
-#680 := (or #677 #837)
-#681 := (iff #680 #679)
-#683 := (iff #679 #679)
-#684 := [rewrite]: #683
-#777 := (iff #837 #507)
-#626 := (ite false #507 #507)
-#781 := (iff #626 #507)
-#783 := [rewrite]: #781
-#773 := (iff #837 #626)
-#776 := (iff #840 #507)
-#1 := true
-#785 := (ite true #507 #507)
-#669 := (iff #785 #507)
-#628 := [rewrite]: #669
-#667 := (iff #840 #785)
-#784 := (iff #506 #507)
-#627 := (iff #506 #626)
-#795 := (iff #508 #507)
-#794 := (= #517 #54)
-#806 := (+ #54 0::int)
-#800 := (= #806 #54)
-#801 := [rewrite]: #800
-#787 := (= #517 #806)
-#792 := (= #516 0::int)
-#798 := -3::int
-#646 := (mod 0::int -3::int)
-#790 := (= #646 0::int)
-#791 := [rewrite]: #790
-#647 := (= #516 #646)
-#804 := (= #430 -3::int)
-#645 := [rewrite]: #804
-#808 := (= #515 0::int)
-#523 := [rewrite]: #808
-#789 := [monotonicity #523 #645]: #647
-#786 := [trans #789 #791]: #792
-#793 := [monotonicity #786]: #787
-#788 := [trans #793 #801]: #794
-#624 := [monotonicity #788]: #795
-#802 := (iff #521 #507)
-#796 := (= #448 #54)
-#810 := (= #448 #806)
-#805 := (= #520 0::int)
-#529 := (= #520 #515)
-#527 := (= #519 0::int)
-#528 := [rewrite]: #527
-#807 := [monotonicity #528]: #529
-#809 := [trans #807 #523]: #805
-#799 := [monotonicity #809]: #810
-#797 := [trans #799 #801]: #796
-#803 := [monotonicity #797]: #802
-#816 := (iff #832 false)
-#536 := (or false false)
-#815 := (iff #536 false)
-#812 := [rewrite]: #815
-#537 := (iff #832 #536)
-#813 := (iff #836 false)
-#825 := (not true)
-#464 := (iff #825 false)
-#827 := [rewrite]: #464
-#543 := (iff #836 #825)
-#541 := (iff #501 true)
-#828 := (or true false)
-#818 := (iff #828 true)
-#540 := [rewrite]: #818
-#831 := (iff #501 #828)
-#835 := (iff #518 false)
+#521 := (+ #55 #520)
+#518 := (= #521 0::int)
+#522 := (<= 3::int 0::int)
+#501 := (<= 1::int 0::int)
+#836 := (or #501 #522)
+#838 := (not #836)
+#495 := (>= 1::int 0::int)
+#625 := (or #522 #495)
+#832 := (not #625)
+#506 := (or #832 #838)
+#507 := (ite #506 #518 #508)
+#839 := (= #55 0::int)
+#840 := (= 1::int 0::int)
+#841 := (ite #840 #839 #507)
+#842 := (= 1::int #55)
+#837 := (= 3::int 0::int)
+#843 := (ite #837 #842 #841)
+#764 := (or #762 #843)
+#765 := (iff #764 #763)
+#750 := (iff #763 #763)
+#752 := [rewrite]: #750
+#772 := (iff #843 #834)
+#759 := (ite false #834 #834)
+#771 := (iff #759 #834)
+#767 := [rewrite]: #771
+#769 := (iff #843 #759)
+#760 := (iff #841 #834)
+#778 := (ite false #839 #834)
+#766 := (iff #778 #834)
+#768 := [rewrite]: #766
+#775 := (iff #841 #778)
+#684 := (iff #507 #834)
+#773 := -2::int
+#774 := (= #55 -2::int)
+#1 := true
+#680 := (ite true #834 #774)
+#682 := (iff #680 #834)
+#683 := [rewrite]: #682
+#673 := (iff #507 #680)
+#677 := (iff #508 #774)
+#795 := 2::int
+#782 := (+ 2::int #55)
+#628 := (= #782 0::int)
+#777 := (iff #628 #774)
+#662 := [rewrite]: #777
+#776 := (iff #508 #628)
+#668 := (= #517 #782)
+#781 := (+ #55 2::int)
+#785 := (= #781 #782)
+#667 := [rewrite]: #785
+#783 := (= #517 #781)
+#627 := (= #516 2::int)
+#792 := -3::int
+#793 := (mod -1::int -3::int)
+#624 := (= #793 2::int)
+#626 := [rewrite]: #624
+#794 := (= #516 #793)
+#786 := (= #431 -3::int)
+#787 := [rewrite]: #786
+#805 := (= #515 -1::int)
+#809 := [rewrite]: #805
+#788 := [monotonicity #809 #787]: #794
+#780 := [trans #788 #626]: #627
+#784 := [monotonicity #780]: #783
+#669 := [trans #784 #667]: #668
+#678 := [monotonicity #669]: #776
+#679 := [trans #678 #662]: #677
+#790 := (iff #518 #834)
+#796 := (+ -1::int #55)
+#804 := (= #796 0::int)
+#647 := (iff #804 #834)
+#789 := [rewrite]: #647
+#645 := (iff #518 #804)
+#803 := (= #521 #796)
+#799 := (+ #55 -1::int)
+#797 := (= #799 #796)
+#802 := [rewrite]: #797
+#800 := (= #521 #799)
+#806 := (= #520 -1::int)
+#808 := (= #520 #515)
+#529 := (= #519 1::int)
+#807 := [rewrite]: #529
+#523 := [monotonicity #807]: #808
+#810 := [trans #523 #809]: #806
+#801 := [monotonicity #810]: #800
+#798 := [trans #801 #802]: #803
+#646 := [monotonicity #798]: #645
+#791 := [trans #646 #789]: #790
+#527 := (iff #506 true)
+#485 := (or false true)
+#823 := (iff #485 true)
+#824 := [rewrite]: #823
+#816 := (iff #506 #485)
+#815 := (iff #838 true)
+#813 := (not false)
+#537 := (iff #813 true)
+#811 := [rewrite]: #537
+#814 := (iff #838 #813)
+#543 := (iff #836 false)
+#817 := (or false false)
+#541 := (iff #817 false)
+#542 := [rewrite]: #541
+#818 := (iff #836 #817)
+#819 := (iff #522 false)
+#482 := [rewrite]: #819
+#828 := (iff #501 false)
+#831 := [rewrite]: #828
+#540 := [monotonicity #831 #482]: #818
+#437 := [trans #540 #542]: #543
+#536 := [monotonicity #437]: #814
+#812 := [trans #536 #811]: #815
+#470 := (iff #832 false)
+#826 := (not true)
+#829 := (iff #826 false)
+#469 := [rewrite]: #829
+#464 := (iff #832 #826)
+#825 := (iff #625 true)
+#821 := (iff #625 #485)
+#483 := (iff #495 true)
+#484 := [rewrite]: #483
+#822 := [monotonicity #482 #484]: #821
+#820 := [trans #822 #824]: #825
+#827 := [monotonicity #820]: #464
+#830 := [trans #827 #469]: #470
+#526 := [monotonicity #830 #812]: #816
+#528 := [trans #526 #824]: #527
+#681 := [monotonicity #528 #791 #679]: #673
+#685 := [trans #681 #683]: #684
+#835 := (iff #840 false)
 #478 := [rewrite]: #835
-#470 := (iff #522 true)
-#830 := [rewrite]: #470
-#817 := [monotonicity #830 #478]: #831
-#542 := [trans #817 #540]: #541
-#436 := [monotonicity #542]: #543
-#814 := [trans #436 #827]: #813
-#829 := (iff #625 false)
-#820 := (iff #625 #825)
-#823 := (iff #495 true)
-#483 := (or false true)
-#821 := (iff #483 true)
-#822 := [rewrite]: #821
-#484 := (iff #495 #483)
-#819 := (iff #838 true)
-#482 := [rewrite]: #819
-#485 := [monotonicity #478 #482]: #484
-#824 := [trans #485 #822]: #823
-#826 := [monotonicity #824]: #820
-#469 := [trans #826 #827]: #829
-#811 := [monotonicity #469 #814]: #537
-#526 := [trans #811 #812]: #816
-#780 := [monotonicity #526 #803 #624]: #627
-#782 := [trans #780 #783]: #784
-#834 := (iff #839 true)
-#494 := [rewrite]: #834
-#668 := [monotonicity #494 #782]: #667
-#678 := [trans #668 #628]: #776
-#493 := (iff #841 #507)
-#498 := [rewrite]: #493
-#843 := (iff #842 false)
-#833 := [rewrite]: #843
-#774 := [monotonicity #833 #498 #678]: #773
-#662 := [trans #774 #783]: #777
-#682 := [monotonicity #662]: #681
-#685 := [trans #682 #684]: #681
-#673 := [quant-inst]: #680
-#778 := [mp #673 #685]: #679
-#713 := [unit-resolution #778 #857]: #507
-#709 := [monotonicity #713]: #57
-#58 := (not #57)
-#270 := [asserted]: #58
-[unit-resolution #270 #709]: false
-unsat
-b68469389563a7c2adfa58d6c3a299893ac9030d 605 0
+#779 := [monotonicity #478 #685]: #775
+#757 := [trans #779 #768]: #760
+#498 := (iff #842 #834)
+#494 := [rewrite]: #498
+#833 := (iff #837 false)
+#493 := [rewrite]: #833
+#770 := [monotonicity #493 #494 #757]: #769
+#761 := [trans #770 #767]: #772
+#749 := [monotonicity #761]: #765
+#753 := [trans #749 #752]: #765
+#758 := [quant-inst]: #764
+#754 := [mp #758 #753]: #763
+#703 := [unit-resolution #754 #857]: #834
+#708 := [monotonicity #703]: #58
+#59 := (not #58)
+#271 := [asserted]: #59
+[unit-resolution #271 #708]: false
+unsat
+d632f2ce3ea3569341b3f434b727f0c2aca7fff1 605 0
 #2 := false
 decl f5 :: (-> int S2)
 #11 := 0::int
@@ -19013,99 +19342,98 @@
 #603 := [unit-resolution #535 #671]: #61
 [unit-resolution #603 #596]: false
 unsat
-48fbc21a65dea108392ceeedb3a0cbae0d536aab 328 0
+35e52a261c60456fe5328f3a2bc282a72801535d 303 0
 #2 := false
 decl f5 :: (-> int S2)
-#53 := 1::int
-#57 := (f5 1::int)
+#11 := 0::int
+#56 := (f5 0::int)
 decl f4 :: (-> int int int)
-#54 := 3::int
-#55 := (f4 1::int 3::int)
-#56 := (f5 #55)
-#58 := (= #56 #57)
-#834 := (= #55 1::int)
+#53 := 3::int
+#54 := (f4 3::int 3::int)
+#55 := (f5 #54)
+#57 := (= #55 #56)
+#832 := (= #54 0::int)
 #9 := (:var 0 int)
 #8 := (:var 1 int)
 #29 := (f4 #8 #9)
 #851 := (pattern #29)
-#11 := 0::int
-#83 := -1::int
-#87 := (* -1::int #9)
-#84 := (* -1::int #8)
-#142 := (mod #84 #87)
-#363 := (+ #29 #142)
-#364 := (= #363 0::int)
+#82 := -1::int
+#86 := (* -1::int #9)
+#83 := (* -1::int #8)
+#141 := (mod #83 #86)
+#362 := (+ #29 #141)
+#363 := (= #362 0::int)
 #30 := (mod #8 #9)
-#360 := (* -1::int #30)
-#361 := (+ #29 #360)
-#362 := (= #361 0::int)
-#109 := (<= #9 0::int)
-#105 := (<= #8 0::int)
-#302 := (or #105 #109)
-#303 := (not #302)
-#116 := (>= #8 0::int)
-#285 := (or #109 #116)
-#286 := (not #285)
-#309 := (or #286 #303)
-#365 := (ite #309 #362 #364)
-#359 := (= #29 0::int)
-#12 := (= #8 0::int)
-#366 := (ite #12 #359 #365)
-#358 := (= #8 #29)
-#13 := (= #9 0::int)
-#367 := (ite #13 #358 #366)
-#852 := (forall (vars (?v0 int) (?v1 int)) (:pat #851) #367)
-#370 := (forall (vars (?v0 int) (?v1 int)) #367)
-#855 := (iff #370 #852)
-#853 := (iff #367 #367)
+#359 := (* -1::int #30)
+#360 := (+ #29 #359)
+#361 := (= #360 0::int)
+#108 := (<= #9 0::int)
+#104 := (<= #8 0::int)
+#301 := (or #104 #108)
+#302 := (not #301)
+#115 := (>= #8 0::int)
+#284 := (or #108 #115)
+#285 := (not #284)
+#308 := (or #285 #302)
+#364 := (ite #308 #361 #363)
+#358 := (= #29 0::int)
+#12 := (= #8 0::int)
+#365 := (ite #12 #358 #364)
+#357 := (= #8 #29)
+#13 := (= #9 0::int)
+#366 := (ite #13 #357 #365)
+#852 := (forall (vars (?v0 int) (?v1 int)) (:pat #851) #366)
+#369 := (forall (vars (?v0 int) (?v1 int)) #366)
+#855 := (iff #369 #852)
+#853 := (iff #366 #366)
 #854 := [refl]: #853
 #856 := [quant-intro #854]: #855
-#148 := (* -1::int #142)
-#327 := (ite #309 #30 #148)
-#330 := (ite #12 0::int #327)
-#333 := (ite #13 #8 #330)
-#336 := (= #29 #333)
-#339 := (forall (vars (?v0 int) (?v1 int)) #336)
-#371 := (iff #339 #370)
-#368 := (iff #336 #367)
-#369 := [rewrite]: #368
-#372 := [quant-intro #369]: #371
-#117 := (not #116)
-#110 := (not #109)
-#120 := (and #110 #117)
-#106 := (not #105)
-#113 := (and #106 #110)
-#123 := (or #113 #120)
-#168 := (ite #123 #30 #148)
-#171 := (ite #12 0::int #168)
-#174 := (ite #13 #8 #171)
-#177 := (= #29 #174)
-#180 := (forall (vars (?v0 int) (?v1 int)) #177)
-#340 := (iff #180 #339)
-#337 := (iff #177 #336)
-#334 := (= #174 #333)
-#331 := (= #171 #330)
-#328 := (= #168 #327)
-#312 := (iff #123 #309)
-#306 := (or #303 #286)
-#310 := (iff #306 #309)
-#311 := [rewrite]: #310
-#307 := (iff #123 #306)
-#304 := (iff #120 #286)
-#305 := [rewrite]: #304
-#283 := (iff #113 #303)
-#284 := [rewrite]: #283
-#308 := [monotonicity #284 #305]: #307
-#313 := [trans #308 #311]: #312
-#329 := [monotonicity #313]: #328
-#332 := [monotonicity #329]: #331
-#335 := [monotonicity #332]: #334
-#338 := [monotonicity #335]: #337
-#341 := [quant-intro #338]: #340
-#275 := (~ #180 #180)
-#272 := (~ #177 #177)
-#291 := [refl]: #272
-#276 := [nnf-pos #291]: #275
+#147 := (* -1::int #141)
+#326 := (ite #308 #30 #147)
+#329 := (ite #12 0::int #326)
+#332 := (ite #13 #8 #329)
+#335 := (= #29 #332)
+#338 := (forall (vars (?v0 int) (?v1 int)) #335)
+#370 := (iff #338 #369)
+#367 := (iff #335 #366)
+#368 := [rewrite]: #367
+#371 := [quant-intro #368]: #370
+#116 := (not #115)
+#109 := (not #108)
+#119 := (and #109 #116)
+#105 := (not #104)
+#112 := (and #105 #109)
+#122 := (or #112 #119)
+#167 := (ite #122 #30 #147)
+#170 := (ite #12 0::int #167)
+#173 := (ite #13 #8 #170)
+#176 := (= #29 #173)
+#179 := (forall (vars (?v0 int) (?v1 int)) #176)
+#339 := (iff #179 #338)
+#336 := (iff #176 #335)
+#333 := (= #173 #332)
+#330 := (= #170 #329)
+#327 := (= #167 #326)
+#311 := (iff #122 #308)
+#305 := (or #302 #285)
+#309 := (iff #305 #308)
+#310 := [rewrite]: #309
+#306 := (iff #122 #305)
+#303 := (iff #119 #285)
+#304 := [rewrite]: #303
+#282 := (iff #112 #302)
+#283 := [rewrite]: #282
+#307 := [monotonicity #283 #304]: #306
+#312 := [trans #307 #310]: #311
+#328 := [monotonicity #312]: #327
+#331 := [monotonicity #328]: #330
+#334 := [monotonicity #331]: #333
+#337 := [monotonicity #334]: #336
+#340 := [quant-intro #337]: #339
+#274 := (~ #179 #179)
+#271 := (~ #176 #176)
+#290 := [refl]: #271
+#275 := [nnf-pos #290]: #274
 #23 := (- #9)
 #22 := (- #8)
 #31 := (mod #22 #23)
@@ -19121,228 +19449,204 @@
 #35 := (ite #13 #8 #34)
 #36 := (= #29 #35)
 #37 := (forall (vars (?v0 int) (?v1 int)) #36)
-#183 := (iff #37 #180)
-#77 := (and #16 #18)
-#80 := (or #17 #77)
-#153 := (ite #80 #30 #148)
-#156 := (ite #12 0::int #153)
-#159 := (ite #13 #8 #156)
-#162 := (= #29 #159)
-#165 := (forall (vars (?v0 int) (?v1 int)) #162)
-#181 := (iff #165 #180)
-#178 := (iff #162 #177)
-#175 := (= #159 #174)
-#172 := (= #156 #171)
-#169 := (= #153 #168)
-#124 := (iff #80 #123)
-#121 := (iff #77 #120)
-#118 := (iff #18 #117)
-#119 := [rewrite]: #118
-#111 := (iff #16 #110)
-#112 := [rewrite]: #111
-#122 := [monotonicity #112 #119]: #121
-#114 := (iff #17 #113)
-#107 := (iff #15 #106)
-#108 := [rewrite]: #107
-#115 := [monotonicity #108 #112]: #114
-#125 := [monotonicity #115 #122]: #124
-#170 := [monotonicity #125]: #169
-#173 := [monotonicity #170]: #172
-#176 := [monotonicity #173]: #175
-#179 := [monotonicity #176]: #178
-#182 := [quant-intro #179]: #181
-#166 := (iff #37 #165)
-#163 := (iff #36 #162)
-#160 := (= #35 #159)
-#157 := (= #34 #156)
-#154 := (= #33 #153)
-#151 := (= #32 #148)
-#145 := (- #142)
-#149 := (= #145 #148)
-#150 := [rewrite]: #149
-#146 := (= #32 #145)
-#143 := (= #31 #142)
-#88 := (= #23 #87)
-#89 := [rewrite]: #88
-#85 := (= #22 #84)
-#86 := [rewrite]: #85
-#144 := [monotonicity #86 #89]: #143
-#147 := [monotonicity #144]: #146
-#152 := [trans #147 #150]: #151
-#81 := (iff #20 #80)
-#78 := (iff #19 #77)
-#79 := [rewrite]: #78
-#82 := [monotonicity #79]: #81
-#155 := [monotonicity #82 #152]: #154
-#158 := [monotonicity #155]: #157
-#161 := [monotonicity #158]: #160
-#164 := [monotonicity #161]: #163
-#167 := [quant-intro #164]: #166
-#184 := [trans #167 #182]: #183
-#141 := [asserted]: #37
-#185 := [mp #141 #184]: #180
-#292 := [mp~ #185 #276]: #180
-#342 := [mp #292 #341]: #339
-#373 := [mp #342 #372]: #370
-#857 := [mp #373 #856]: #852
-#762 := (not #852)
-#763 := (or #762 #834)
-#431 := (* -1::int 3::int)
-#515 := (* -1::int 1::int)
-#516 := (mod #515 #431)
-#517 := (+ #55 #516)
-#508 := (= #517 0::int)
-#519 := (mod 1::int 3::int)
-#520 := (* -1::int #519)
-#521 := (+ #55 #520)
-#518 := (= #521 0::int)
-#522 := (<= 3::int 0::int)
-#501 := (<= 1::int 0::int)
-#836 := (or #501 #522)
+#182 := (iff #37 #179)
+#76 := (and #16 #18)
+#79 := (or #17 #76)
+#152 := (ite #79 #30 #147)
+#155 := (ite #12 0::int #152)
+#158 := (ite #13 #8 #155)
+#161 := (= #29 #158)
+#164 := (forall (vars (?v0 int) (?v1 int)) #161)
+#180 := (iff #164 #179)
+#177 := (iff #161 #176)
+#174 := (= #158 #173)
+#171 := (= #155 #170)
+#168 := (= #152 #167)
+#123 := (iff #79 #122)
+#120 := (iff #76 #119)
+#117 := (iff #18 #116)
+#118 := [rewrite]: #117
+#110 := (iff #16 #109)
+#111 := [rewrite]: #110
+#121 := [monotonicity #111 #118]: #120
+#113 := (iff #17 #112)
+#106 := (iff #15 #105)
+#107 := [rewrite]: #106
+#114 := [monotonicity #107 #111]: #113
+#124 := [monotonicity #114 #121]: #123
+#169 := [monotonicity #124]: #168
+#172 := [monotonicity #169]: #171
+#175 := [monotonicity #172]: #174
+#178 := [monotonicity #175]: #177
+#181 := [quant-intro #178]: #180
+#165 := (iff #37 #164)
+#162 := (iff #36 #161)
+#159 := (= #35 #158)
+#156 := (= #34 #155)
+#153 := (= #33 #152)
+#150 := (= #32 #147)
+#144 := (- #141)
+#148 := (= #144 #147)
+#149 := [rewrite]: #148
+#145 := (= #32 #144)
+#142 := (= #31 #141)
+#87 := (= #23 #86)
+#88 := [rewrite]: #87
+#84 := (= #22 #83)
+#85 := [rewrite]: #84
+#143 := [monotonicity #85 #88]: #142
+#146 := [monotonicity #143]: #145
+#151 := [trans #146 #149]: #150
+#80 := (iff #20 #79)
+#77 := (iff #19 #76)
+#78 := [rewrite]: #77
+#81 := [monotonicity #78]: #80
+#154 := [monotonicity #81 #151]: #153
+#157 := [monotonicity #154]: #156
+#160 := [monotonicity #157]: #159
+#163 := [monotonicity #160]: #162
+#166 := [quant-intro #163]: #165
+#183 := [trans #166 #181]: #182
+#140 := [asserted]: #37
+#184 := [mp #140 #183]: #179
+#291 := [mp~ #184 #275]: #179
+#341 := [mp #291 #340]: #338
+#372 := [mp #341 #371]: #369
+#857 := [mp #372 #856]: #852
+#777 := (not #852)
+#662 := (or #777 #832)
+#430 := (* -1::int 3::int)
+#515 := (mod #430 #430)
+#516 := (+ #54 #515)
+#517 := (= #516 0::int)
+#508 := (mod 3::int 3::int)
+#519 := (* -1::int #508)
+#520 := (+ #54 #519)
+#448 := (= #520 0::int)
+#521 := (<= 3::int 0::int)
+#518 := (or #521 #521)
+#522 := (not #518)
+#501 := (>= 3::int 0::int)
+#836 := (or #521 #501)
 #838 := (not #836)
-#495 := (>= 1::int 0::int)
-#625 := (or #522 #495)
-#832 := (not #625)
-#506 := (or #832 #838)
-#507 := (ite #506 #518 #508)
-#839 := (= #55 0::int)
-#840 := (= 1::int 0::int)
-#841 := (ite #840 #839 #507)
-#842 := (= 1::int #55)
-#837 := (= 3::int 0::int)
-#843 := (ite #837 #842 #841)
-#764 := (or #762 #843)
-#765 := (iff #764 #763)
-#750 := (iff #763 #763)
-#752 := [rewrite]: #750
-#772 := (iff #843 #834)
-#759 := (ite false #834 #834)
-#771 := (iff #759 #834)
-#767 := [rewrite]: #771
-#769 := (iff #843 #759)
-#760 := (iff #841 #834)
-#778 := (ite false #839 #834)
-#766 := (iff #778 #834)
-#768 := [rewrite]: #766
-#775 := (iff #841 #778)
-#684 := (iff #507 #834)
-#773 := -2::int
-#774 := (= #55 -2::int)
-#1 := true
-#680 := (ite true #834 #774)
-#682 := (iff #680 #834)
-#683 := [rewrite]: #682
-#673 := (iff #507 #680)
-#677 := (iff #508 #774)
-#795 := 2::int
-#782 := (+ 2::int #55)
-#628 := (= #782 0::int)
-#777 := (iff #628 #774)
-#662 := [rewrite]: #777
-#776 := (iff #508 #628)
-#668 := (= #517 #782)
-#781 := (+ #55 2::int)
-#785 := (= #781 #782)
-#667 := [rewrite]: #785
-#783 := (= #517 #781)
-#627 := (= #516 2::int)
-#792 := -3::int
-#793 := (mod -1::int -3::int)
-#624 := (= #793 2::int)
-#626 := [rewrite]: #624
-#794 := (= #516 #793)
-#786 := (= #431 -3::int)
-#787 := [rewrite]: #786
-#805 := (= #515 -1::int)
+#495 := (or #838 #522)
+#625 := (ite #495 #448 #517)
+#506 := (= 3::int 0::int)
+#507 := (ite #506 #832 #625)
+#839 := (= 3::int #54)
+#840 := (ite #506 #839 #507)
+#677 := (or #777 #840)
+#680 := (iff #677 #662)
+#681 := (iff #662 #662)
+#682 := [rewrite]: #681
+#773 := (iff #840 #832)
+#843 := (= #54 3::int)
+#668 := (ite false #843 #832)
+#776 := (iff #668 #832)
+#678 := [rewrite]: #776
+#669 := (iff #840 #668)
+#785 := (iff #507 #832)
+#780 := (ite false #832 #832)
+#784 := (iff #780 #832)
+#782 := [rewrite]: #784
+#781 := (iff #507 #780)
+#626 := (iff #625 #832)
+#1 := true
+#793 := (ite true #832 #832)
+#795 := (iff #793 #832)
+#624 := [rewrite]: #795
+#794 := (iff #625 #793)
+#786 := (iff #517 #832)
+#791 := (= #516 #54)
+#807 := (+ #54 0::int)
+#805 := (= #807 #54)
 #809 := [rewrite]: #805
-#788 := [monotonicity #809 #787]: #794
-#780 := [trans #788 #626]: #627
-#784 := [monotonicity #780]: #783
-#669 := [trans #784 #667]: #668
-#678 := [monotonicity #669]: #776
-#679 := [trans #678 #662]: #677
-#790 := (iff #518 #834)
-#796 := (+ -1::int #55)
-#804 := (= #796 0::int)
-#647 := (iff #804 #834)
-#789 := [rewrite]: #647
-#645 := (iff #518 #804)
-#803 := (= #521 #796)
-#799 := (+ #55 -1::int)
-#797 := (= #799 #796)
-#802 := [rewrite]: #797
-#800 := (= #521 #799)
-#806 := (= #520 -1::int)
-#808 := (= #520 #515)
-#529 := (= #519 1::int)
-#807 := [rewrite]: #529
-#523 := [monotonicity #807]: #808
-#810 := [trans #523 #809]: #806
-#801 := [monotonicity #810]: #800
-#798 := [trans #801 #802]: #803
-#646 := [monotonicity #798]: #645
-#791 := [trans #646 #789]: #790
-#527 := (iff #506 true)
-#485 := (or false true)
-#823 := (iff #485 true)
-#824 := [rewrite]: #823
-#816 := (iff #506 #485)
-#815 := (iff #838 true)
-#813 := (not false)
-#537 := (iff #813 true)
+#789 := (= #516 #807)
+#646 := (= #515 0::int)
+#801 := -3::int
+#802 := (mod -3::int -3::int)
+#804 := (= #802 0::int)
+#645 := [rewrite]: #804
+#803 := (= #515 #802)
+#796 := (= #430 -3::int)
+#797 := [rewrite]: #796
+#798 := [monotonicity #797 #797]: #803
+#647 := [trans #798 #645]: #646
+#790 := [monotonicity #647]: #789
+#792 := [trans #790 #809]: #791
+#787 := [monotonicity #792]: #786
+#799 := (iff #448 #832)
+#806 := (= #520 #54)
+#808 := (= #520 #807)
+#528 := (= #519 0::int)
+#815 := (* -1::int 0::int)
+#526 := (= #815 0::int)
+#527 := [rewrite]: #526
+#812 := (= #519 #815)
+#537 := (= #508 0::int)
 #811 := [rewrite]: #537
-#814 := (iff #838 #813)
-#543 := (iff #836 false)
-#817 := (or false false)
-#541 := (iff #817 false)
-#542 := [rewrite]: #541
-#818 := (iff #836 #817)
-#819 := (iff #522 false)
-#482 := [rewrite]: #819
-#828 := (iff #501 false)
-#831 := [rewrite]: #828
-#540 := [monotonicity #831 #482]: #818
-#437 := [trans #540 #542]: #543
-#536 := [monotonicity #437]: #814
-#812 := [trans #536 #811]: #815
-#470 := (iff #832 false)
-#826 := (not true)
-#829 := (iff #826 false)
-#469 := [rewrite]: #829
-#464 := (iff #832 #826)
-#825 := (iff #625 true)
-#821 := (iff #625 #485)
-#483 := (iff #495 true)
-#484 := [rewrite]: #483
-#822 := [monotonicity #482 #484]: #821
-#820 := [trans #822 #824]: #825
-#827 := [monotonicity #820]: #464
-#830 := [trans #827 #469]: #470
-#526 := [monotonicity #830 #812]: #816
-#528 := [trans #526 #824]: #527
-#681 := [monotonicity #528 #791 #679]: #673
-#685 := [trans #681 #683]: #684
-#835 := (iff #840 false)
-#478 := [rewrite]: #835
-#779 := [monotonicity #478 #685]: #775
-#757 := [trans #779 #768]: #760
-#498 := (iff #842 #834)
-#494 := [rewrite]: #498
-#833 := (iff #837 false)
-#493 := [rewrite]: #833
-#770 := [monotonicity #493 #494 #757]: #769
-#761 := [trans #770 #767]: #772
-#749 := [monotonicity #761]: #765
-#753 := [trans #749 #752]: #765
-#758 := [quant-inst]: #764
-#754 := [mp #758 #753]: #763
-#703 := [unit-resolution #754 #857]: #834
-#708 := [monotonicity #703]: #58
-#59 := (not #58)
-#271 := [asserted]: #59
-[unit-resolution #271 #708]: false
-unsat
-d5d2986a8efaefb5e38f30bc14afaad18d3334c6 848 0
+#816 := [monotonicity #811]: #812
+#529 := [trans #816 #527]: #528
+#523 := [monotonicity #529]: #808
+#810 := [trans #523 #809]: #806
+#800 := [monotonicity #810]: #799
+#814 := (iff #495 true)
+#835 := (or false true)
+#482 := (iff #835 true)
+#483 := [rewrite]: #482
+#436 := (iff #495 #835)
+#542 := (iff #522 true)
+#831 := (not false)
+#540 := (iff #831 true)
+#541 := [rewrite]: #540
+#817 := (iff #522 #831)
+#830 := (iff #518 false)
+#464 := (or false false)
+#469 := (iff #464 false)
+#470 := [rewrite]: #469
+#827 := (iff #518 #464)
+#493 := (iff #521 false)
+#498 := [rewrite]: #493
+#829 := [monotonicity #498 #498]: #827
+#828 := [trans #829 #470]: #830
+#818 := [monotonicity #828]: #817
+#543 := [trans #818 #541]: #542
+#820 := (iff #838 false)
+#821 := (not true)
+#824 := (iff #821 false)
+#825 := [rewrite]: #824
+#822 := (iff #838 #821)
+#484 := (iff #836 true)
+#478 := (iff #836 #835)
+#834 := (iff #501 true)
+#494 := [rewrite]: #834
+#819 := [monotonicity #498 #494]: #478
+#485 := [trans #819 #483]: #484
+#823 := [monotonicity #485]: #822
+#826 := [trans #823 #825]: #820
+#813 := [monotonicity #826 #543]: #436
+#536 := [trans #813 #483]: #814
+#788 := [monotonicity #536 #800 #787]: #794
+#627 := [trans #788 #624]: #626
+#841 := (iff #506 false)
+#842 := [rewrite]: #841
+#783 := [monotonicity #842 #627]: #781
+#667 := [trans #783 #782]: #785
+#837 := (iff #839 #843)
+#833 := [rewrite]: #837
+#628 := [monotonicity #842 #833 #667]: #669
+#774 := [trans #628 #678]: #773
+#673 := [monotonicity #774]: #680
+#683 := [trans #673 #682]: #680
+#679 := [quant-inst]: #677
+#684 := [mp #679 #683]: #662
+#704 := [unit-resolution #684 #857]: #832
+#700 := [monotonicity #704]: #57
+#58 := (not #57)
+#270 := [asserted]: #58
+[unit-resolution #270 #700]: false
+unsat
+dfe2acff8e1fa8b5c4e4ba1cf8fef0ce4556ee21 848 0
 #2 := false
 decl f5 :: (-> int S2)
 decl f6 :: (-> S2 int)
@@ -20191,311 +20495,7 @@
 #1103 := [trans #935 #1102]: #300
 [unit-resolution #308 #1103]: false
 unsat
-30266f09c986583d8c5407f4e044da694063d38f 303 0
-#2 := false
-decl f5 :: (-> int S2)
-#11 := 0::int
-#56 := (f5 0::int)
-decl f4 :: (-> int int int)
-#53 := 3::int
-#54 := (f4 3::int 3::int)
-#55 := (f5 #54)
-#57 := (= #55 #56)
-#832 := (= #54 0::int)
-#9 := (:var 0 int)
-#8 := (:var 1 int)
-#29 := (f4 #8 #9)
-#851 := (pattern #29)
-#82 := -1::int
-#86 := (* -1::int #9)
-#83 := (* -1::int #8)
-#141 := (mod #83 #86)
-#362 := (+ #29 #141)
-#363 := (= #362 0::int)
-#30 := (mod #8 #9)
-#359 := (* -1::int #30)
-#360 := (+ #29 #359)
-#361 := (= #360 0::int)
-#108 := (<= #9 0::int)
-#104 := (<= #8 0::int)
-#301 := (or #104 #108)
-#302 := (not #301)
-#115 := (>= #8 0::int)
-#284 := (or #108 #115)
-#285 := (not #284)
-#308 := (or #285 #302)
-#364 := (ite #308 #361 #363)
-#358 := (= #29 0::int)
-#12 := (= #8 0::int)
-#365 := (ite #12 #358 #364)
-#357 := (= #8 #29)
-#13 := (= #9 0::int)
-#366 := (ite #13 #357 #365)
-#852 := (forall (vars (?v0 int) (?v1 int)) (:pat #851) #366)
-#369 := (forall (vars (?v0 int) (?v1 int)) #366)
-#855 := (iff #369 #852)
-#853 := (iff #366 #366)
-#854 := [refl]: #853
-#856 := [quant-intro #854]: #855
-#147 := (* -1::int #141)
-#326 := (ite #308 #30 #147)
-#329 := (ite #12 0::int #326)
-#332 := (ite #13 #8 #329)
-#335 := (= #29 #332)
-#338 := (forall (vars (?v0 int) (?v1 int)) #335)
-#370 := (iff #338 #369)
-#367 := (iff #335 #366)
-#368 := [rewrite]: #367
-#371 := [quant-intro #368]: #370
-#116 := (not #115)
-#109 := (not #108)
-#119 := (and #109 #116)
-#105 := (not #104)
-#112 := (and #105 #109)
-#122 := (or #112 #119)
-#167 := (ite #122 #30 #147)
-#170 := (ite #12 0::int #167)
-#173 := (ite #13 #8 #170)
-#176 := (= #29 #173)
-#179 := (forall (vars (?v0 int) (?v1 int)) #176)
-#339 := (iff #179 #338)
-#336 := (iff #176 #335)
-#333 := (= #173 #332)
-#330 := (= #170 #329)
-#327 := (= #167 #326)
-#311 := (iff #122 #308)
-#305 := (or #302 #285)
-#309 := (iff #305 #308)
-#310 := [rewrite]: #309
-#306 := (iff #122 #305)
-#303 := (iff #119 #285)
-#304 := [rewrite]: #303
-#282 := (iff #112 #302)
-#283 := [rewrite]: #282
-#307 := [monotonicity #283 #304]: #306
-#312 := [trans #307 #310]: #311
-#328 := [monotonicity #312]: #327
-#331 := [monotonicity #328]: #330
-#334 := [monotonicity #331]: #333
-#337 := [monotonicity #334]: #336
-#340 := [quant-intro #337]: #339
-#274 := (~ #179 #179)
-#271 := (~ #176 #176)
-#290 := [refl]: #271
-#275 := [nnf-pos #290]: #274
-#23 := (- #9)
-#22 := (- #8)
-#31 := (mod #22 #23)
-#32 := (- #31)
-#16 := (< 0::int #9)
-#18 := (< #8 0::int)
-#19 := (and #18 #16)
-#15 := (< 0::int #8)
-#17 := (and #15 #16)
-#20 := (or #17 #19)
-#33 := (ite #20 #30 #32)
-#34 := (ite #12 0::int #33)
-#35 := (ite #13 #8 #34)
-#36 := (= #29 #35)
-#37 := (forall (vars (?v0 int) (?v1 int)) #36)
-#182 := (iff #37 #179)
-#76 := (and #16 #18)
-#79 := (or #17 #76)
-#152 := (ite #79 #30 #147)
-#155 := (ite #12 0::int #152)
-#158 := (ite #13 #8 #155)
-#161 := (= #29 #158)
-#164 := (forall (vars (?v0 int) (?v1 int)) #161)
-#180 := (iff #164 #179)
-#177 := (iff #161 #176)
-#174 := (= #158 #173)
-#171 := (= #155 #170)
-#168 := (= #152 #167)
-#123 := (iff #79 #122)
-#120 := (iff #76 #119)
-#117 := (iff #18 #116)
-#118 := [rewrite]: #117
-#110 := (iff #16 #109)
-#111 := [rewrite]: #110
-#121 := [monotonicity #111 #118]: #120
-#113 := (iff #17 #112)
-#106 := (iff #15 #105)
-#107 := [rewrite]: #106
-#114 := [monotonicity #107 #111]: #113
-#124 := [monotonicity #114 #121]: #123
-#169 := [monotonicity #124]: #168
-#172 := [monotonicity #169]: #171
-#175 := [monotonicity #172]: #174
-#178 := [monotonicity #175]: #177
-#181 := [quant-intro #178]: #180
-#165 := (iff #37 #164)
-#162 := (iff #36 #161)
-#159 := (= #35 #158)
-#156 := (= #34 #155)
-#153 := (= #33 #152)
-#150 := (= #32 #147)
-#144 := (- #141)
-#148 := (= #144 #147)
-#149 := [rewrite]: #148
-#145 := (= #32 #144)
-#142 := (= #31 #141)
-#87 := (= #23 #86)
-#88 := [rewrite]: #87
-#84 := (= #22 #83)
-#85 := [rewrite]: #84
-#143 := [monotonicity #85 #88]: #142
-#146 := [monotonicity #143]: #145
-#151 := [trans #146 #149]: #150
-#80 := (iff #20 #79)
-#77 := (iff #19 #76)
-#78 := [rewrite]: #77
-#81 := [monotonicity #78]: #80
-#154 := [monotonicity #81 #151]: #153
-#157 := [monotonicity #154]: #156
-#160 := [monotonicity #157]: #159
-#163 := [monotonicity #160]: #162
-#166 := [quant-intro #163]: #165
-#183 := [trans #166 #181]: #182
-#140 := [asserted]: #37
-#184 := [mp #140 #183]: #179
-#291 := [mp~ #184 #275]: #179
-#341 := [mp #291 #340]: #338
-#372 := [mp #341 #371]: #369
-#857 := [mp #372 #856]: #852
-#777 := (not #852)
-#662 := (or #777 #832)
-#430 := (* -1::int 3::int)
-#515 := (mod #430 #430)
-#516 := (+ #54 #515)
-#517 := (= #516 0::int)
-#508 := (mod 3::int 3::int)
-#519 := (* -1::int #508)
-#520 := (+ #54 #519)
-#448 := (= #520 0::int)
-#521 := (<= 3::int 0::int)
-#518 := (or #521 #521)
-#522 := (not #518)
-#501 := (>= 3::int 0::int)
-#836 := (or #521 #501)
-#838 := (not #836)
-#495 := (or #838 #522)
-#625 := (ite #495 #448 #517)
-#506 := (= 3::int 0::int)
-#507 := (ite #506 #832 #625)
-#839 := (= 3::int #54)
-#840 := (ite #506 #839 #507)
-#677 := (or #777 #840)
-#680 := (iff #677 #662)
-#681 := (iff #662 #662)
-#682 := [rewrite]: #681
-#773 := (iff #840 #832)
-#843 := (= #54 3::int)
-#668 := (ite false #843 #832)
-#776 := (iff #668 #832)
-#678 := [rewrite]: #776
-#669 := (iff #840 #668)
-#785 := (iff #507 #832)
-#780 := (ite false #832 #832)
-#784 := (iff #780 #832)
-#782 := [rewrite]: #784
-#781 := (iff #507 #780)
-#626 := (iff #625 #832)
-#1 := true
-#793 := (ite true #832 #832)
-#795 := (iff #793 #832)
-#624 := [rewrite]: #795
-#794 := (iff #625 #793)
-#786 := (iff #517 #832)
-#791 := (= #516 #54)
-#807 := (+ #54 0::int)
-#805 := (= #807 #54)
-#809 := [rewrite]: #805
-#789 := (= #516 #807)
-#646 := (= #515 0::int)
-#801 := -3::int
-#802 := (mod -3::int -3::int)
-#804 := (= #802 0::int)
-#645 := [rewrite]: #804
-#803 := (= #515 #802)
-#796 := (= #430 -3::int)
-#797 := [rewrite]: #796
-#798 := [monotonicity #797 #797]: #803
-#647 := [trans #798 #645]: #646
-#790 := [monotonicity #647]: #789
-#792 := [trans #790 #809]: #791
-#787 := [monotonicity #792]: #786
-#799 := (iff #448 #832)
-#806 := (= #520 #54)
-#808 := (= #520 #807)
-#528 := (= #519 0::int)
-#815 := (* -1::int 0::int)
-#526 := (= #815 0::int)
-#527 := [rewrite]: #526
-#812 := (= #519 #815)
-#537 := (= #508 0::int)
-#811 := [rewrite]: #537
-#816 := [monotonicity #811]: #812
-#529 := [trans #816 #527]: #528
-#523 := [monotonicity #529]: #808
-#810 := [trans #523 #809]: #806
-#800 := [monotonicity #810]: #799
-#814 := (iff #495 true)
-#835 := (or false true)
-#482 := (iff #835 true)
-#483 := [rewrite]: #482
-#436 := (iff #495 #835)
-#542 := (iff #522 true)
-#831 := (not false)
-#540 := (iff #831 true)
-#541 := [rewrite]: #540
-#817 := (iff #522 #831)
-#830 := (iff #518 false)
-#464 := (or false false)
-#469 := (iff #464 false)
-#470 := [rewrite]: #469
-#827 := (iff #518 #464)
-#493 := (iff #521 false)
-#498 := [rewrite]: #493
-#829 := [monotonicity #498 #498]: #827
-#828 := [trans #829 #470]: #830
-#818 := [monotonicity #828]: #817
-#543 := [trans #818 #541]: #542
-#820 := (iff #838 false)
-#821 := (not true)
-#824 := (iff #821 false)
-#825 := [rewrite]: #824
-#822 := (iff #838 #821)
-#484 := (iff #836 true)
-#478 := (iff #836 #835)
-#834 := (iff #501 true)
-#494 := [rewrite]: #834
-#819 := [monotonicity #498 #494]: #478
-#485 := [trans #819 #483]: #484
-#823 := [monotonicity #485]: #822
-#826 := [trans #823 #825]: #820
-#813 := [monotonicity #826 #543]: #436
-#536 := [trans #813 #483]: #814
-#788 := [monotonicity #536 #800 #787]: #794
-#627 := [trans #788 #624]: #626
-#841 := (iff #506 false)
-#842 := [rewrite]: #841
-#783 := [monotonicity #842 #627]: #781
-#667 := [trans #783 #782]: #785
-#837 := (iff #839 #843)
-#833 := [rewrite]: #837
-#628 := [monotonicity #842 #833 #667]: #669
-#774 := [trans #628 #678]: #773
-#673 := [monotonicity #774]: #680
-#683 := [trans #673 #682]: #680
-#679 := [quant-inst]: #677
-#684 := [mp #679 #683]: #662
-#704 := [unit-resolution #684 #857]: #832
-#700 := [monotonicity #704]: #57
-#58 := (not #57)
-#270 := [asserted]: #58
-[unit-resolution #270 #700]: false
-unsat
-29a274d82d7dfcc17be98231a7a95a9ec14cd706 533 0
+ca0580f7bff73a2d860730ec786524526e0ba0ea 533 0
 #2 := false
 #55 := 3::int
 decl f6 :: (-> S2 int)
@@ -21029,7 +21029,7 @@
 #594 := [unit-resolution #608 #604]: #802
 [th-lemma #594 #286 #627 #636]: false
 unsat
-7c27e22543c792c36da02bc4168bcd3f7ce7432d 961 0
+a9c34a43767d7d2678eb5dde12b17fe190a6efe1 961 0
 #2 := false
 decl f5 :: (-> int S2)
 decl f6 :: (-> S2 int)
@@ -21991,7 +21991,7 @@
 #1225 := [trans #1224 #1218]: #301
 [unit-resolution #309 #1225]: false
 unsat
-914ab31d83892bfaa2a8848c9049be9e1ce2cb06 671 0
+5967f5c1592ecf001d4f064122298df3a0ca76b7 671 0
 #2 := false
 decl f6 :: (-> S2 int)
 decl f5 :: (-> int S2)
@@ -22663,7 +22663,7 @@
 #507 := [unit-resolution #504 #503]: #806
 [unit-resolution #507 #477]: false
 unsat
-85ac6a29deaf91400dbfbdf638baba5914d49e18 60 0
+b7e0eef92ca8fea2ccc91684e833dc3dce9b2d04 60 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -22724,7 +22724,68 @@
 #630 := [unit-resolution #632 #631]: #266
 [th-lemma #159 #629 #630]: false
 unsat
-d84df414dbdb37289879fadf547b4a4bc9c68951 60 0
+5617bc6b938b986893bfcfa7ce1760c2311e1366 60 0
+#2 := false
+#13 := 0::int
+decl f4 :: (-> S2 int)
+decl f6 :: S2
+#27 := f6
+#28 := (f4 f6)
+decl f5 :: S2
+#25 := f5
+#26 := (f4 f5)
+#137 := -1::int
+#138 := (* -1::int #28)
+#139 := (+ #26 #138)
+#140 := (<= #139 0::int)
+#143 := (ite #140 #26 #28)
+#150 := (* -1::int #143)
+#151 := (+ #28 #150)
+#149 := (>= #151 0::int)
+#156 := (not #149)
+#29 := (<= #26 #28)
+#30 := (ite #29 #26 #28)
+#31 := (<= #30 #28)
+#32 := (not #31)
+#157 := (iff #32 #156)
+#154 := (iff #31 #149)
+#146 := (<= #143 #28)
+#152 := (iff #146 #149)
+#153 := [rewrite]: #152
+#147 := (iff #31 #146)
+#144 := (= #30 #143)
+#141 := (iff #29 #140)
+#142 := [rewrite]: #141
+#145 := [monotonicity #142]: #144
+#148 := [monotonicity #145]: #147
+#155 := [trans #148 #153]: #154
+#158 := [monotonicity #155]: #157
+#134 := [asserted]: #32
+#159 := [mp #134 #158]: #156
+#317 := (= #28 #143)
+#232 := (not #140)
+#625 := [hypothesis]: #140
+#637 := (+ #26 #150)
+#624 := (>= #637 0::int)
+#231 := (= #26 #143)
+#318 := (or #232 #231)
+#319 := [def-axiom]: #318
+#626 := [unit-resolution #319 #625]: #231
+#627 := (not #231)
+#622 := (or #627 #624)
+#628 := [th-lemma]: #622
+#266 := [unit-resolution #628 #626]: #624
+#629 := [th-lemma #266 #159 #625]: false
+#631 := [lemma #629]: #232
+#310 := (or #140 #317)
+#321 := [def-axiom]: #310
+#271 := [unit-resolution #321 #631]: #317
+#272 := (not #317)
+#632 := (or #272 #149)
+#630 := [th-lemma]: #632
+[unit-resolution #630 #271 #159]: false
+unsat
+050c8f359b390869bd7cdf1db28b2773829a0360 60 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -22785,129 +22846,7 @@
 #630 := [th-lemma]: #632
 [unit-resolution #630 #271 #159]: false
 unsat
-ec431e8216f1d8b2f670cdb0885c1e07fa83e950 60 0
-#2 := false
-#13 := 0::int
-decl f4 :: (-> S2 int)
-decl f6 :: S2
-#27 := f6
-#28 := (f4 f6)
-decl f5 :: S2
-#25 := f5
-#26 := (f4 f5)
-#137 := -1::int
-#138 := (* -1::int #28)
-#139 := (+ #26 #138)
-#140 := (<= #139 0::int)
-#143 := (ite #140 #26 #28)
-#150 := (* -1::int #143)
-#151 := (+ #28 #150)
-#149 := (>= #151 0::int)
-#156 := (not #149)
-#29 := (<= #26 #28)
-#30 := (ite #29 #26 #28)
-#31 := (<= #30 #28)
-#32 := (not #31)
-#157 := (iff #32 #156)
-#154 := (iff #31 #149)
-#146 := (<= #143 #28)
-#152 := (iff #146 #149)
-#153 := [rewrite]: #152
-#147 := (iff #31 #146)
-#144 := (= #30 #143)
-#141 := (iff #29 #140)
-#142 := [rewrite]: #141
-#145 := [monotonicity #142]: #144
-#148 := [monotonicity #145]: #147
-#155 := [trans #148 #153]: #154
-#158 := [monotonicity #155]: #157
-#134 := [asserted]: #32
-#159 := [mp #134 #158]: #156
-#317 := (= #28 #143)
-#232 := (not #140)
-#625 := [hypothesis]: #140
-#637 := (+ #26 #150)
-#624 := (>= #637 0::int)
-#231 := (= #26 #143)
-#318 := (or #232 #231)
-#319 := [def-axiom]: #318
-#626 := [unit-resolution #319 #625]: #231
-#627 := (not #231)
-#622 := (or #627 #624)
-#628 := [th-lemma]: #622
-#266 := [unit-resolution #628 #626]: #624
-#629 := [th-lemma #266 #159 #625]: false
-#631 := [lemma #629]: #232
-#310 := (or #140 #317)
-#321 := [def-axiom]: #310
-#271 := [unit-resolution #321 #631]: #317
-#272 := (not #317)
-#632 := (or #272 #149)
-#630 := [th-lemma]: #632
-[unit-resolution #630 #271 #159]: false
-unsat
-2abc216904909a8ab09db7d8ddd5116874c405b2 60 0
-#2 := false
-#13 := 0::int
-decl f4 :: (-> S2 int)
-decl f6 :: S2
-#27 := f6
-#28 := (f4 f6)
-decl f5 :: S2
-#25 := f5
-#26 := (f4 f5)
-#137 := -1::int
-#140 := (* -1::int #28)
-#141 := (+ #26 #140)
-#139 := (>= #141 0::int)
-#143 := (ite #139 #26 #28)
-#149 := (* -1::int #143)
-#637 := (+ #28 #149)
-#628 := (<= #637 0::int)
-#317 := (= #28 #143)
-#232 := (not #139)
-#231 := (= #26 #143)
-#624 := (not #231)
-#150 := (+ #26 #149)
-#151 := (<= #150 0::int)
-#156 := (not #151)
-#29 := (<= #28 #26)
-#30 := (ite #29 #26 #28)
-#31 := (<= #26 #30)
-#32 := (not #31)
-#157 := (iff #32 #156)
-#154 := (iff #31 #151)
-#146 := (<= #26 #143)
-#152 := (iff #146 #151)
-#153 := [rewrite]: #152
-#147 := (iff #31 #146)
-#144 := (= #30 #143)
-#138 := (iff #29 #139)
-#142 := [rewrite]: #138
-#145 := [monotonicity #142]: #144
-#148 := [monotonicity #145]: #147
-#155 := [trans #148 #153]: #154
-#158 := [monotonicity #155]: #157
-#134 := [asserted]: #32
-#159 := [mp #134 #158]: #156
-#280 := [hypothesis]: #231
-#625 := (or #624 #151)
-#626 := [th-lemma]: #625
-#627 := [unit-resolution #626 #280 #159]: false
-#622 := [lemma #627]: #624
-#318 := (or #232 #231)
-#319 := [def-axiom]: #318
-#629 := [unit-resolution #319 #622]: #232
-#310 := (or #139 #317)
-#321 := [def-axiom]: #310
-#631 := [unit-resolution #321 #629]: #317
-#271 := (not #317)
-#272 := (or #271 #628)
-#632 := [th-lemma]: #272
-#630 := [unit-resolution #632 #631]: #628
-[th-lemma #159 #629 #630]: false
-unsat
-db10b3baed96f5ad894a70d823fdba86b4614481 253 0
+04cc411b96731925afb67c561af17d4cb6d68cf0 253 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -23161,7 +23100,172 @@
 #473 := [lemma #472]: #233
 [unit-resolution #631 #473 #487]: false
 unsat
-14969492cac173e86b554790b2b1280f30825e8b 437 0
+80aafa9ce13a262b7746b90465ebd387a9798fb0 60 0
+#2 := false
+#13 := 0::int
+decl f4 :: (-> S2 int)
+decl f6 :: S2
+#27 := f6
+#28 := (f4 f6)
+decl f5 :: S2
+#25 := f5
+#26 := (f4 f5)
+#137 := -1::int
+#140 := (* -1::int #28)
+#141 := (+ #26 #140)
+#139 := (>= #141 0::int)
+#143 := (ite #139 #26 #28)
+#149 := (* -1::int #143)
+#637 := (+ #28 #149)
+#628 := (<= #637 0::int)
+#317 := (= #28 #143)
+#232 := (not #139)
+#231 := (= #26 #143)
+#624 := (not #231)
+#150 := (+ #26 #149)
+#151 := (<= #150 0::int)
+#156 := (not #151)
+#29 := (<= #28 #26)
+#30 := (ite #29 #26 #28)
+#31 := (<= #26 #30)
+#32 := (not #31)
+#157 := (iff #32 #156)
+#154 := (iff #31 #151)
+#146 := (<= #26 #143)
+#152 := (iff #146 #151)
+#153 := [rewrite]: #152
+#147 := (iff #31 #146)
+#144 := (= #30 #143)
+#138 := (iff #29 #139)
+#142 := [rewrite]: #138
+#145 := [monotonicity #142]: #144
+#148 := [monotonicity #145]: #147
+#155 := [trans #148 #153]: #154
+#158 := [monotonicity #155]: #157
+#134 := [asserted]: #32
+#159 := [mp #134 #158]: #156
+#280 := [hypothesis]: #231
+#625 := (or #624 #151)
+#626 := [th-lemma]: #625
+#627 := [unit-resolution #626 #280 #159]: false
+#622 := [lemma #627]: #624
+#318 := (or #232 #231)
+#319 := [def-axiom]: #318
+#629 := [unit-resolution #319 #622]: #232
+#310 := (or #139 #317)
+#321 := [def-axiom]: #310
+#631 := [unit-resolution #321 #629]: #317
+#271 := (not #317)
+#272 := (or #271 #628)
+#632 := [th-lemma]: #272
+#630 := [unit-resolution #632 #631]: #628
+[th-lemma #159 #629 #630]: false
+unsat
+afcf8a254d165c5e9d701ed584fa3d55dcc74a09 103 0
+#2 := false
+#13 := 0::int
+decl f4 :: (-> S2 int)
+decl f7 :: S2
+#30 := f7
+#31 := (f4 f7)
+decl f6 :: S2
+#27 := f6
+#28 := (f4 f6)
+#143 := -1::int
+#146 := (* -1::int #31)
+#150 := (+ #28 #146)
+#151 := (<= #150 0::int)
+#154 := (ite #151 #28 #31)
+#162 := (* -1::int #154)
+decl f5 :: S2
+#25 := f5
+#26 := (f4 f5)
+#163 := (+ #26 #162)
+#161 := (>= #163 0::int)
+#177 := (* -1::int #28)
+#178 := (+ #26 #177)
+#176 := (>= #178 0::int)
+#175 := (not #176)
+#147 := (+ #26 #146)
+#145 := (>= #147 0::int)
+#144 := (not #145)
+#187 := (and #144 #161 #175)
+#33 := (<= #28 #31)
+#34 := (ite #33 #28 #31)
+#35 := (< #26 #34)
+#36 := (not #35)
+#32 := (< #26 #31)
+#37 := (and #32 #36)
+#29 := (< #26 #28)
+#38 := (and #29 #37)
+#190 := (iff #38 #187)
+#181 := (and #144 #161)
+#184 := (and #175 #181)
+#188 := (iff #184 #187)
+#189 := [rewrite]: #188
+#185 := (iff #38 #184)
+#182 := (iff #37 #181)
+#173 := (iff #36 #161)
+#160 := (not #161)
+#168 := (not #160)
+#171 := (iff #168 #161)
+#172 := [rewrite]: #171
+#169 := (iff #36 #168)
+#166 := (iff #35 #160)
+#157 := (< #26 #154)
+#164 := (iff #157 #160)
+#165 := [rewrite]: #164
+#158 := (iff #35 #157)
+#155 := (= #34 #154)
+#152 := (iff #33 #151)
+#153 := [rewrite]: #152
+#156 := [monotonicity #153]: #155
+#159 := [monotonicity #156]: #158
+#167 := [trans #159 #165]: #166
+#170 := [monotonicity #167]: #169
+#174 := [trans #170 #172]: #173
+#148 := (iff #32 #144)
+#149 := [rewrite]: #148
+#183 := [monotonicity #149 #174]: #182
+#179 := (iff #29 #175)
+#180 := [rewrite]: #179
+#186 := [monotonicity #180 #183]: #185
+#191 := [trans #186 #189]: #190
+#140 := [asserted]: #38
+#192 := [mp #140 #191]: #187
+#194 := [and-elim #192]: #161
+#193 := [and-elim #192]: #144
+#365 := (+ #31 #162)
+#638 := (<= #365 0::int)
+#353 := (= #31 #154)
+#268 := (not #151)
+#267 := (= #28 #154)
+#643 := (not #267)
+#652 := (+ #28 #162)
+#374 := (<= #652 0::int)
+#645 := (not #374)
+#195 := [and-elim #192]: #175
+#366 := [hypothesis]: #374
+#367 := [th-lemma #366 #195 #194]: false
+#646 := [lemma #367]: #645
+#361 := [hypothesis]: #267
+#647 := (or #643 #374)
+#644 := [th-lemma]: #647
+#648 := [unit-resolution #644 #361 #646]: false
+#637 := [lemma #648]: #643
+#354 := (or #268 #267)
+#355 := [def-axiom]: #354
+#634 := [unit-resolution #355 #637]: #268
+#346 := (or #151 #353)
+#357 := [def-axiom]: #346
+#635 := [unit-resolution #357 #634]: #353
+#640 := (not #353)
+#641 := (or #640 #638)
+#636 := [th-lemma]: #641
+#642 := [unit-resolution #636 #635]: #638
+[th-lemma #642 #193 #194]: false
+unsat
+b9568adc9ac22f504348a42395408d6d8271d777 437 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -23599,111 +23703,7 @@
 #462 := [unit-resolution #492 #479]: #669
 [th-lemma #462 #528 #194 #475 #461]: false
 unsat
-89bc3a6333da51700f7daac14eb84da9abc113a1 103 0
-#2 := false
-#13 := 0::int
-decl f4 :: (-> S2 int)
-decl f7 :: S2
-#30 := f7
-#31 := (f4 f7)
-decl f6 :: S2
-#27 := f6
-#28 := (f4 f6)
-#143 := -1::int
-#146 := (* -1::int #31)
-#150 := (+ #28 #146)
-#151 := (<= #150 0::int)
-#154 := (ite #151 #28 #31)
-#162 := (* -1::int #154)
-decl f5 :: S2
-#25 := f5
-#26 := (f4 f5)
-#163 := (+ #26 #162)
-#161 := (>= #163 0::int)
-#177 := (* -1::int #28)
-#178 := (+ #26 #177)
-#176 := (>= #178 0::int)
-#175 := (not #176)
-#147 := (+ #26 #146)
-#145 := (>= #147 0::int)
-#144 := (not #145)
-#187 := (and #144 #161 #175)
-#33 := (<= #28 #31)
-#34 := (ite #33 #28 #31)
-#35 := (< #26 #34)
-#36 := (not #35)
-#32 := (< #26 #31)
-#37 := (and #32 #36)
-#29 := (< #26 #28)
-#38 := (and #29 #37)
-#190 := (iff #38 #187)
-#181 := (and #144 #161)
-#184 := (and #175 #181)
-#188 := (iff #184 #187)
-#189 := [rewrite]: #188
-#185 := (iff #38 #184)
-#182 := (iff #37 #181)
-#173 := (iff #36 #161)
-#160 := (not #161)
-#168 := (not #160)
-#171 := (iff #168 #161)
-#172 := [rewrite]: #171
-#169 := (iff #36 #168)
-#166 := (iff #35 #160)
-#157 := (< #26 #154)
-#164 := (iff #157 #160)
-#165 := [rewrite]: #164
-#158 := (iff #35 #157)
-#155 := (= #34 #154)
-#152 := (iff #33 #151)
-#153 := [rewrite]: #152
-#156 := [monotonicity #153]: #155
-#159 := [monotonicity #156]: #158
-#167 := [trans #159 #165]: #166
-#170 := [monotonicity #167]: #169
-#174 := [trans #170 #172]: #173
-#148 := (iff #32 #144)
-#149 := [rewrite]: #148
-#183 := [monotonicity #149 #174]: #182
-#179 := (iff #29 #175)
-#180 := [rewrite]: #179
-#186 := [monotonicity #180 #183]: #185
-#191 := [trans #186 #189]: #190
-#140 := [asserted]: #38
-#192 := [mp #140 #191]: #187
-#194 := [and-elim #192]: #161
-#193 := [and-elim #192]: #144
-#365 := (+ #31 #162)
-#638 := (<= #365 0::int)
-#353 := (= #31 #154)
-#268 := (not #151)
-#267 := (= #28 #154)
-#643 := (not #267)
-#652 := (+ #28 #162)
-#374 := (<= #652 0::int)
-#645 := (not #374)
-#195 := [and-elim #192]: #175
-#366 := [hypothesis]: #374
-#367 := [th-lemma #366 #195 #194]: false
-#646 := [lemma #367]: #645
-#361 := [hypothesis]: #267
-#647 := (or #643 #374)
-#644 := [th-lemma]: #647
-#648 := [unit-resolution #644 #361 #646]: false
-#637 := [lemma #648]: #643
-#354 := (or #268 #267)
-#355 := [def-axiom]: #354
-#634 := [unit-resolution #355 #637]: #268
-#346 := (or #151 #353)
-#357 := [def-axiom]: #346
-#635 := [unit-resolution #357 #634]: #353
-#640 := (not #353)
-#641 := (or #640 #638)
-#636 := [th-lemma]: #641
-#642 := [unit-resolution #636 #635]: #638
-[th-lemma #642 #193 #194]: false
-unsat
-c39739842d64e1dca61912be5a777a90f01e28fd 117 0
+caea920980c91680caa298496d6beb2d2bf61295 117 0
 #2 := false
 decl f3 :: (-> int S2)
 decl f4 :: (-> S2 int)
@@ -23821,7 +23821,7 @@
 #559 := [trans #554 #555]: #162
 [unit-resolution #168 #559]: false
 unsat
-452992a55139d640bc8969517cd3166d0f13bb37 103 0
+d7b83db7c0c4e066fdea2d94e35ab3cc620d56df 103 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -23925,7 +23925,7 @@
 #642 := [unit-resolution #636 #635]: #639
 [th-lemma #642 #195 #194]: false
 unsat
-c3edc6cce39c9c380e8b07a4426540e2db018197 156 0
+140237685072a702cc83b447cdc8b15858b3f321 156 0
 #2 := false
 decl f3 :: (-> int S2)
 #13 := 0::int
@@ -24082,7 +24082,7 @@
 #134 := [asserted]: #32
 [unit-resolution #134 #583]: false
 unsat
-c2cc039657273f4c31549e108b87c8f33092d45f 119 0
+7941a5e6f861d5ba779c3ff6672cac31550af836 119 0
 #2 := false
 decl f3 :: (-> int S2)
 decl f4 :: (-> S2 int)
@@ -24202,7 +24202,7 @@
 #540 := [trans #557 #539]: #162
 [unit-resolution #168 #540]: false
 unsat
-a6a23143d2240b5fcacf31f97f0b436ce20b01cf 164 0
+fbf28453c2565ae4248c42863556e4f8088a62a2 164 0
 #2 := false
 decl f3 :: (-> int S2)
 decl f4 :: (-> S2 int)
@@ -24367,7 +24367,7 @@
 #142 := [mp #133 #139]: #137
 [unit-resolution #142 #586]: false
 unsat
-f5e2e20fb8c501f38b6d2f15c9fef9418df3a3f5 139 0
+c457a6610bcddee5fbeec4bb3572ce6f1d88807f 139 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -24507,25 +24507,7 @@
 #260 := [th-lemma]: #618
 [unit-resolution #260 #139 #617]: false
 unsat
-88db0d3335480a81cfc5f118ecaef1678c52c57c 17 0
-#2 := false
-#8 := 0::int
-#9 := (= 0::int 0::int)
-#10 := (not #9)
-#35 := (iff #10 false)
-#1 := true
-#30 := (not true)
-#33 := (iff #30 false)
-#34 := [rewrite]: #33
-#31 := (iff #10 #30)
-#28 := (iff #9 true)
-#29 := [rewrite]: #28
-#32 := [monotonicity #29]: #31
-#36 := [trans #32 #34]: #35
-#27 := [asserted]: #10
-[mp #27 #36]: false
-unsat
-3413e63e105cab337755fe6950808ba664d2597a 75 0
+f025d25f9f9c8e38fac474962b7f2dfba4e1a07a 75 0
 #2 := false
 decl f3 :: (-> int S2)
 #28 := 1::int
@@ -24601,33 +24583,7 @@
 #153 := [and-elim #151]: #32
 [unit-resolution #153 #339]: false
 unsat
-3bd4cf5a7808f0310fbc231a810dbf418d0f69cc 25 0
-#2 := false
-#8 := 0::int
-#9 := (- 0::int)
-#10 := (= 0::int #9)
-#11 := (not #10)
-#43 := (iff #11 false)
-#1 := true
-#38 := (not true)
-#41 := (iff #38 false)
-#42 := [rewrite]: #41
-#39 := (iff #11 #38)
-#36 := (iff #10 true)
-#31 := (= 0::int 0::int)
-#34 := (iff #31 true)
-#35 := [rewrite]: #34
-#32 := (iff #10 #31)
-#29 := (= #9 0::int)
-#30 := [rewrite]: #29
-#33 := [monotonicity #30]: #32
-#37 := [trans #33 #35]: #36
-#40 := [monotonicity #37]: #39
-#44 := [trans #40 #42]: #43
-#28 := [asserted]: #11
-[mp #28 #44]: false
-unsat
-7c99e4c706a5bfe7c4bac45e274e4bb5f5ba171b 20 0
+c8f2ead1c220dd8ed211af0515b88614b1941079 20 0
 #2 := false
 decl f4 :: (-> S2 int)
 decl f5 :: S2
@@ -24648,25 +24604,7 @@
 #130 := [asserted]: #28
 [mp #130 #141]: false
 unsat
-575466500975f7b2e0bdbc552a0711af0164ab2f 17 0
-#2 := false
-#8 := 1::int
-#9 := (= 1::int 1::int)
-#10 := (not #9)
-#35 := (iff #10 false)
-#1 := true
-#30 := (not true)
-#33 := (iff #30 false)
-#34 := [rewrite]: #33
-#31 := (iff #10 #30)
-#28 := (iff #9 true)
-#29 := [rewrite]: #28
-#32 := [monotonicity #29]: #31
-#36 := [trans #32 #34]: #35
-#27 := [asserted]: #10
-[mp #27 #36]: false
-unsat
-2c1b55c23f4e7de8da8d5f6f9bfa461e094d5fdc 319 0
+747cc264821ac8db5ad7ac37788ade0f4e407c6a 319 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -24986,83 +24924,51 @@
 #507 := [unit-resolution #506 #504]: #623
 [th-lemma #507 #516 #163 #162]: false
 unsat
-a2fa5e02114a58b8161c5f17b5db7f1bd8de21cc 34 0
-#2 := false
-#8 := 1::int
-#9 := (- 1::int)
-#10 := (= #9 1::int)
+ee051bde3c817c0890ce724f834fd4253b261c0e 17 0
+#2 := false
+#8 := 0::int
+#9 := (= 0::int 0::int)
+#10 := (not #9)
+#35 := (iff #10 false)
+#1 := true
+#30 := (not true)
+#33 := (iff #30 false)
+#34 := [rewrite]: #33
+#31 := (iff #10 #30)
+#28 := (iff #9 true)
+#29 := [rewrite]: #28
+#32 := [monotonicity #29]: #31
+#36 := [trans #32 #34]: #35
+#27 := [asserted]: #10
+[mp #27 #36]: false
+unsat
+28a8e8694abd02c43e1fd53f8a8f970f52a27053 25 0
+#2 := false
+#8 := 0::int
+#9 := (- 0::int)
+#10 := (= 0::int #9)
 #11 := (not #10)
-#12 := (not #11)
-#52 := (iff #12 false)
-#1 := true
-#47 := (not true)
-#50 := (iff #47 false)
-#51 := [rewrite]: #50
-#48 := (iff #12 #47)
-#45 := (iff #11 true)
-#40 := (not false)
-#43 := (iff #40 true)
-#44 := [rewrite]: #43
-#41 := (iff #11 #40)
-#38 := (iff #10 false)
-#30 := -1::int
-#33 := (= -1::int 1::int)
-#36 := (iff #33 false)
-#37 := [rewrite]: #36
-#34 := (iff #10 #33)
-#31 := (= #9 -1::int)
-#32 := [rewrite]: #31
-#35 := [monotonicity #32]: #34
-#39 := [trans #35 #37]: #38
-#42 := [monotonicity #39]: #41
-#46 := [trans #42 #44]: #45
-#49 := [monotonicity #46]: #48
-#53 := [trans #49 #51]: #52
-#29 := [asserted]: #12
-[mp #29 #53]: false
-unsat
-833da25c34dad32196cafeb37ee24e9c4b09f5e6 40 0
-#2 := false
-#12 := 567::int
-#10 := 345::int
-#8 := 123::int
-#9 := (- 123::int)
-#11 := (+ #9 345::int)
-#13 := (< #11 567::int)
-#14 := (not #13)
-#58 := (iff #14 false)
-#38 := 222::int
-#43 := (< 222::int 567::int)
-#46 := (not #43)
-#56 := (iff #46 false)
-#1 := true
-#51 := (not true)
-#54 := (iff #51 false)
-#55 := [rewrite]: #54
-#52 := (iff #46 #51)
-#49 := (iff #43 true)
-#50 := [rewrite]: #49
-#53 := [monotonicity #50]: #52
-#57 := [trans #53 #55]: #56
-#47 := (iff #14 #46)
-#44 := (iff #13 #43)
-#41 := (= #11 222::int)
-#32 := -123::int
-#35 := (+ -123::int 345::int)
-#39 := (= #35 222::int)
-#40 := [rewrite]: #39
-#36 := (= #11 #35)
-#33 := (= #9 -123::int)
-#34 := [rewrite]: #33
-#37 := [monotonicity #34]: #36
-#42 := [trans #37 #40]: #41
-#45 := [monotonicity #42]: #44
-#48 := [monotonicity #45]: #47
-#59 := [trans #48 #57]: #58
-#31 := [asserted]: #14
-[mp #31 #59]: false
-unsat
-b1d5ad1c199444dbf6fe73759c2c90d7c60b146e 325 0
+#43 := (iff #11 false)
+#1 := true
+#38 := (not true)
+#41 := (iff #38 false)
+#42 := [rewrite]: #41
+#39 := (iff #11 #38)
+#36 := (iff #10 true)
+#31 := (= 0::int 0::int)
+#34 := (iff #31 true)
+#35 := [rewrite]: #34
+#32 := (iff #10 #31)
+#29 := (= #9 0::int)
+#30 := [rewrite]: #29
+#33 := [monotonicity #30]: #32
+#37 := [trans #33 #35]: #36
+#40 := [monotonicity #37]: #39
+#44 := [trans #40 #42]: #43
+#28 := [asserted]: #11
+[mp #28 #44]: false
+unsat
+0df3e9ed226dfff3cefc71e4bc79cb937d7b5379 325 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -25388,38 +25294,60 @@
 #515 := [th-lemma]: #519
 [unit-resolution #515 #510 #517]: false
 unsat
-94a3c69e40ab8834fda1414aac36766b6e6d0448 30 0
-#2 := false
-#10 := 2345678901::int
-#8 := 123456789::int
-#9 := (- 123456789::int)
-#11 := (< #9 2345678901::int)
+7e2eed6546d767248580207671baf3c1fef46bda 17 0
+#2 := false
+#8 := 1::int
+#9 := (= 1::int 1::int)
+#10 := (not #9)
+#35 := (iff #10 false)
+#1 := true
+#30 := (not true)
+#33 := (iff #30 false)
+#34 := [rewrite]: #33
+#31 := (iff #10 #30)
+#28 := (iff #9 true)
+#29 := [rewrite]: #28
+#32 := [monotonicity #29]: #31
+#36 := [trans #32 #34]: #35
+#27 := [asserted]: #10
+[mp #27 #36]: false
+unsat
+83be50b0dfcaa8788a3a347c206dfe65b71396c0 34 0
+#2 := false
+#8 := 1::int
+#9 := (- 1::int)
+#10 := (= #9 1::int)
+#11 := (not #10)
 #12 := (not #11)
-#48 := (iff #12 false)
-#30 := -123456789::int
-#33 := (< -123456789::int 2345678901::int)
-#36 := (not #33)
-#46 := (iff #36 false)
-#1 := true
-#41 := (not true)
-#44 := (iff #41 false)
-#45 := [rewrite]: #44
-#42 := (iff #36 #41)
-#39 := (iff #33 true)
-#40 := [rewrite]: #39
-#43 := [monotonicity #40]: #42
-#47 := [trans #43 #45]: #46
-#37 := (iff #12 #36)
-#34 := (iff #11 #33)
-#31 := (= #9 -123456789::int)
+#52 := (iff #12 false)
+#1 := true
+#47 := (not true)
+#50 := (iff #47 false)
+#51 := [rewrite]: #50
+#48 := (iff #12 #47)
+#45 := (iff #11 true)
+#40 := (not false)
+#43 := (iff #40 true)
+#44 := [rewrite]: #43
+#41 := (iff #11 #40)
+#38 := (iff #10 false)
+#30 := -1::int
+#33 := (= -1::int 1::int)
+#36 := (iff #33 false)
+#37 := [rewrite]: #36
+#34 := (iff #10 #33)
+#31 := (= #9 -1::int)
 #32 := [rewrite]: #31
 #35 := [monotonicity #32]: #34
-#38 := [monotonicity #35]: #37
-#49 := [trans #38 #47]: #48
+#39 := [trans #35 #37]: #38
+#42 := [monotonicity #39]: #41
+#46 := [trans #42 #44]: #45
+#49 := [monotonicity #46]: #48
+#53 := [trans #49 #51]: #52
 #29 := [asserted]: #12
-[mp #29 #49]: false
-unsat
-a489de1c5d2012bec455302dfb4702c1a1df77d2 38 0
+[mp #29 #53]: false
+unsat
+87afea5c9ab9449c41123c8fdd4e20f06a72b155 38 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -25458,61 +25386,79 @@
 #228 := [unit-resolution #313 #154]: #144
 [unit-resolution #228 #155]: false
 unsat
-44da310bca35772c7c4ab7b6f9468b0cf95baf9e 26 0
-#2 := false
-decl f3 :: int
-#8 := f3
-#9 := 0::int
-#10 := (+ f3 0::int)
-#11 := (= #10 f3)
+6b06bc907860e099747eaf937729c46239164204 40 0
+#2 := false
+#12 := 567::int
+#10 := 345::int
+#8 := 123::int
+#9 := (- 123::int)
+#11 := (+ #9 345::int)
+#13 := (< #11 567::int)
+#14 := (not #13)
+#58 := (iff #14 false)
+#38 := 222::int
+#43 := (< 222::int 567::int)
+#46 := (not #43)
+#56 := (iff #46 false)
+#1 := true
+#51 := (not true)
+#54 := (iff #51 false)
+#55 := [rewrite]: #54
+#52 := (iff #46 #51)
+#49 := (iff #43 true)
+#50 := [rewrite]: #49
+#53 := [monotonicity #50]: #52
+#57 := [trans #53 #55]: #56
+#47 := (iff #14 #46)
+#44 := (iff #13 #43)
+#41 := (= #11 222::int)
+#32 := -123::int
+#35 := (+ -123::int 345::int)
+#39 := (= #35 222::int)
+#40 := [rewrite]: #39
+#36 := (= #11 #35)
+#33 := (= #9 -123::int)
+#34 := [rewrite]: #33
+#37 := [monotonicity #34]: #36
+#42 := [trans #37 #40]: #41
+#45 := [monotonicity #42]: #44
+#48 := [monotonicity #45]: #47
+#59 := [trans #48 #57]: #58
+#31 := [asserted]: #14
+[mp #31 #59]: false
+unsat
+b28c9714ddda449b19d3e58f8860da63f62b1deb 30 0
+#2 := false
+#10 := 2345678901::int
+#8 := 123456789::int
+#9 := (- 123456789::int)
+#11 := (< #9 2345678901::int)
 #12 := (not #11)
-#43 := (iff #12 false)
-#1 := true
-#38 := (not true)
-#41 := (iff #38 false)
-#42 := [rewrite]: #41
-#39 := (iff #12 #38)
-#36 := (iff #11 true)
-#31 := (= f3 f3)
-#34 := (iff #31 true)
-#35 := [rewrite]: #34
-#32 := (iff #11 #31)
-#30 := [rewrite]: #11
-#33 := [monotonicity #30]: #32
-#37 := [trans #33 #35]: #36
-#40 := [monotonicity #37]: #39
-#44 := [trans #40 #42]: #43
+#48 := (iff #12 false)
+#30 := -123456789::int
+#33 := (< -123456789::int 2345678901::int)
+#36 := (not #33)
+#46 := (iff #36 false)
+#1 := true
+#41 := (not true)
+#44 := (iff #41 false)
+#45 := [rewrite]: #44
+#42 := (iff #36 #41)
+#39 := (iff #33 true)
+#40 := [rewrite]: #39
+#43 := [monotonicity #40]: #42
+#47 := [trans #43 #45]: #46
+#37 := (iff #12 #36)
+#34 := (iff #11 #33)
+#31 := (= #9 -123456789::int)
+#32 := [rewrite]: #31
+#35 := [monotonicity #32]: #34
+#38 := [monotonicity #35]: #37
+#49 := [trans #38 #47]: #48
 #29 := [asserted]: #12
-[mp #29 #44]: false
-unsat
-fed373ed1a62868b78e70bd0d9a3428669ee5457 26 0
-#2 := false
-decl f3 :: int
-#9 := f3
-#8 := 0::int
-#10 := (+ 0::int f3)
-#11 := (= #10 f3)
-#12 := (not #11)
-#43 := (iff #12 false)
-#1 := true
-#38 := (not true)
-#41 := (iff #38 false)
-#42 := [rewrite]: #41
-#39 := (iff #12 #38)
-#36 := (iff #11 true)
-#31 := (= f3 f3)
-#34 := (iff #31 true)
-#35 := [rewrite]: #34
-#32 := (iff #11 #31)
-#30 := [rewrite]: #11
-#33 := [monotonicity #30]: #32
-#37 := [trans #33 #35]: #36
-#40 := [monotonicity #37]: #39
-#44 := [trans #40 #42]: #43
-#29 := [asserted]: #12
-[mp #29 #44]: false
-unsat
-957a81798a07625d9f9bb6cae6421523a9942b09 70 0
+[mp #29 #49]: false
+unsat
+c7398895db207a7bb660baa83c993733723b339a 70 0
 #2 := false
 #149 := -1::int
 decl f4 :: (-> S2 int)
@@ -25583,37 +25529,34 @@
 #333 := [unit-resolution #247 #172]: #332
 [unit-resolution #333 #352 #253]: false
 unsat
-bb9d75a7a3abc7f60dd441b4f982645b6039e03e 29 0
+fbc565374e3b4fadcdcd336b454d25bde6467984 26 0
 #2 := false
 decl f3 :: int
 #8 := f3
-decl f4 :: int
-#9 := f4
-#11 := (+ f4 f3)
-#10 := (+ f3 f4)
-#12 := (= #10 #11)
-#13 := (not #12)
-#45 := (iff #13 false)
-#1 := true
-#40 := (not true)
-#43 := (iff #40 false)
-#44 := [rewrite]: #43
-#41 := (iff #13 #40)
-#38 := (iff #12 true)
-#33 := (= #10 #10)
-#36 := (iff #33 true)
-#37 := [rewrite]: #36
-#34 := (iff #12 #33)
-#31 := (= #11 #10)
-#32 := [rewrite]: #31
-#35 := [monotonicity #32]: #34
-#39 := [trans #35 #37]: #38
-#42 := [monotonicity #39]: #41
-#46 := [trans #42 #44]: #45
-#30 := [asserted]: #13
-[mp #30 #46]: false
-unsat
-7a80c4532f5787abddc50ad2e7bc9838390acb73 11 0
+#9 := 0::int
+#10 := (+ f3 0::int)
+#11 := (= #10 f3)
+#12 := (not #11)
+#43 := (iff #12 false)
+#1 := true
+#38 := (not true)
+#41 := (iff #38 false)
+#42 := [rewrite]: #41
+#39 := (iff #12 #38)
+#36 := (iff #11 true)
+#31 := (= f3 f3)
+#34 := (iff #31 true)
+#35 := [rewrite]: #34
+#32 := (iff #11 #31)
+#30 := [rewrite]: #11
+#33 := [monotonicity #30]: #32
+#37 := [trans #33 #35]: #36
+#40 := [monotonicity #37]: #39
+#44 := [trans #40 #42]: #43
+#29 := [asserted]: #12
+[mp #29 #44]: false
+unsat
+1c6447ae3efd555f314253453337411963c9b538 11 0
 #2 := false
 decl f4 :: (-> S2 int)
 decl f5 :: S2
@@ -25625,41 +25568,34 @@
 #129 := [asserted]: #27
 [mp #129 #133]: false
 unsat
-698ca3e8d5433877845f98d57033a6d63af62497 33 0
-#2 := false
-decl f5 :: int
-#10 := f5
-decl f4 :: int
-#9 := f4
+1e80490820921041707f27ae0a0d7240e7d720ab 26 0
+#2 := false
 decl f3 :: int
-#8 := f3
-#13 := (+ f3 f4)
-#14 := (+ #13 f5)
-#11 := (+ f4 f5)
-#12 := (+ f3 #11)
-#15 := (= #12 #14)
-#16 := (not #15)
-#48 := (iff #16 false)
-#1 := true
-#43 := (not true)
-#46 := (iff #43 false)
-#47 := [rewrite]: #46
-#44 := (iff #16 #43)
-#41 := (iff #15 true)
-#36 := (= #12 #12)
-#39 := (iff #36 true)
-#40 := [rewrite]: #39
-#37 := (iff #15 #36)
-#34 := (= #14 #12)
+#9 := f3
+#8 := 0::int
+#10 := (+ 0::int f3)
+#11 := (= #10 f3)
+#12 := (not #11)
+#43 := (iff #12 false)
+#1 := true
+#38 := (not true)
+#41 := (iff #38 false)
+#42 := [rewrite]: #41
+#39 := (iff #12 #38)
+#36 := (iff #11 true)
+#31 := (= f3 f3)
+#34 := (iff #31 true)
 #35 := [rewrite]: #34
-#38 := [monotonicity #35]: #37
-#42 := [trans #38 #40]: #41
-#45 := [monotonicity #42]: #44
-#49 := [trans #45 #47]: #48
-#33 := [asserted]: #16
-[mp #33 #49]: false
-unsat
-a5e0b28483c053128bc0be113d20a82250433b74 54 0
+#32 := (iff #11 #31)
+#30 := [rewrite]: #11
+#33 := [monotonicity #30]: #32
+#37 := [trans #33 #35]: #36
+#40 := [monotonicity #37]: #39
+#44 := [trans #40 #42]: #43
+#29 := [asserted]: #12
+[mp #29 #44]: false
+unsat
+efe17b9041c87fa89222f21112652ecefaf9bedd 54 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -25714,53 +25650,37 @@
 #171 := [and-elim #170]: #144
 [th-lemma #171 #172 #173]: false
 unsat
-41dc588e082dd0bed2354a8e37e9f3c6c05151c1 45 0
-#2 := false
+71f4e35d43eaaeb0679a8b9fedb7bbbab02c4bce 29 0
+#2 := false
+decl f3 :: int
+#8 := f3
 decl f4 :: int
 #9 := f4
-#13 := (- f4)
-decl f3 :: int
-#8 := f3
-#14 := (= f3 #13)
-#11 := 0::int
+#11 := (+ f4 f3)
 #10 := (+ f3 f4)
-#12 := (= #10 0::int)
-#15 := (iff #12 #14)
-#16 := (not #15)
-#62 := (iff #16 false)
-#47 := (not #12)
-#34 := -1::int
-#35 := (* -1::int f4)
-#38 := (= f3 #35)
-#48 := (iff #38 #47)
-#60 := (iff #48 false)
-#55 := (iff #12 #47)
-#58 := (iff #55 false)
-#59 := [rewrite]: #58
-#56 := (iff #48 #55)
-#53 := (iff #38 #12)
-#54 := [rewrite]: #53
-#57 := [monotonicity #54]: #56
-#61 := [trans #57 #59]: #60
-#51 := (iff #16 #48)
-#41 := (iff #12 #38)
-#44 := (not #41)
-#49 := (iff #44 #48)
-#50 := [rewrite]: #49
-#45 := (iff #16 #44)
-#42 := (iff #15 #41)
-#39 := (iff #14 #38)
-#36 := (= #13 #35)
+#12 := (= #10 #11)
+#13 := (not #12)
+#45 := (iff #13 false)
+#1 := true
+#40 := (not true)
+#43 := (iff #40 false)
+#44 := [rewrite]: #43
+#41 := (iff #13 #40)
+#38 := (iff #12 true)
+#33 := (= #10 #10)
+#36 := (iff #33 true)
 #37 := [rewrite]: #36
-#40 := [monotonicity #37]: #39
-#43 := [monotonicity #40]: #42
-#46 := [monotonicity #43]: #45
-#52 := [trans #46 #50]: #51
-#63 := [trans #52 #61]: #62
-#33 := [asserted]: #16
-[mp #33 #63]: false
-unsat
-4d82a9a048129e417a9e0a1825ce1ac4532cabd0 55 0
+#34 := (iff #12 #33)
+#31 := (= #11 #10)
+#32 := [rewrite]: #31
+#35 := [monotonicity #32]: #34
+#39 := [trans #35 #37]: #38
+#42 := [monotonicity #39]: #41
+#46 := [trans #42 #44]: #45
+#30 := [asserted]: #13
+[mp #30 #46]: false
+unsat
+c6c3e4476b55ace179a4bf0db3bd85166dd656f0 55 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -25816,7 +25736,41 @@
 #172 := [and-elim #171]: #144
 [th-lemma #172 #173 #174]: false
 unsat
-839ca15e4db302dc5cd29e9aa43868c766ec1b81 55 0
+29b7b3cf808acec0133f90b0ff01d3741beb5a05 33 0
+#2 := false
+decl f5 :: int
+#10 := f5
+decl f4 :: int
+#9 := f4
+decl f3 :: int
+#8 := f3
+#13 := (+ f3 f4)
+#14 := (+ #13 f5)
+#11 := (+ f4 f5)
+#12 := (+ f3 #11)
+#15 := (= #12 #14)
+#16 := (not #15)
+#48 := (iff #16 false)
+#1 := true
+#43 := (not true)
+#46 := (iff #43 false)
+#47 := [rewrite]: #46
+#44 := (iff #16 #43)
+#41 := (iff #15 true)
+#36 := (= #12 #12)
+#39 := (iff #36 true)
+#40 := [rewrite]: #39
+#37 := (iff #15 #36)
+#34 := (= #14 #12)
+#35 := [rewrite]: #34
+#38 := [monotonicity #35]: #37
+#42 := [trans #38 #40]: #41
+#45 := [monotonicity #42]: #44
+#49 := [trans #45 #47]: #48
+#33 := [asserted]: #16
+[mp #33 #49]: false
+unsat
+8b0fe59ad928398852287cdf2c2184de1f57bfbd 55 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -25872,7 +25826,53 @@
 #173 := [and-elim #171]: #152
 [th-lemma #173 #172 #174]: false
 unsat
-d7837998c869430b9e700142d2b377bead7796dc 26 0
+4237cbb86bd8822b359c36bc821360aed38710bb 45 0
+#2 := false
+decl f4 :: int
+#9 := f4
+#13 := (- f4)
+decl f3 :: int
+#8 := f3
+#14 := (= f3 #13)
+#11 := 0::int
+#10 := (+ f3 f4)
+#12 := (= #10 0::int)
+#15 := (iff #12 #14)
+#16 := (not #15)
+#62 := (iff #16 false)
+#47 := (not #12)
+#34 := -1::int
+#35 := (* -1::int f4)
+#38 := (= f3 #35)
+#48 := (iff #38 #47)
+#60 := (iff #48 false)
+#55 := (iff #12 #47)
+#58 := (iff #55 false)
+#59 := [rewrite]: #58
+#56 := (iff #48 #55)
+#53 := (iff #38 #12)
+#54 := [rewrite]: #53
+#57 := [monotonicity #54]: #56
+#61 := [trans #57 #59]: #60
+#51 := (iff #16 #48)
+#41 := (iff #12 #38)
+#44 := (not #41)
+#49 := (iff #44 #48)
+#50 := [rewrite]: #49
+#45 := (iff #16 #44)
+#42 := (iff #15 #41)
+#39 := (iff #14 #38)
+#36 := (= #13 #35)
+#37 := [rewrite]: #36
+#40 := [monotonicity #37]: #39
+#43 := [monotonicity #40]: #42
+#46 := [monotonicity #43]: #45
+#52 := [trans #46 #50]: #51
+#63 := [trans #52 #61]: #62
+#33 := [asserted]: #16
+[mp #33 #63]: false
+unsat
+113be911296a33250bbcd43128973cc59f93526e 26 0
 #2 := false
 #8 := 1::int
 #9 := (- 1::int)
@@ -25899,7 +25899,7 @@
 #28 := [asserted]: #11
 [mp #28 #45]: false
 unsat
-2fa07586f302aa9750784686f2cfa4df7ec4584e 61 0
+f6ff37f2a66568ce60ecd5249eff25718c85c238 61 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -25961,7 +25961,7 @@
 #179 := [and-elim #177]: #149
 [th-lemma #179 #178 #180]: false
 unsat
-70a72eb40efd415a7fc201441ac2d390324dc85f 26 0
+cec95d65322be695abf9c2181f05ec8f90e8a935 26 0
 #2 := false
 #8 := 3::int
 #9 := (- 3::int)
@@ -25988,7 +25988,7 @@
 #28 := [asserted]: #11
 [mp #28 #45]: false
 unsat
-fe16712a1fa51f4a62675a12f177489494d4ff85 53 0
+dab3885ba8215d926ee3c6f413de786f19602704 53 0
 #2 := false
 #13 := 0::int
 decl f4 :: (-> S2 int)
@@ -26042,7 +26042,7 @@
 #171 := [and-elim #169]: #149
 [th-lemma #171 #170 #172]: false
 unsat
-c4720018b6df523588840d966fa6b5f79e529106 58 0
+9d1587620b1ac03e716760e9b77670cdcbc0d869 58 0
 #2 := false
 decl f3 :: int
 #8 := f3
@@ -26101,7 +26101,7 @@
 #31 := [asserted]: #14
 [mp #31 #77]: false
 unsat
-c156df2cdcaafc0712bbd7f760cf7c1135b2a278 61 0
+2fe4017173baaf767c6629bd6852a7b438932e50 61 0
 #2 := false
 #8 := 0::int
 decl f3 :: int
@@ -26163,7 +26163,7 @@
 #31 := [asserted]: #14
 [mp #31 #79]: false
 unsat
-fc81f629d09c01783c65b3ee17baad49669d55bf 26 0
+6f7f580886df4b14f8fb404c5d3a00f03fbd8ee6 26 0
 #2 := false
 decl f3 :: int
 #8 := f3
@@ -26190,7 +26190,7 @@
 #29 := [asserted]: #12
 [mp #29 #44]: false
 unsat
-1c28009871674ce12da75bf1dced4812d4d59e07 61 0
+fdb98420125ded457439e02e837bc03d7148c23c 61 0
 #2 := false
 decl f3 :: int
 #8 := f3
@@ -26252,7 +26252,7 @@
 #31 := [asserted]: #14
 [mp #31 #79]: false
 unsat
-aec51136d021a387f2d6872e725f19b898f18ef5 32 0
+445783642ee7433013df57b7e4cef00ffeb157e0 32 0
 #2 := false
 decl f3 :: int
 #9 := f3
@@ -26285,34 +26285,7 @@
 #30 := [asserted]: #13
 [mp #30 #50]: false
 unsat
-65a9f6762bf7c73e050776f2f97205392ade9eb8 26 0
-#2 := false
-#9 := 0::int
-decl f3 :: int
-#8 := f3
-#10 := (* f3 0::int)
-#11 := (= #10 0::int)
-#12 := (not #11)
-#43 := (iff #12 false)
-#1 := true
-#38 := (not true)
-#41 := (iff #38 false)
-#42 := [rewrite]: #41
-#39 := (iff #12 #38)
-#36 := (iff #11 true)
-#31 := (= 0::int 0::int)
-#34 := (iff #31 true)
-#35 := [rewrite]: #34
-#32 := (iff #11 #31)
-#30 := [rewrite]: #11
-#33 := [monotonicity #30]: #32
-#37 := [trans #33 #35]: #36
-#40 := [monotonicity #37]: #39
-#44 := [trans #40 #42]: #43
-#29 := [asserted]: #12
-[mp #29 #44]: false
-unsat
-31fc2c351446233f2061fde4a4592b401c54f862 64 0
+ed57db9b5bc45b814efcbe55950db276a0ae6227 64 0
 #2 := false
 #12 := 0::int
 decl f4 :: int
@@ -26377,7 +26350,34 @@
 #32 := [asserted]: #15
 [mp #32 #81]: false
 unsat
-592736b964503a2e2a8b3d310866adf35fdeb70d 26 0
+5fea704d847c1f572f04828761c6aeed07320331 26 0
+#2 := false
+#9 := 0::int
+decl f3 :: int
+#8 := f3
+#10 := (* f3 0::int)
+#11 := (= #10 0::int)
+#12 := (not #11)
+#43 := (iff #12 false)
+#1 := true
+#38 := (not true)
+#41 := (iff #38 false)
+#42 := [rewrite]: #41
+#39 := (iff #12 #38)
+#36 := (iff #11 true)
+#31 := (= 0::int 0::int)
+#34 := (iff #31 true)
+#35 := [rewrite]: #34
+#32 := (iff #11 #31)
+#30 := [rewrite]: #11
+#33 := [monotonicity #30]: #32
+#37 := [trans #33 #35]: #36
+#40 := [monotonicity #37]: #39
+#44 := [trans #40 #42]: #43
+#29 := [asserted]: #12
+[mp #29 #44]: false
+unsat
+afeb47d1fabcd35b9434330dd3b684867663bcd6 26 0
 #2 := false
 #8 := 0::int
 decl f3 :: int
@@ -26404,7 +26404,7 @@
 #29 := [asserted]: #12
 [mp #29 #44]: false
 unsat
-7e5077e88974e2fa3da11f2fc124b2fc85a4f520 44 0
+5f6eb6ae429716b4776e5fd2a14d9da3158d991d 44 0
 #2 := false
 decl f3 :: int
 #8 := f3
@@ -26449,7 +26449,7 @@
 #31 := [asserted]: #14
 [mp #31 #61]: false
 unsat
-89e44e496d1c9e19d85ee56ab3fb92079351f1b0 26 0
+1eeb11e60a6bbbe94fa15811311d2d40ac3f4033 26 0
 #2 := false
 decl f3 :: int
 #8 := f3
@@ -26476,34 +26476,7 @@
 #29 := [asserted]: #12
 [mp #29 #44]: false
 unsat
-38200cf17f447eb7490b14a7927d61babf42be2c 26 0
-#2 := false
-decl f3 :: int
-#9 := f3
-#8 := 1::int
-#10 := (* 1::int f3)
-#11 := (= #10 f3)
-#12 := (not #11)
-#43 := (iff #12 false)
-#1 := true
-#38 := (not true)
-#41 := (iff #38 false)
-#42 := [rewrite]: #41
-#39 := (iff #12 #38)
-#36 := (iff #11 true)
-#31 := (= f3 f3)
-#34 := (iff #31 true)
-#35 := [rewrite]: #34
-#32 := (iff #11 #31)
-#30 := [rewrite]: #11
-#33 := [monotonicity #30]: #32
-#37 := [trans #33 #35]: #36
-#40 := [monotonicity #37]: #39
-#44 := [trans #40 #42]: #43
-#29 := [asserted]: #12
-[mp #29 #44]: false
-unsat
-891b65b932309e97c69155ee809ef85f6496b3c5 42 0
+fd6e7c25e63ac8e70326ced7855970dd3a736cfa 42 0
 #2 := false
 decl f3 :: int
 #8 := f3
@@ -26546,48 +26519,34 @@
 #31 := [asserted]: #14
 [mp #31 #59]: false
 unsat
-f1f03cdf8e0332171bfb331e70236cd578ef1b1a 40 0
+08503fa6172915df238b523388ddb33a24fd4cb7 26 0
 #2 := false
 decl f3 :: int
-#8 := f3
-#12 := (- f3)
-#9 := 1::int
-#10 := (- 1::int)
-#11 := (* f3 #10)
-#13 := (= #11 #12)
-#14 := (not #13)
-#57 := (iff #14 false)
-#1 := true
-#52 := (not true)
-#55 := (iff #52 false)
-#56 := [rewrite]: #55
-#53 := (iff #14 #52)
-#50 := (iff #13 true)
-#32 := -1::int
-#38 := (* -1::int f3)
-#45 := (= #38 #38)
-#48 := (iff #45 true)
-#49 := [rewrite]: #48
-#46 := (iff #13 #45)
-#43 := (= #12 #38)
-#44 := [rewrite]: #43
-#41 := (= #11 #38)
-#35 := (* f3 -1::int)
-#39 := (= #35 #38)
-#40 := [rewrite]: #39
-#36 := (= #11 #35)
-#33 := (= #10 -1::int)
-#34 := [rewrite]: #33
-#37 := [monotonicity #34]: #36
-#42 := [trans #37 #40]: #41
-#47 := [monotonicity #42 #44]: #46
-#51 := [trans #47 #49]: #50
-#54 := [monotonicity #51]: #53
-#58 := [trans #54 #56]: #57
-#31 := [asserted]: #14
-[mp #31 #58]: false
-unsat
-e90209aecaafc9e5a8d65cc3bfe9923d664d1180 48 0
+#9 := f3
+#8 := 1::int
+#10 := (* 1::int f3)
+#11 := (= #10 f3)
+#12 := (not #11)
+#43 := (iff #12 false)
+#1 := true
+#38 := (not true)
+#41 := (iff #38 false)
+#42 := [rewrite]: #41
+#39 := (iff #12 #38)
+#36 := (iff #11 true)
+#31 := (= f3 f3)
+#34 := (iff #31 true)
+#35 := [rewrite]: #34
+#32 := (iff #11 #31)
+#30 := [rewrite]: #11
+#33 := [monotonicity #30]: #32
+#37 := [trans #33 #35]: #36
+#40 := [monotonicity #37]: #39
+#44 := [trans #40 #42]: #43
+#29 := [asserted]: #12
+[mp #29 #44]: false
+unsat
+250ddfb8ca251f84a346d955cf6715564ce90b7a 48 0
 #2 := false
 decl f5 :: int
 #11 := f5
@@ -26636,7 +26595,48 @@
 #33 := [asserted]: #16
 [mp #33 #64]: false
 unsat
-dcb91b564372ef4df7bba10a66d7a6eecfdd1891 35 0
+2c2b089e4b5c6cb37aa179a9f71ce56ba7d47fd2 40 0
+#2 := false
+decl f3 :: int
+#8 := f3
+#12 := (- f3)
+#9 := 1::int
+#10 := (- 1::int)
+#11 := (* f3 #10)
+#13 := (= #11 #12)
+#14 := (not #13)
+#57 := (iff #14 false)
+#1 := true
+#52 := (not true)
+#55 := (iff #52 false)
+#56 := [rewrite]: #55
+#53 := (iff #14 #52)
+#50 := (iff #13 true)
+#32 := -1::int
+#38 := (* -1::int f3)
+#45 := (= #38 #38)
+#48 := (iff #45 true)
+#49 := [rewrite]: #48
+#46 := (iff #13 #45)
+#43 := (= #12 #38)
+#44 := [rewrite]: #43
+#41 := (= #11 #38)
+#35 := (* f3 -1::int)
+#39 := (= #35 #38)
+#40 := [rewrite]: #39
+#36 := (= #11 #35)
+#33 := (= #10 -1::int)
+#34 := [rewrite]: #33
+#37 := [monotonicity #34]: #36
+#42 := [trans #37 #40]: #41
+#47 := [monotonicity #42 #44]: #46
+#51 := [trans #47 #49]: #50
+#54 := [monotonicity #51]: #53
+#58 := [trans #54 #56]: #57
+#31 := [asserted]: #14
+[mp #31 #58]: false
+unsat
+df5f08c8b5312cfbfbb1f5bf1a74e868b8d5f32a 35 0
 #2 := false
 decl f3 :: int
 #10 := f3
@@ -26672,7 +26672,7 @@
 #31 := [asserted]: #14
 [mp #31 #53]: false
 unsat
-dc9c4895f383c2bc2209a55e4f8478193dad358d 244 0
+56201244c1c31fc8628969c3f353db10a7f712f1 244 0
 #2 := false
 #11 := 0::int
 decl f3 :: (-> int int int)
@@ -26917,7 +26917,7 @@
 #683 := [mp #696 #682]: #695
 [unit-resolution #683 #742 #167]: false
 unsat
-e58e9441ca33f62ea126f129a1302457840ee037 28 0
+738d46bed422c47f454cfba0aef7d0d41195018e 28 0
 #2 := false
 #8 := 3::int
 decl f3 :: int
@@ -26946,7 +26946,7 @@
 #30 := [asserted]: #13
 [mp #30 #46]: false
 unsat
-1a424f78adbf3f5b91865b15057a1edb6fd9f0c7 268 0
+b55995757cc7c0e54ef05dc5c7ed8997164e973f 268 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -27215,7 +27215,7 @@
 #678 := [mp #538 #684]: #696
 [unit-resolution #678 #749 #167]: false
 unsat
-6b27a316bc3cb1671937528bbb2aa4c5f16dd00c 257 0
+fa3f22f8699f818222604ac64aca7fd59a22aa11 257 0
 #2 := false
 #11 := 0::int
 decl f3 :: (-> int int int)
@@ -27473,7 +27473,7 @@
 #673 := [mp #687 #520]: #680
 [unit-resolution #673 #743 #168]: false
 unsat
-d05667c302799334d71c6767e44df657452bd738 276 0
+706350a91145c463c7f48c3bf9879c01a9686cec 276 0
 #2 := false
 decl f4 :: (-> int int int)
 #11 := 0::int
@@ -27750,7 +27750,7 @@
 #683 := [mp #679 #677]: #536
 [unit-resolution #683 #747 #177]: false
 unsat
-ac9468ec7d34e56bdf0ee161b89fe3a4afadc438 281 0
+f347a4adcb7fcad632a20b1470ae003828031f6b 281 0
 #2 := false
 #11 := 0::int
 decl f3 :: (-> int int int)
@@ -28032,7 +28032,7 @@
 #667 := [mp #573 #670]: #572
 [unit-resolution #667 #742 #168]: false
 unsat
-9c82ae76cec416fd404b909bc700a14311ef9064 281 0
+9f3a2d1e5184a5f18507c2cbcaba7052c2f44041 281 0
 #2 := false
 #38 := 1::int
 decl f3 :: (-> int int int)
@@ -28314,7 +28314,7 @@
 #667 := [mp #573 #670]: #572
 [unit-resolution #667 #742 #168]: false
 unsat
-07a66f14187da887bd1f0f4bb16d6c9a7023aeaf 298 0
+6a680acca8e4fb44be34c90aae6eeffc77e0f409 298 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -28613,7 +28613,7 @@
 #574 := [mp #554 #573]: #666
 [unit-resolution #574 #749 #168]: false
 unsat
-892e25c8bdf423f86a8231d77f83b5c173fd91c0 292 0
+724afb6ea0d36c4f4d7be70cf80c093f76cab778 292 0
 #2 := false
 #38 := 3::int
 decl f3 :: (-> int int int)
@@ -28906,7 +28906,7 @@
 #660 := [mp #653 #664]: #659
 [unit-resolution #660 #743 #169]: false
 unsat
-ed1abab981b05d680a1c92a497bf3305ff9e1f16 296 0
+3d7d433cca19abbbfd4e4b784dad4abf4567789e 296 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -29203,7 +29203,7 @@
 #575 := [mp #569 #574]: #669
 [unit-resolution #575 #749 #168]: false
 unsat
-dcc2c3c66de3e673b0cfeb392eb7d2e8ec04caf3 335 0
+92529b3476781962ca1626bb5307f530f9b5594f 335 0
 #2 := false
 decl f3 :: (-> int int int)
 #39 := 1::int
@@ -29539,7 +29539,7 @@
 #500 := [mp #530 #497]: #170
 [unit-resolution #178 #500]: false
 unsat
-52cf99958a1402707eac2a505ecb8d6adc72de1a 307 0
+7eb8a7aa41cf540c32626b3af4825722acd864ac 307 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -29847,7 +29847,7 @@
 #652 := [mp #668 #650]: #578
 [unit-resolution #652 #750 #169]: false
 unsat
-2a60c54232ee9900c0a7254451730bed52200c08 306 0
+bcd6aa81c95602060c016443dc50a08e0f15fea6 306 0
 #2 := false
 #11 := 0::int
 decl f3 :: (-> int int int)
@@ -30154,316 +30154,7 @@
 #682 := [mp #588 #685]: #587
 [unit-resolution #682 #757 #193]: false
 unsat
-6d75bf2e8df3400e173e94c70d533cd85e2830a4 308 0
-#2 := false
-#11 := 0::int
-decl f5 :: int
-#38 := f5
-#732 := (= f5 0::int)
-#573 := (not #732)
-#394 := (<= f5 0::int)
-#720 := (not #394)
-#388 := (>= f5 0::int)
-#377 := (not #388)
-#688 := (or #377 #720 #732)
-#575 := (not #688)
-#66 := -1::int
-#408 := (* -1::int f5)
-#700 := (mod #408 -1::int)
-decl f4 :: (-> int int int)
-#39 := 1::int
-#40 := (f4 f5 1::int)
-#698 := (+ #40 #700)
-#703 := (= #698 0::int)
-#41 := (= #40 0::int)
-#520 := (ite #688 #41 #703)
-#9 := (:var 0 int)
-#8 := (:var 1 int)
-#29 := (f4 #8 #9)
-#744 := (pattern #29)
-#70 := (* -1::int #9)
-#67 := (* -1::int #8)
-#125 := (mod #67 #70)
-#256 := (+ #29 #125)
-#257 := (= #256 0::int)
-#30 := (mod #8 #9)
-#253 := (* -1::int #30)
-#254 := (+ #29 #253)
-#255 := (= #254 0::int)
-#92 := (<= #9 0::int)
-#88 := (<= #8 0::int)
-#195 := (or #88 #92)
-#196 := (not #195)
-#99 := (>= #8 0::int)
-#187 := (or #92 #99)
-#188 := (not #187)
-#202 := (or #188 #196)
-#258 := (ite #202 #255 #257)
-#252 := (= #29 0::int)
-#12 := (= #8 0::int)
-#259 := (ite #12 #252 #258)
-#251 := (= #8 #29)
-#13 := (= #9 0::int)
-#260 := (ite #13 #251 #259)
-#745 := (forall (vars (?v0 int) (?v1 int)) (:pat #744) #260)
-#263 := (forall (vars (?v0 int) (?v1 int)) #260)
-#748 := (iff #263 #745)
-#746 := (iff #260 #260)
-#747 := [refl]: #746
-#749 := [quant-intro #747]: #748
-#131 := (* -1::int #125)
-#220 := (ite #202 #30 #131)
-#223 := (ite #12 0::int #220)
-#226 := (ite #13 #8 #223)
-#229 := (= #29 #226)
-#232 := (forall (vars (?v0 int) (?v1 int)) #229)
-#264 := (iff #232 #263)
-#261 := (iff #229 #260)
-#262 := [rewrite]: #261
-#265 := [quant-intro #262]: #264
-#100 := (not #99)
-#93 := (not #92)
-#103 := (and #93 #100)
-#89 := (not #88)
-#96 := (and #89 #93)
-#106 := (or #96 #103)
-#151 := (ite #106 #30 #131)
-#154 := (ite #12 0::int #151)
-#157 := (ite #13 #8 #154)
-#160 := (= #29 #157)
-#163 := (forall (vars (?v0 int) (?v1 int)) #160)
-#233 := (iff #163 #232)
-#230 := (iff #160 #229)
-#227 := (= #157 #226)
-#224 := (= #154 #223)
-#221 := (= #151 #220)
-#205 := (iff #106 #202)
-#199 := (or #196 #188)
-#203 := (iff #199 #202)
-#204 := [rewrite]: #203
-#200 := (iff #106 #199)
-#197 := (iff #103 #188)
-#198 := [rewrite]: #197
-#185 := (iff #96 #196)
-#186 := [rewrite]: #185
-#201 := [monotonicity #186 #198]: #200
-#206 := [trans #201 #204]: #205
-#222 := [monotonicity #206]: #221
-#225 := [monotonicity #222]: #224
-#228 := [monotonicity #225]: #227
-#231 := [monotonicity #228]: #230
-#234 := [quant-intro #231]: #233
-#183 := (~ #163 #163)
-#180 := (~ #160 #160)
-#193 := [refl]: #180
-#184 := [nnf-pos #193]: #183
-#23 := (- #9)
-#22 := (- #8)
-#31 := (mod #22 #23)
-#32 := (- #31)
-#16 := (< 0::int #9)
-#18 := (< #8 0::int)
-#19 := (and #18 #16)
-#15 := (< 0::int #8)
-#17 := (and #15 #16)
-#20 := (or #17 #19)
-#33 := (ite #20 #30 #32)
-#34 := (ite #12 0::int #33)
-#35 := (ite #13 #8 #34)
-#36 := (= #29 #35)
-#37 := (forall (vars (?v0 int) (?v1 int)) #36)
-#166 := (iff #37 #163)
-#60 := (and #16 #18)
-#63 := (or #17 #60)
-#136 := (ite #63 #30 #131)
-#139 := (ite #12 0::int #136)
-#142 := (ite #13 #8 #139)
-#145 := (= #29 #142)
-#148 := (forall (vars (?v0 int) (?v1 int)) #145)
-#164 := (iff #148 #163)
-#161 := (iff #145 #160)
-#158 := (= #142 #157)
-#155 := (= #139 #154)
-#152 := (= #136 #151)
-#107 := (iff #63 #106)
-#104 := (iff #60 #103)
-#101 := (iff #18 #100)
-#102 := [rewrite]: #101
-#94 := (iff #16 #93)
-#95 := [rewrite]: #94
-#105 := [monotonicity #95 #102]: #104
-#97 := (iff #17 #96)
-#90 := (iff #15 #89)
-#91 := [rewrite]: #90
-#98 := [monotonicity #91 #95]: #97
-#108 := [monotonicity #98 #105]: #107
-#153 := [monotonicity #108]: #152
-#156 := [monotonicity #153]: #155
-#159 := [monotonicity #156]: #158
-#162 := [monotonicity #159]: #161
-#165 := [quant-intro #162]: #164
-#149 := (iff #37 #148)
-#146 := (iff #36 #145)
-#143 := (= #35 #142)
-#140 := (= #34 #139)
-#137 := (= #33 #136)
-#134 := (= #32 #131)
-#128 := (- #125)
-#132 := (= #128 #131)
-#133 := [rewrite]: #132
-#129 := (= #32 #128)
-#126 := (= #31 #125)
-#71 := (= #23 #70)
-#72 := [rewrite]: #71
-#68 := (= #22 #67)
-#69 := [rewrite]: #68
-#127 := [monotonicity #69 #72]: #126
-#130 := [monotonicity #127]: #129
-#135 := [trans #130 #133]: #134
-#64 := (iff #20 #63)
-#61 := (iff #19 #60)
-#62 := [rewrite]: #61
-#65 := [monotonicity #62]: #64
-#138 := [monotonicity #65 #135]: #137
-#141 := [monotonicity #138]: #140
-#144 := [monotonicity #141]: #143
-#147 := [monotonicity #144]: #146
-#150 := [quant-intro #147]: #149
-#167 := [trans #150 #165]: #166
-#124 := [asserted]: #37
-#168 := [mp #124 #167]: #163
-#194 := [mp~ #168 #184]: #163
-#235 := [mp #194 #234]: #232
-#266 := [mp #235 #265]: #263
-#750 := [mp #266 #749]: #745
-#675 := (not #745)
-#678 := (or #675 #520)
-#324 := (* -1::int 1::int)
-#409 := (mod #408 #324)
-#410 := (+ #40 #409)
-#401 := (= #410 0::int)
-#412 := (mod f5 1::int)
-#413 := (* -1::int #412)
-#414 := (+ #40 #413)
-#411 := (= #414 0::int)
-#415 := (<= 1::int 0::int)
-#729 := (or #394 #415)
-#731 := (not #729)
-#518 := (or #415 #388)
-#725 := (not #518)
-#399 := (or #725 #731)
-#400 := (ite #399 #411 #401)
-#733 := (ite #732 #41 #400)
-#734 := (= f5 #40)
-#735 := (= 1::int 0::int)
-#730 := (ite #735 #734 #733)
-#560 := (or #675 #730)
-#562 := (iff #560 #678)
-#669 := (iff #678 #678)
-#571 := [rewrite]: #669
-#676 := (iff #730 #520)
-#363 := (or #377 #720)
-#697 := (or #363 #732)
-#538 := (ite #697 #41 #703)
-#673 := (iff #538 #520)
-#517 := (iff #697 #688)
-#519 := [rewrite]: #517
-#674 := [monotonicity #519]: #673
-#687 := (iff #730 #538)
-#684 := (ite false #734 #538)
-#680 := (iff #684 #538)
-#686 := [rewrite]: #680
-#685 := (iff #730 #684)
-#682 := (iff #733 #538)
-#694 := (ite #363 #41 #703)
-#695 := (ite #732 #41 #694)
-#539 := (iff #695 #538)
-#540 := [rewrite]: #539
-#696 := (iff #733 #695)
-#689 := (iff #400 #694)
-#692 := (iff #401 #703)
-#702 := (= #410 #698)
-#701 := (= #409 #700)
-#421 := (= #324 -1::int)
-#422 := [rewrite]: #421
-#416 := [monotonicity #422]: #701
-#699 := [monotonicity #416]: #702
-#693 := [monotonicity #699]: #692
-#419 := (iff #411 #41)
-#705 := (= #414 #40)
-#707 := (+ #40 0::int)
-#704 := (= #707 #40)
-#708 := [rewrite]: #704
-#429 := (= #414 #707)
-#330 := (= #413 0::int)
-#711 := (* -1::int 0::int)
-#435 := (= #711 0::int)
-#436 := [rewrite]: #435
-#433 := (= #413 #711)
-#724 := (= #412 0::int)
-#710 := [rewrite]: #724
-#434 := [monotonicity #710]: #433
-#706 := [trans #434 #436]: #330
-#430 := [monotonicity #706]: #429
-#709 := [trans #430 #708]: #705
-#420 := [monotonicity #709]: #419
-#723 := (iff #399 #363)
-#722 := (iff #731 #720)
-#719 := (iff #729 #394)
-#715 := (or #394 false)
-#718 := (iff #715 #394)
-#713 := [rewrite]: #718
-#716 := (iff #729 #715)
-#386 := (iff #415 false)
-#391 := [rewrite]: #386
-#717 := [monotonicity #391]: #716
-#357 := [trans #717 #713]: #719
-#362 := [monotonicity #357]: #722
-#378 := (iff #725 #377)
-#375 := (iff #518 #388)
-#727 := (or false #388)
-#371 := (iff #727 #388)
-#712 := [rewrite]: #371
-#387 := (iff #518 #727)
-#728 := [monotonicity #391]: #387
-#376 := [trans #728 #712]: #375
-#714 := [monotonicity #376]: #378
-#721 := [monotonicity #714 #362]: #723
-#690 := [monotonicity #721 #420 #693]: #689
-#691 := [monotonicity #690]: #696
-#683 := [trans #691 #540]: #682
-#736 := (iff #735 false)
-#726 := [rewrite]: #736
-#679 := [monotonicity #726 #683]: #685
-#681 := [trans #679 #686]: #687
-#677 := [trans #681 #674]: #676
-#521 := [monotonicity #677]: #562
-#666 := [trans #521 #571]: #562
-#561 := [quant-inst]: #560
-#667 := [mp #561 #666]: #678
-#660 := [unit-resolution #667 #750]: #520
-#668 := (not #520)
-#665 := (or #668 #575)
-#42 := (not #41)
-#169 := [asserted]: #42
-#672 := (or #668 #575 #41)
-#659 := [def-axiom]: #672
-#654 := [unit-resolution #659 #169]: #665
-#655 := [unit-resolution #654 #660]: #575
-#566 := (or #688 #573)
-#574 := [def-axiom]: #566
-#656 := [unit-resolution #574 #655]: #573
-#670 := (or #688 #388)
-#555 := [def-axiom]: #670
-#657 := [unit-resolution #555 #655]: #388
-#570 := (or #688 #394)
-#572 := [def-axiom]: #570
-#651 := [unit-resolution #572 #655]: #394
-#658 := (or #732 #720 #377)
-#642 := [th-lemma]: #658
-[unit-resolution #642 #651 #657 #656]: false
-unsat
-923c4bec65f1ce0be6fa5d4ec7cf2b004a307f06 315 0
+c5e0a78cd4281adc96eca6cb66f3bfdd83b7f982 315 0
 #2 := false
 #66 := -1::int
 decl f3 :: (-> int int int)
@@ -30779,7 +30470,316 @@
 #678 := [mp #675 #677]: #686
 [unit-resolution #678 #757 #193]: false
 unsat
-f6b6632f2c5a6045abfce98be6bbc967a6c8ca72 311 0
+5fd03e95521b145801ae320c34d2eabe8b033de9 308 0
+#2 := false
+#11 := 0::int
+decl f5 :: int
+#38 := f5
+#732 := (= f5 0::int)
+#573 := (not #732)
+#394 := (<= f5 0::int)
+#720 := (not #394)
+#388 := (>= f5 0::int)
+#377 := (not #388)
+#688 := (or #377 #720 #732)
+#575 := (not #688)
+#66 := -1::int
+#408 := (* -1::int f5)
+#700 := (mod #408 -1::int)
+decl f4 :: (-> int int int)
+#39 := 1::int
+#40 := (f4 f5 1::int)
+#698 := (+ #40 #700)
+#703 := (= #698 0::int)
+#41 := (= #40 0::int)
+#520 := (ite #688 #41 #703)
+#9 := (:var 0 int)
+#8 := (:var 1 int)
+#29 := (f4 #8 #9)
+#744 := (pattern #29)
+#70 := (* -1::int #9)
+#67 := (* -1::int #8)
+#125 := (mod #67 #70)
+#256 := (+ #29 #125)
+#257 := (= #256 0::int)
+#30 := (mod #8 #9)
+#253 := (* -1::int #30)
+#254 := (+ #29 #253)
+#255 := (= #254 0::int)
+#92 := (<= #9 0::int)
+#88 := (<= #8 0::int)
+#195 := (or #88 #92)
+#196 := (not #195)
+#99 := (>= #8 0::int)
+#187 := (or #92 #99)
+#188 := (not #187)
+#202 := (or #188 #196)
+#258 := (ite #202 #255 #257)
+#252 := (= #29 0::int)
+#12 := (= #8 0::int)
+#259 := (ite #12 #252 #258)
+#251 := (= #8 #29)
+#13 := (= #9 0::int)
+#260 := (ite #13 #251 #259)
+#745 := (forall (vars (?v0 int) (?v1 int)) (:pat #744) #260)
+#263 := (forall (vars (?v0 int) (?v1 int)) #260)
+#748 := (iff #263 #745)
+#746 := (iff #260 #260)
+#747 := [refl]: #746
+#749 := [quant-intro #747]: #748
+#131 := (* -1::int #125)
+#220 := (ite #202 #30 #131)
+#223 := (ite #12 0::int #220)
+#226 := (ite #13 #8 #223)
+#229 := (= #29 #226)
+#232 := (forall (vars (?v0 int) (?v1 int)) #229)
+#264 := (iff #232 #263)
+#261 := (iff #229 #260)
+#262 := [rewrite]: #261
+#265 := [quant-intro #262]: #264
+#100 := (not #99)
+#93 := (not #92)
+#103 := (and #93 #100)
+#89 := (not #88)
+#96 := (and #89 #93)
+#106 := (or #96 #103)
+#151 := (ite #106 #30 #131)
+#154 := (ite #12 0::int #151)
+#157 := (ite #13 #8 #154)
+#160 := (= #29 #157)
+#163 := (forall (vars (?v0 int) (?v1 int)) #160)
+#233 := (iff #163 #232)
+#230 := (iff #160 #229)
+#227 := (= #157 #226)
+#224 := (= #154 #223)
+#221 := (= #151 #220)
+#205 := (iff #106 #202)
+#199 := (or #196 #188)
+#203 := (iff #199 #202)
+#204 := [rewrite]: #203
+#200 := (iff #106 #199)
+#197 := (iff #103 #188)
+#198 := [rewrite]: #197
+#185 := (iff #96 #196)
+#186 := [rewrite]: #185
+#201 := [monotonicity #186 #198]: #200
+#206 := [trans #201 #204]: #205
+#222 := [monotonicity #206]: #221
+#225 := [monotonicity #222]: #224
+#228 := [monotonicity #225]: #227
+#231 := [monotonicity #228]: #230
+#234 := [quant-intro #231]: #233
+#183 := (~ #163 #163)
+#180 := (~ #160 #160)
+#193 := [refl]: #180
+#184 := [nnf-pos #193]: #183
+#23 := (- #9)
+#22 := (- #8)
+#31 := (mod #22 #23)
+#32 := (- #31)
+#16 := (< 0::int #9)
+#18 := (< #8 0::int)
+#19 := (and #18 #16)
+#15 := (< 0::int #8)
+#17 := (and #15 #16)
+#20 := (or #17 #19)
+#33 := (ite #20 #30 #32)
+#34 := (ite #12 0::int #33)
+#35 := (ite #13 #8 #34)
+#36 := (= #29 #35)
+#37 := (forall (vars (?v0 int) (?v1 int)) #36)
+#166 := (iff #37 #163)
+#60 := (and #16 #18)
+#63 := (or #17 #60)
+#136 := (ite #63 #30 #131)
+#139 := (ite #12 0::int #136)
+#142 := (ite #13 #8 #139)
+#145 := (= #29 #142)
+#148 := (forall (vars (?v0 int) (?v1 int)) #145)
+#164 := (iff #148 #163)
+#161 := (iff #145 #160)
+#158 := (= #142 #157)
+#155 := (= #139 #154)
+#152 := (= #136 #151)
+#107 := (iff #63 #106)
+#104 := (iff #60 #103)
+#101 := (iff #18 #100)
+#102 := [rewrite]: #101
+#94 := (iff #16 #93)
+#95 := [rewrite]: #94
+#105 := [monotonicity #95 #102]: #104
+#97 := (iff #17 #96)
+#90 := (iff #15 #89)
+#91 := [rewrite]: #90
+#98 := [monotonicity #91 #95]: #97
+#108 := [monotonicity #98 #105]: #107
+#153 := [monotonicity #108]: #152
+#156 := [monotonicity #153]: #155
+#159 := [monotonicity #156]: #158
+#162 := [monotonicity #159]: #161
+#165 := [quant-intro #162]: #164
+#149 := (iff #37 #148)
+#146 := (iff #36 #145)
+#143 := (= #35 #142)
+#140 := (= #34 #139)
+#137 := (= #33 #136)
+#134 := (= #32 #131)
+#128 := (- #125)
+#132 := (= #128 #131)
+#133 := [rewrite]: #132
+#129 := (= #32 #128)
+#126 := (= #31 #125)
+#71 := (= #23 #70)
+#72 := [rewrite]: #71
+#68 := (= #22 #67)
+#69 := [rewrite]: #68
+#127 := [monotonicity #69 #72]: #126
+#130 := [monotonicity #127]: #129
+#135 := [trans #130 #133]: #134
+#64 := (iff #20 #63)
+#61 := (iff #19 #60)
+#62 := [rewrite]: #61
+#65 := [monotonicity #62]: #64
+#138 := [monotonicity #65 #135]: #137
+#141 := [monotonicity #138]: #140
+#144 := [monotonicity #141]: #143
+#147 := [monotonicity #144]: #146
+#150 := [quant-intro #147]: #149
+#167 := [trans #150 #165]: #166
+#124 := [asserted]: #37
+#168 := [mp #124 #167]: #163
+#194 := [mp~ #168 #184]: #163
+#235 := [mp #194 #234]: #232
+#266 := [mp #235 #265]: #263
+#750 := [mp #266 #749]: #745
+#675 := (not #745)
+#678 := (or #675 #520)
+#324 := (* -1::int 1::int)
+#409 := (mod #408 #324)
+#410 := (+ #40 #409)
+#401 := (= #410 0::int)
+#412 := (mod f5 1::int)
+#413 := (* -1::int #412)
+#414 := (+ #40 #413)
+#411 := (= #414 0::int)
+#415 := (<= 1::int 0::int)
+#729 := (or #394 #415)
+#731 := (not #729)
+#518 := (or #415 #388)
+#725 := (not #518)
+#399 := (or #725 #731)
+#400 := (ite #399 #411 #401)
+#733 := (ite #732 #41 #400)
+#734 := (= f5 #40)
+#735 := (= 1::int 0::int)
+#730 := (ite #735 #734 #733)
+#560 := (or #675 #730)
+#562 := (iff #560 #678)
+#669 := (iff #678 #678)
+#571 := [rewrite]: #669
+#676 := (iff #730 #520)
+#363 := (or #377 #720)
+#697 := (or #363 #732)
+#538 := (ite #697 #41 #703)
+#673 := (iff #538 #520)
+#517 := (iff #697 #688)
+#519 := [rewrite]: #517
+#674 := [monotonicity #519]: #673
+#687 := (iff #730 #538)
+#684 := (ite false #734 #538)
+#680 := (iff #684 #538)
+#686 := [rewrite]: #680
+#685 := (iff #730 #684)
+#682 := (iff #733 #538)
+#694 := (ite #363 #41 #703)
+#695 := (ite #732 #41 #694)
+#539 := (iff #695 #538)
+#540 := [rewrite]: #539
+#696 := (iff #733 #695)
+#689 := (iff #400 #694)
+#692 := (iff #401 #703)
+#702 := (= #410 #698)
+#701 := (= #409 #700)
+#421 := (= #324 -1::int)
+#422 := [rewrite]: #421
+#416 := [monotonicity #422]: #701
+#699 := [monotonicity #416]: #702
+#693 := [monotonicity #699]: #692
+#419 := (iff #411 #41)
+#705 := (= #414 #40)
+#707 := (+ #40 0::int)
+#704 := (= #707 #40)
+#708 := [rewrite]: #704
+#429 := (= #414 #707)
+#330 := (= #413 0::int)
+#711 := (* -1::int 0::int)
+#435 := (= #711 0::int)
+#436 := [rewrite]: #435
+#433 := (= #413 #711)
+#724 := (= #412 0::int)
+#710 := [rewrite]: #724
+#434 := [monotonicity #710]: #433
+#706 := [trans #434 #436]: #330
+#430 := [monotonicity #706]: #429
+#709 := [trans #430 #708]: #705
+#420 := [monotonicity #709]: #419
+#723 := (iff #399 #363)
+#722 := (iff #731 #720)
+#719 := (iff #729 #394)
+#715 := (or #394 false)
+#718 := (iff #715 #394)
+#713 := [rewrite]: #718
+#716 := (iff #729 #715)
+#386 := (iff #415 false)
+#391 := [rewrite]: #386
+#717 := [monotonicity #391]: #716
+#357 := [trans #717 #713]: #719
+#362 := [monotonicity #357]: #722
+#378 := (iff #725 #377)
+#375 := (iff #518 #388)
+#727 := (or false #388)
+#371 := (iff #727 #388)
+#712 := [rewrite]: #371
+#387 := (iff #518 #727)
+#728 := [monotonicity #391]: #387
+#376 := [trans #728 #712]: #375
+#714 := [monotonicity #376]: #378
+#721 := [monotonicity #714 #362]: #723
+#690 := [monotonicity #721 #420 #693]: #689
+#691 := [monotonicity #690]: #696
+#683 := [trans #691 #540]: #682
+#736 := (iff #735 false)
+#726 := [rewrite]: #736
+#679 := [monotonicity #726 #683]: #685
+#681 := [trans #679 #686]: #687
+#677 := [trans #681 #674]: #676
+#521 := [monotonicity #677]: #562
+#666 := [trans #521 #571]: #562
+#561 := [quant-inst]: #560
+#667 := [mp #561 #666]: #678
+#660 := [unit-resolution #667 #750]: #520
+#668 := (not #520)
+#665 := (or #668 #575)
+#42 := (not #41)
+#169 := [asserted]: #42
+#672 := (or #668 #575 #41)
+#659 := [def-axiom]: #672
+#654 := [unit-resolution #659 #169]: #665
+#655 := [unit-resolution #654 #660]: #575
+#566 := (or #688 #573)
+#574 := [def-axiom]: #566
+#656 := [unit-resolution #574 #655]: #573
+#670 := (or #688 #388)
+#555 := [def-axiom]: #670
+#657 := [unit-resolution #555 #655]: #388
+#570 := (or #688 #394)
+#572 := [def-axiom]: #570
+#651 := [unit-resolution #572 #655]: #394
+#658 := (or #732 #720 #377)
+#642 := [th-lemma]: #658
+[unit-resolution #642 #651 #657 #656]: false
+unsat
+313d9507d6b102d4601325c684027a26955dd8c8 311 0
 #2 := false
 #177 := -3::int
 decl f3 :: (-> int int int)
@@ -31091,7 +31091,7 @@
 #661 := [mp #659 #672]: #660
 [unit-resolution #661 #750 #188]: false
 unsat
-a09ca425a49bbf59a7db8aba4b01dbd7473e9c09 317 0
+3d32e1abf69ce0e5041899ca9973bae87dfc28de 317 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -31409,7 +31409,7 @@
 #587 := [mp #680 #586]: #683
 [unit-resolution #587 #764 #193]: false
 unsat
-ef319beaaae1961d7e0fb146b0bd21608ccf741d 362 0
+554be993a1782ec7f024b52e37aa60a3dc009c1f 362 0
 #2 := false
 #11 := 0::int
 #39 := 1::int
@@ -31772,7 +31772,7 @@
 #563 := [th-lemma]: #562
 [unit-resolution #563 #561 #633]: false
 unsat
-07f15f3f61db6e3805237fa8c50e95e2181bdd46 327 0
+658c83eb9ce09a5dbf189137f768372756f07aa7 327 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -32100,7 +32100,7 @@
 #673 := [mp #590 #686]: #588
 [unit-resolution #673 #764 #193]: false
 unsat
-24bbfda15529f2b078998e7a57a330dfd637cef3 282 0
+637a9fb4751b1db772b995626b3d6e97b52eb701 282 0
 #2 := false
 #11 := 0::int
 decl f3 :: (-> int int int)
@@ -32383,7 +32383,7 @@
 #668 := [mp #574 #671]: #573
 [unit-resolution #668 #743 #168]: false
 unsat
-8144b6d093845ae8dee3931af66c9361d99b4453 329 0
+7760bfb909b598c1c9e59b0475683ef8155b0972 329 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -32713,7 +32713,7 @@
 #676 := [mp #592 #674]: #590
 [unit-resolution #676 #765 #194]: false
 unsat
-12ef6b4ae9675610f423327a4c22119f401927ad 307 0
+3720824b257034758f7a600c278307a5f80b6e02 307 0
 #2 := false
 #11 := 0::int
 decl f3 :: (-> int int int)
@@ -33021,7 +33021,7 @@
 #687 := [mp #582 #594]: #588
 [unit-resolution #687 #759 #194]: false
 unsat
-a20f91759967cf78b23640f832ca57a185975634 306 0
+8c2ddb2baafdfdaa50382790d0f6610f91f76e27 306 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -33328,7 +33328,7 @@
 #693 := [mp #535 #690]: #532
 [unit-resolution #693 #765 #194]: false
 unsat
-35df6ca3b9d8297d2ae93fc18a5a2fbecd67e27f 296 0
+f3e8e6f2d42536caa9e4ddd3735d660dddce72ee 296 0
 #2 := false
 #11 := 0::int
 decl f3 :: (-> int int int)
@@ -33625,7 +33625,7 @@
 #656 := [mp #663 #655]: #652
 [unit-resolution #656 #743 #169]: false
 unsat
-d02187cb7fcefe99851febe02397cc4a2e6fdbff 286 0
+93736e6f4586e3d8675e6c2a74bb3371d5238b60 286 0
 #2 := false
 #40 := 1::int
 decl f3 :: (-> int int int)
@@ -33912,7 +33912,7 @@
 #643 := [mp #568 #651]: #566
 [unit-resolution #643 #733 #169]: false
 unsat
-450a206c661160bbd83de0094374a847857dd804 299 0
+3b0f74b1f071a3ff5876e6e320a42af764cd8901 299 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -34212,7 +34212,7 @@
 #575 := [mp #555 #574]: #667
 [unit-resolution #575 #750 #168]: false
 unsat
-fc9ffeceefa2f1854d4c8adb404766a307c30ad9 310 0
+47a39d6a04f9615c07eaa600e336bda0f6475ecd 310 0
 #2 := false
 #41 := 1::int
 decl f3 :: (-> int int int)
@@ -34523,7 +34523,7 @@
 #627 := [mp #637 #626]: #634
 [unit-resolution #627 #734 #170]: false
 unsat
-b8be49aa798ad99c4b186f0fa5e2759eac880cd8 318 0
+297aa7cb47f4ebcdd849638dea24e69f28ead5a8 318 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -34842,7 +34842,7 @@
 #588 := [mp #587 #586]: #537
 [unit-resolution #588 #766 #194]: false
 unsat
-334231bac1c10cb79d865cb2c86779cf7dd19631 324 0
+5b0e88fc80a274fa3e863e03464470bfb173c5f7 324 0
 #2 := false
 #68 := -1::int
 decl f3 :: (-> int int int)
@@ -35167,7 +35167,7 @@
 #674 := [mp #681 #673]: #669
 [unit-resolution #674 #762 #198]: false
 unsat
-ed5e3568452fe6600500ab5071290e80a7175922 322 0
+c6240466c20be0ec4a8775881ce8a00f5857e767 322 0
 #2 := false
 #38 := 1::int
 decl f4 :: (-> int int int)
@@ -35490,7 +35490,7 @@
 #642 := [mp #654 #658]: #660
 [unit-resolution #642 #750 #169]: false
 unsat
-60a3e615568433502bc15c7d472c0ece644ee329 323 0
+6267f0b993e2728f85ea31149fbe98cf106912d9 323 0
 #2 := false
 #68 := -1::int
 decl f3 :: (-> int int int)
@@ -35814,305 +35814,7 @@
 #673 := [mp #671 #684]: #672
 [unit-resolution #673 #762 #198]: false
 unsat
-1897b65589b01a36e8c901ddcdce3eb69e66fd4d 297 0
-#2 := false
-#11 := 0::int
-decl f4 :: (-> int int int)
-#38 := 3::int
-#39 := (f4 3::int 3::int)
-#40 := (= #39 0::int)
-#41 := (not #40)
-#168 := [asserted]: #41
-#9 := (:var 0 int)
-#8 := (:var 1 int)
-#29 := (f4 #8 #9)
-#744 := (pattern #29)
-#65 := -1::int
-#69 := (* -1::int #9)
-#66 := (* -1::int #8)
-#124 := (mod #66 #69)
-#255 := (+ #29 #124)
-#256 := (= #255 0::int)
-#30 := (mod #8 #9)
-#252 := (* -1::int #30)
-#253 := (+ #29 #252)
-#254 := (= #253 0::int)
-#91 := (<= #9 0::int)
-#87 := (<= #8 0::int)
-#194 := (or #87 #91)
-#195 := (not #194)
-#98 := (>= #8 0::int)
-#186 := (or #91 #98)
-#187 := (not #186)
-#201 := (or #187 #195)
-#257 := (ite #201 #254 #256)
-#251 := (= #29 0::int)
-#12 := (= #8 0::int)
-#258 := (ite #12 #251 #257)
-#250 := (= #8 #29)
-#13 := (= #9 0::int)
-#259 := (ite #13 #250 #258)
-#745 := (forall (vars (?v0 int) (?v1 int)) (:pat #744) #259)
-#262 := (forall (vars (?v0 int) (?v1 int)) #259)
-#748 := (iff #262 #745)
-#746 := (iff #259 #259)
-#747 := [refl]: #746
-#749 := [quant-intro #747]: #748
-#130 := (* -1::int #124)
-#219 := (ite #201 #30 #130)
-#222 := (ite #12 0::int #219)
-#225 := (ite #13 #8 #222)
-#228 := (= #29 #225)
-#231 := (forall (vars (?v0 int) (?v1 int)) #228)
-#263 := (iff #231 #262)
-#260 := (iff #228 #259)
-#261 := [rewrite]: #260
-#264 := [quant-intro #261]: #263
-#99 := (not #98)
-#92 := (not #91)
-#102 := (and #92 #99)
-#88 := (not #87)
-#95 := (and #88 #92)
-#105 := (or #95 #102)
-#150 := (ite #105 #30 #130)
-#153 := (ite #12 0::int #150)
-#156 := (ite #13 #8 #153)
-#159 := (= #29 #156)
-#162 := (forall (vars (?v0 int) (?v1 int)) #159)
-#232 := (iff #162 #231)
-#229 := (iff #159 #228)
-#226 := (= #156 #225)
-#223 := (= #153 #222)
-#220 := (= #150 #219)
-#204 := (iff #105 #201)
-#198 := (or #195 #187)
-#202 := (iff #198 #201)
-#203 := [rewrite]: #202
-#199 := (iff #105 #198)
-#196 := (iff #102 #187)
-#197 := [rewrite]: #196
-#184 := (iff #95 #195)
-#185 := [rewrite]: #184
-#200 := [monotonicity #185 #197]: #199
-#205 := [trans #200 #203]: #204
-#221 := [monotonicity #205]: #220
-#224 := [monotonicity #221]: #223
-#227 := [monotonicity #224]: #226
-#230 := [monotonicity #227]: #229
-#233 := [quant-intro #230]: #232
-#182 := (~ #162 #162)
-#179 := (~ #159 #159)
-#192 := [refl]: #179
-#183 := [nnf-pos #192]: #182
-#23 := (- #9)
-#22 := (- #8)
-#31 := (mod #22 #23)
-#32 := (- #31)
-#16 := (< 0::int #9)
-#18 := (< #8 0::int)
-#19 := (and #18 #16)
-#15 := (< 0::int #8)
-#17 := (and #15 #16)
-#20 := (or #17 #19)
-#33 := (ite #20 #30 #32)
-#34 := (ite #12 0::int #33)
-#35 := (ite #13 #8 #34)
-#36 := (= #29 #35)
-#37 := (forall (vars (?v0 int) (?v1 int)) #36)
-#165 := (iff #37 #162)
-#59 := (and #16 #18)
-#62 := (or #17 #59)
-#135 := (ite #62 #30 #130)
-#138 := (ite #12 0::int #135)
-#141 := (ite #13 #8 #138)
-#144 := (= #29 #141)
-#147 := (forall (vars (?v0 int) (?v1 int)) #144)
-#163 := (iff #147 #162)
-#160 := (iff #144 #159)
-#157 := (= #141 #156)
-#154 := (= #138 #153)
-#151 := (= #135 #150)
-#106 := (iff #62 #105)
-#103 := (iff #59 #102)
-#100 := (iff #18 #99)
-#101 := [rewrite]: #100
-#93 := (iff #16 #92)
-#94 := [rewrite]: #93
-#104 := [monotonicity #94 #101]: #103
-#96 := (iff #17 #95)
-#89 := (iff #15 #88)
-#90 := [rewrite]: #89
-#97 := [monotonicity #90 #94]: #96
-#107 := [monotonicity #97 #104]: #106
-#152 := [monotonicity #107]: #151
-#155 := [monotonicity #152]: #154
-#158 := [monotonicity #155]: #157
-#161 := [monotonicity #158]: #160
-#164 := [quant-intro #161]: #163
-#148 := (iff #37 #147)
-#145 := (iff #36 #144)
-#142 := (= #35 #141)
-#139 := (= #34 #138)
-#136 := (= #33 #135)
-#133 := (= #32 #130)
-#127 := (- #124)
-#131 := (= #127 #130)
-#132 := [rewrite]: #131
-#128 := (= #32 #127)
-#125 := (= #31 #124)
-#70 := (= #23 #69)
-#71 := [rewrite]: #70
-#67 := (= #22 #66)
-#68 := [rewrite]: #67
-#126 := [monotonicity #68 #71]: #125
-#129 := [monotonicity #126]: #128
-#134 := [trans #129 #132]: #133
-#63 := (iff #20 #62)
-#60 := (iff #19 #59)
-#61 := [rewrite]: #60
-#64 := [monotonicity #61]: #63
-#137 := [monotonicity #64 #134]: #136
-#140 := [monotonicity #137]: #139
-#143 := [monotonicity #140]: #142
-#146 := [monotonicity #143]: #145
-#149 := [quant-intro #146]: #148
-#166 := [trans #149 #164]: #165
-#123 := [asserted]: #37
-#167 := [mp #123 #166]: #162
-#193 := [mp~ #167 #183]: #162
-#234 := [mp #193 #233]: #231
-#265 := [mp #234 #264]: #262
-#750 := [mp #265 #749]: #745
-#667 := (not #745)
-#670 := (or #667 #40)
-#323 := (* -1::int 3::int)
-#408 := (mod #323 #323)
-#409 := (+ #39 #408)
-#410 := (= #409 0::int)
-#401 := (mod 3::int 3::int)
-#412 := (* -1::int #401)
-#413 := (+ #39 #412)
-#341 := (= #413 0::int)
-#414 := (<= 3::int 0::int)
-#411 := (or #414 #414)
-#415 := (not #411)
-#394 := (>= 3::int 0::int)
-#729 := (or #414 #394)
-#731 := (not #729)
-#388 := (or #731 #415)
-#518 := (ite #388 #341 #410)
-#725 := (= 3::int 0::int)
-#399 := (ite #725 #40 #518)
-#400 := (= 3::int #39)
-#732 := (ite #725 #400 #399)
-#555 := (or #667 #732)
-#572 := (iff #555 #670)
-#566 := (iff #670 #670)
-#574 := [rewrite]: #566
-#571 := (iff #732 #40)
-#730 := (= #39 3::int)
-#560 := (ite false #730 #40)
-#521 := (iff #560 #40)
-#669 := [rewrite]: #521
-#561 := (iff #732 #560)
-#675 := (iff #399 #40)
-#520 := (ite false #40 #40)
-#676 := (iff #520 #40)
-#677 := [rewrite]: #676
-#673 := (iff #399 #520)
-#517 := (iff #518 #40)
-#1 := true
-#680 := (ite true #40 #40)
-#681 := (iff #680 #40)
-#688 := [rewrite]: #681
-#686 := (iff #518 #680)
-#685 := (iff #410 #40)
-#683 := (= #409 #39)
-#422 := (+ #39 0::int)
-#416 := (= #422 #39)
-#698 := [rewrite]: #416
-#540 := (= #409 #422)
-#538 := (= #408 0::int)
-#693 := -3::int
-#690 := (mod -3::int -3::int)
-#691 := (= #690 0::int)
-#697 := [rewrite]: #691
-#695 := (= #408 #690)
-#694 := (= #323 -3::int)
-#689 := [rewrite]: #694
-#696 := [monotonicity #689 #689]: #695
-#539 := [trans #696 #697]: #538
-#682 := [monotonicity #539]: #540
-#684 := [trans #682 #698]: #683
-#679 := [monotonicity #684]: #685
-#703 := (iff #341 #40)
-#702 := (= #413 #39)
-#700 := (= #413 #422)
-#420 := (= #412 0::int)
-#704 := (* -1::int 0::int)
-#709 := (= #704 0::int)
-#419 := [rewrite]: #709
-#708 := (= #412 #704)
-#429 := (= #401 0::int)
-#430 := [rewrite]: #429
-#705 := [monotonicity #430]: #708
-#421 := [trans #705 #419]: #420
-#701 := [monotonicity #421]: #700
-#699 := [trans #701 #698]: #702
-#692 := [monotonicity #699]: #703
-#706 := (iff #388 true)
-#387 := (or false true)
-#712 := (iff #387 true)
-#375 := [rewrite]: #712
-#436 := (iff #388 #387)
-#434 := (iff #415 true)
-#721 := (not false)
-#711 := (iff #721 true)
-#433 := [rewrite]: #711
-#724 := (iff #415 #721)
-#363 := (iff #411 false)
-#719 := (or false false)
-#722 := (iff #719 false)
-#362 := [rewrite]: #722
-#357 := (iff #411 #719)
-#726 := (iff #414 false)
-#386 := [rewrite]: #726
-#720 := [monotonicity #386 #386]: #357
-#723 := [trans #720 #362]: #363
-#710 := [monotonicity #723]: #724
-#435 := [trans #710 #433]: #434
-#718 := (iff #731 false)
-#378 := (not true)
-#716 := (iff #378 false)
-#717 := [rewrite]: #716
-#714 := (iff #731 #378)
-#376 := (iff #729 true)
-#728 := (iff #729 #387)
-#391 := (iff #394 true)
-#727 := [rewrite]: #391
-#371 := [monotonicity #386 #727]: #728
-#377 := [trans #371 #375]: #376
-#715 := [monotonicity #377]: #714
-#713 := [trans #715 #717]: #718
-#329 := [monotonicity #713 #435]: #436
-#707 := [trans #329 #375]: #706
-#687 := [monotonicity #707 #692 #679]: #686
-#519 := [trans #687 #688]: #517
-#733 := (iff #725 false)
-#734 := [rewrite]: #733
-#674 := [monotonicity #734 #519]: #673
-#678 := [trans #674 #677]: #675
-#735 := (iff #400 #730)
-#736 := [rewrite]: #735
-#562 := [monotonicity #734 #736 #678]: #561
-#666 := [trans #562 #669]: #571
-#573 := [monotonicity #666]: #572
-#575 := [trans #573 #574]: #572
-#570 := [quant-inst]: #555
-#576 := [mp #570 #575]: #670
-[unit-resolution #576 #750 #168]: false
-unsat
-0217fb3975a8ed7626e13b93029371f1151b43e4 326 0
+ab3ee722b1a4b13d571e9569335a5a4521f8479c 326 0
 #2 := false
 #179 := -2::int
 decl f3 :: (-> int int int)
@@ -36439,7 +36141,627 @@
 #654 := [mp #652 #658]: #661
 [unit-resolution #654 #753 #190]: false
 unsat
-0950f059c8c59b021ddf8b08664ab965652bd6ab 328 0
+289a94002efb27d5f9eb28105782f378a655ffff 297 0
+#2 := false
+#11 := 0::int
+decl f4 :: (-> int int int)
+#38 := 3::int
+#39 := (f4 3::int 3::int)
+#40 := (= #39 0::int)
+#41 := (not #40)
+#168 := [asserted]: #41
+#9 := (:var 0 int)
+#8 := (:var 1 int)
+#29 := (f4 #8 #9)
+#744 := (pattern #29)
+#65 := -1::int
+#69 := (* -1::int #9)
+#66 := (* -1::int #8)
+#124 := (mod #66 #69)
+#255 := (+ #29 #124)
+#256 := (= #255 0::int)
+#30 := (mod #8 #9)
+#252 := (* -1::int #30)
+#253 := (+ #29 #252)
+#254 := (= #253 0::int)
+#91 := (<= #9 0::int)
+#87 := (<= #8 0::int)
+#194 := (or #87 #91)
+#195 := (not #194)
+#98 := (>= #8 0::int)
+#186 := (or #91 #98)
+#187 := (not #186)
+#201 := (or #187 #195)
+#257 := (ite #201 #254 #256)
+#251 := (= #29 0::int)
+#12 := (= #8 0::int)
+#258 := (ite #12 #251 #257)
+#250 := (= #8 #29)
+#13 := (= #9 0::int)
+#259 := (ite #13 #250 #258)
+#745 := (forall (vars (?v0 int) (?v1 int)) (:pat #744) #259)
+#262 := (forall (vars (?v0 int) (?v1 int)) #259)
+#748 := (iff #262 #745)
+#746 := (iff #259 #259)
+#747 := [refl]: #746
+#749 := [quant-intro #747]: #748
+#130 := (* -1::int #124)
+#219 := (ite #201 #30 #130)
+#222 := (ite #12 0::int #219)
+#225 := (ite #13 #8 #222)
+#228 := (= #29 #225)
+#231 := (forall (vars (?v0 int) (?v1 int)) #228)
+#263 := (iff #231 #262)
+#260 := (iff #228 #259)
+#261 := [rewrite]: #260
+#264 := [quant-intro #261]: #263
+#99 := (not #98)
+#92 := (not #91)
+#102 := (and #92 #99)
+#88 := (not #87)
+#95 := (and #88 #92)
+#105 := (or #95 #102)
+#150 := (ite #105 #30 #130)
+#153 := (ite #12 0::int #150)
+#156 := (ite #13 #8 #153)
+#159 := (= #29 #156)
+#162 := (forall (vars (?v0 int) (?v1 int)) #159)
+#232 := (iff #162 #231)
+#229 := (iff #159 #228)
+#226 := (= #156 #225)
+#223 := (= #153 #222)
+#220 := (= #150 #219)
+#204 := (iff #105 #201)
+#198 := (or #195 #187)
+#202 := (iff #198 #201)
+#203 := [rewrite]: #202
+#199 := (iff #105 #198)
+#196 := (iff #102 #187)
+#197 := [rewrite]: #196
+#184 := (iff #95 #195)
+#185 := [rewrite]: #184
+#200 := [monotonicity #185 #197]: #199
+#205 := [trans #200 #203]: #204
+#221 := [monotonicity #205]: #220
+#224 := [monotonicity #221]: #223
+#227 := [monotonicity #224]: #226
+#230 := [monotonicity #227]: #229
+#233 := [quant-intro #230]: #232
+#182 := (~ #162 #162)
+#179 := (~ #159 #159)
+#192 := [refl]: #179
+#183 := [nnf-pos #192]: #182
+#23 := (- #9)
+#22 := (- #8)
+#31 := (mod #22 #23)
+#32 := (- #31)
+#16 := (< 0::int #9)
+#18 := (< #8 0::int)
+#19 := (and #18 #16)
+#15 := (< 0::int #8)
+#17 := (and #15 #16)
+#20 := (or #17 #19)
+#33 := (ite #20 #30 #32)
+#34 := (ite #12 0::int #33)
+#35 := (ite #13 #8 #34)
+#36 := (= #29 #35)
+#37 := (forall (vars (?v0 int) (?v1 int)) #36)
+#165 := (iff #37 #162)
+#59 := (and #16 #18)
+#62 := (or #17 #59)
+#135 := (ite #62 #30 #130)
+#138 := (ite #12 0::int #135)
+#141 := (ite #13 #8 #138)
+#144 := (= #29 #141)
+#147 := (forall (vars (?v0 int) (?v1 int)) #144)
+#163 := (iff #147 #162)
+#160 := (iff #144 #159)
+#157 := (= #141 #156)
+#154 := (= #138 #153)
+#151 := (= #135 #150)
+#106 := (iff #62 #105)
+#103 := (iff #59 #102)
+#100 := (iff #18 #99)
+#101 := [rewrite]: #100
+#93 := (iff #16 #92)
+#94 := [rewrite]: #93
+#104 := [monotonicity #94 #101]: #103
+#96 := (iff #17 #95)
+#89 := (iff #15 #88)
+#90 := [rewrite]: #89
+#97 := [monotonicity #90 #94]: #96
+#107 := [monotonicity #97 #104]: #106
+#152 := [monotonicity #107]: #151
+#155 := [monotonicity #152]: #154
+#158 := [monotonicity #155]: #157
+#161 := [monotonicity #158]: #160
+#164 := [quant-intro #161]: #163
+#148 := (iff #37 #147)
+#145 := (iff #36 #144)
+#142 := (= #35 #141)
+#139 := (= #34 #138)
+#136 := (= #33 #135)
+#133 := (= #32 #130)
+#127 := (- #124)
+#131 := (= #127 #130)
+#132 := [rewrite]: #131
+#128 := (= #32 #127)
+#125 := (= #31 #124)
+#70 := (= #23 #69)
+#71 := [rewrite]: #70
+#67 := (= #22 #66)
+#68 := [rewrite]: #67
+#126 := [monotonicity #68 #71]: #125
+#129 := [monotonicity #126]: #128
+#134 := [trans #129 #132]: #133
+#63 := (iff #20 #62)
+#60 := (iff #19 #59)
+#61 := [rewrite]: #60
+#64 := [monotonicity #61]: #63
+#137 := [monotonicity #64 #134]: #136
+#140 := [monotonicity #137]: #139
+#143 := [monotonicity #140]: #142
+#146 := [monotonicity #143]: #145
+#149 := [quant-intro #146]: #148
+#166 := [trans #149 #164]: #165
+#123 := [asserted]: #37
+#167 := [mp #123 #166]: #162
+#193 := [mp~ #167 #183]: #162
+#234 := [mp #193 #233]: #231
+#265 := [mp #234 #264]: #262
+#750 := [mp #265 #749]: #745
+#667 := (not #745)
+#670 := (or #667 #40)
+#323 := (* -1::int 3::int)
+#408 := (mod #323 #323)
+#409 := (+ #39 #408)
+#410 := (= #409 0::int)
+#401 := (mod 3::int 3::int)
+#412 := (* -1::int #401)
+#413 := (+ #39 #412)
+#341 := (= #413 0::int)
+#414 := (<= 3::int 0::int)
+#411 := (or #414 #414)
+#415 := (not #411)
+#394 := (>= 3::int 0::int)
+#729 := (or #414 #394)
+#731 := (not #729)
+#388 := (or #731 #415)
+#518 := (ite #388 #341 #410)
+#725 := (= 3::int 0::int)
+#399 := (ite #725 #40 #518)
+#400 := (= 3::int #39)
+#732 := (ite #725 #400 #399)
+#555 := (or #667 #732)
+#572 := (iff #555 #670)
+#566 := (iff #670 #670)
+#574 := [rewrite]: #566
+#571 := (iff #732 #40)
+#730 := (= #39 3::int)
+#560 := (ite false #730 #40)
+#521 := (iff #560 #40)
+#669 := [rewrite]: #521
+#561 := (iff #732 #560)
+#675 := (iff #399 #40)
+#520 := (ite false #40 #40)
+#676 := (iff #520 #40)
+#677 := [rewrite]: #676
+#673 := (iff #399 #520)
+#517 := (iff #518 #40)
+#1 := true
+#680 := (ite true #40 #40)
+#681 := (iff #680 #40)
+#688 := [rewrite]: #681
+#686 := (iff #518 #680)
+#685 := (iff #410 #40)
+#683 := (= #409 #39)
+#422 := (+ #39 0::int)
+#416 := (= #422 #39)
+#698 := [rewrite]: #416
+#540 := (= #409 #422)
+#538 := (= #408 0::int)
+#693 := -3::int
+#690 := (mod -3::int -3::int)
+#691 := (= #690 0::int)
+#697 := [rewrite]: #691
+#695 := (= #408 #690)
+#694 := (= #323 -3::int)
+#689 := [rewrite]: #694
+#696 := [monotonicity #689 #689]: #695
+#539 := [trans #696 #697]: #538
+#682 := [monotonicity #539]: #540
+#684 := [trans #682 #698]: #683
+#679 := [monotonicity #684]: #685
+#703 := (iff #341 #40)
+#702 := (= #413 #39)
+#700 := (= #413 #422)
+#420 := (= #412 0::int)
+#704 := (* -1::int 0::int)
+#709 := (= #704 0::int)
+#419 := [rewrite]: #709
+#708 := (= #412 #704)
+#429 := (= #401 0::int)
+#430 := [rewrite]: #429
+#705 := [monotonicity #430]: #708
+#421 := [trans #705 #419]: #420
+#701 := [monotonicity #421]: #700
+#699 := [trans #701 #698]: #702
+#692 := [monotonicity #699]: #703
+#706 := (iff #388 true)
+#387 := (or false true)
+#712 := (iff #387 true)
+#375 := [rewrite]: #712
+#436 := (iff #388 #387)
+#434 := (iff #415 true)
+#721 := (not false)
+#711 := (iff #721 true)
+#433 := [rewrite]: #711
+#724 := (iff #415 #721)
+#363 := (iff #411 false)
+#719 := (or false false)
+#722 := (iff #719 false)
+#362 := [rewrite]: #722
+#357 := (iff #411 #719)
+#726 := (iff #414 false)
+#386 := [rewrite]: #726
+#720 := [monotonicity #386 #386]: #357
+#723 := [trans #720 #362]: #363
+#710 := [monotonicity #723]: #724
+#435 := [trans #710 #433]: #434
+#718 := (iff #731 false)
+#378 := (not true)
+#716 := (iff #378 false)
+#717 := [rewrite]: #716
+#714 := (iff #731 #378)
+#376 := (iff #729 true)
+#728 := (iff #729 #387)
+#391 := (iff #394 true)
+#727 := [rewrite]: #391
+#371 := [monotonicity #386 #727]: #728
+#377 := [trans #371 #375]: #376
+#715 := [monotonicity #377]: #714
+#713 := [trans #715 #717]: #718
+#329 := [monotonicity #713 #435]: #436
+#707 := [trans #329 #375]: #706
+#687 := [monotonicity #707 #692 #679]: #686
+#519 := [trans #687 #688]: #517
+#733 := (iff #725 false)
+#734 := [rewrite]: #733
+#674 := [monotonicity #734 #519]: #673
+#678 := [trans #674 #677]: #675
+#735 := (iff #400 #730)
+#736 := [rewrite]: #735
+#562 := [monotonicity #734 #736 #678]: #561
+#666 := [trans #562 #669]: #571
+#573 := [monotonicity #666]: #572
+#575 := [trans #573 #574]: #572
+#570 := [quant-inst]: #555
+#576 := [mp #570 #575]: #670
+[unit-resolution #576 #750 #168]: false
+unsat
+df3c3180cbba903cfcccf082cba5dc63ba7e5462 321 0
+#2 := false
+#67 := -1::int
+decl f3 :: (-> int int int)
+#40 := 3::int
+#173 := (f3 -1::int 3::int)
+#176 := (= #173 -1::int)
+#189 := (not #176)
+#38 := 1::int
+#39 := (- 1::int)
+#41 := (f3 #39 3::int)
+#42 := (= #41 #39)
+#43 := (not #42)
+#192 := (iff #43 #189)
+#179 := (= -1::int #173)
+#184 := (not #179)
+#190 := (iff #184 #189)
+#187 := (iff #179 #176)
+#188 := [rewrite]: #187
+#191 := [monotonicity #188]: #190
+#185 := (iff #43 #184)
+#182 := (iff #42 #179)
+#180 := (iff #176 #179)
+#181 := [rewrite]: #180
+#177 := (iff #42 #176)
+#171 := (= #39 -1::int)
+#172 := [rewrite]: #171
+#174 := (= #41 #173)
+#175 := [monotonicity #172]: #174
+#178 := [monotonicity #175 #172]: #177
+#183 := [trans #178 #181]: #182
+#186 := [monotonicity #183]: #185
+#193 := [trans #186 #191]: #192
+#170 := [asserted]: #43
+#194 := [mp #170 #193]: #189
+#9 := (:var 0 int)
+#8 := (:var 1 int)
+#10 := (f3 #8 #9)
+#752 := (pattern #10)
+#11 := 0::int
+#71 := (* -1::int #9)
+#68 := (* -1::int #8)
+#74 := (div #68 #71)
+#255 := (* -1::int #74)
+#256 := (+ #10 #255)
+#257 := (= #256 0::int)
+#21 := (div #8 #9)
+#252 := (* -1::int #21)
+#253 := (+ #10 #252)
+#254 := (= #253 0::int)
+#93 := (<= #9 0::int)
+#89 := (<= #8 0::int)
+#210 := (or #89 #93)
+#211 := (not #210)
+#100 := (>= #8 0::int)
+#202 := (or #93 #100)
+#203 := (not #202)
+#217 := (or #203 #211)
+#258 := (ite #217 #254 #257)
+#251 := (= #10 0::int)
+#13 := (= #9 0::int)
+#12 := (= #8 0::int)
+#14 := (or #12 #13)
+#259 := (ite #14 #251 #258)
+#753 := (forall (vars (?v0 int) (?v1 int)) (:pat #752) #259)
+#262 := (forall (vars (?v0 int) (?v1 int)) #259)
+#756 := (iff #262 #753)
+#754 := (iff #259 #259)
+#755 := [refl]: #754
+#757 := [quant-intro #755]: #756
+#222 := (ite #217 #21 #74)
+#225 := (ite #14 0::int #222)
+#228 := (= #10 #225)
+#231 := (forall (vars (?v0 int) (?v1 int)) #228)
+#263 := (iff #231 #262)
+#260 := (iff #228 #259)
+#261 := [rewrite]: #260
+#264 := [quant-intro #261]: #263
+#101 := (not #100)
+#94 := (not #93)
+#104 := (and #94 #101)
+#90 := (not #89)
+#97 := (and #90 #94)
+#107 := (or #97 #104)
+#110 := (ite #107 #21 #74)
+#113 := (ite #14 0::int #110)
+#116 := (= #10 #113)
+#119 := (forall (vars (?v0 int) (?v1 int)) #116)
+#232 := (iff #119 #231)
+#229 := (iff #116 #228)
+#226 := (= #113 #225)
+#223 := (= #110 #222)
+#220 := (iff #107 #217)
+#214 := (or #211 #203)
+#218 := (iff #214 #217)
+#219 := [rewrite]: #218
+#215 := (iff #107 #214)
+#212 := (iff #104 #203)
+#213 := [rewrite]: #212
+#200 := (iff #97 #211)
+#201 := [rewrite]: #200
+#216 := [monotonicity #201 #213]: #215
+#221 := [trans #216 #219]: #220
+#224 := [monotonicity #221]: #223
+#227 := [monotonicity #224]: #226
+#230 := [monotonicity #227]: #229
+#233 := [quant-intro #230]: #232
+#206 := (~ #119 #119)
+#204 := (~ #116 #116)
+#205 := [refl]: #204
+#207 := [nnf-pos #205]: #206
+#23 := (- #9)
+#22 := (- #8)
+#24 := (div #22 #23)
+#16 := (< 0::int #9)
+#18 := (< #8 0::int)
+#19 := (and #18 #16)
+#15 := (< 0::int #8)
+#17 := (and #15 #16)
+#20 := (or #17 #19)
+#25 := (ite #20 #21 #24)
+#26 := (ite #14 0::int #25)
+#27 := (= #10 #26)
+#28 := (forall (vars (?v0 int) (?v1 int)) #27)
+#122 := (iff #28 #119)
+#61 := (and #16 #18)
+#64 := (or #17 #61)
+#77 := (ite #64 #21 #74)
+#80 := (ite #14 0::int #77)
+#83 := (= #10 #80)
+#86 := (forall (vars (?v0 int) (?v1 int)) #83)
+#120 := (iff #86 #119)
+#117 := (iff #83 #116)
+#114 := (= #80 #113)
+#111 := (= #77 #110)
+#108 := (iff #64 #107)
+#105 := (iff #61 #104)
+#102 := (iff #18 #101)
+#103 := [rewrite]: #102
+#95 := (iff #16 #94)
+#96 := [rewrite]: #95
+#106 := [monotonicity #96 #103]: #105
+#98 := (iff #17 #97)
+#91 := (iff #15 #90)
+#92 := [rewrite]: #91
+#99 := [monotonicity #92 #96]: #98
+#109 := [monotonicity #99 #106]: #108
+#112 := [monotonicity #109]: #111
+#115 := [monotonicity #112]: #114
+#118 := [monotonicity #115]: #117
+#121 := [quant-intro #118]: #120
+#87 := (iff #28 #86)
+#84 := (iff #27 #83)
+#81 := (= #26 #80)
+#78 := (= #25 #77)
+#75 := (= #24 #74)
+#72 := (= #23 #71)
+#73 := [rewrite]: #72
+#69 := (= #22 #68)
+#70 := [rewrite]: #69
+#76 := [monotonicity #70 #73]: #75
+#65 := (iff #20 #64)
+#62 := (iff #19 #61)
+#63 := [rewrite]: #62
+#66 := [monotonicity #63]: #65
+#79 := [monotonicity #66 #76]: #78
+#82 := [monotonicity #79]: #81
+#85 := [monotonicity #82]: #84
+#88 := [quant-intro #85]: #87
+#123 := [trans #88 #121]: #122
+#60 := [asserted]: #28
+#124 := [mp #60 #123]: #119
+#197 := [mp~ #124 #207]: #119
+#234 := [mp #197 #233]: #231
+#265 := [mp #234 #264]: #262
+#758 := [mp #265 #757]: #753
+#665 := (not #753)
+#667 := (or #665 #176)
+#339 := (* -1::int 3::int)
+#423 := (* -1::int -1::int)
+#424 := (div #423 #339)
+#425 := (* -1::int #424)
+#416 := (+ #173 #425)
+#427 := (= #416 0::int)
+#428 := (div -1::int 3::int)
+#429 := (* -1::int #428)
+#426 := (+ #173 #429)
+#430 := (= #426 0::int)
+#409 := (<= 3::int 0::int)
+#744 := (<= -1::int 0::int)
+#746 := (or #744 #409)
+#403 := (not #746)
+#533 := (>= -1::int 0::int)
+#740 := (or #409 #533)
+#414 := (not #740)
+#415 := (or #414 #403)
+#747 := (ite #415 #430 #427)
+#748 := (= #173 0::int)
+#749 := (= 3::int 0::int)
+#750 := (= -1::int 0::int)
+#745 := (or #750 #749)
+#751 := (ite #745 #748 #747)
+#677 := (or #665 #751)
+#679 := (iff #677 #667)
+#680 := (iff #667 #667)
+#669 := [rewrite]: #680
+#676 := (iff #751 #176)
+#593 := (ite false #748 #176)
+#687 := (iff #593 #176)
+#674 := [rewrite]: #687
+#686 := (iff #751 #593)
+#591 := (iff #747 #176)
+#1 := true
+#587 := (ite true #176 #748)
+#589 := (iff #587 #176)
+#590 := [rewrite]: #589
+#588 := (iff #747 #587)
+#570 := (iff #427 #748)
+#682 := (= #416 #173)
+#577 := (+ #173 0::int)
+#586 := (= #577 #173)
+#681 := [rewrite]: #586
+#536 := (= #416 #577)
+#575 := (= #425 0::int)
+#689 := (* -1::int 0::int)
+#690 := (= #689 0::int)
+#693 := [rewrite]: #690
+#691 := (= #425 #689)
+#535 := (= #424 0::int)
+#694 := -3::int
+#702 := (div 1::int -3::int)
+#532 := (= #702 0::int)
+#534 := [rewrite]: #532
+#696 := (= #424 #702)
+#695 := (= #339 -3::int)
+#701 := [rewrite]: #695
+#717 := (= #423 1::int)
+#714 := [rewrite]: #717
+#703 := [monotonicity #714 #701]: #696
+#688 := [trans #703 #534]: #535
+#692 := [monotonicity #688]: #691
+#576 := [trans #692 #693]: #575
+#684 := [monotonicity #576]: #536
+#685 := [trans #684 #681]: #682
+#585 := [monotonicity #685]: #570
+#699 := (iff #430 #176)
+#705 := (+ 1::int #173)
+#553 := (= #705 0::int)
+#697 := (iff #553 #176)
+#698 := [rewrite]: #697
+#554 := (iff #430 #553)
+#706 := (= #426 #705)
+#708 := (+ #173 1::int)
+#710 := (= #708 #705)
+#711 := [rewrite]: #710
+#709 := (= #426 #708)
+#718 := (= #429 1::int)
+#431 := (= #429 #423)
+#715 := (= #428 -1::int)
+#716 := [rewrite]: #715
+#713 := [monotonicity #716]: #431
+#707 := [trans #713 #714]: #718
+#704 := [monotonicity #707]: #709
+#712 := [trans #704 #711]: #706
+#555 := [monotonicity #712]: #554
+#700 := [trans #555 #698]: #699
+#436 := (iff #415 true)
+#726 := (or true false)
+#450 := (iff #726 true)
+#451 := [rewrite]: #450
+#434 := (iff #415 #726)
+#720 := (iff #403 false)
+#722 := (not true)
+#719 := (iff #722 false)
+#723 := [rewrite]: #719
+#444 := (iff #403 #722)
+#345 := (iff #746 true)
+#448 := (iff #746 #726)
+#393 := (iff #409 false)
+#729 := [rewrite]: #393
+#739 := (iff #744 true)
+#725 := [rewrite]: #739
+#449 := [monotonicity #725 #729]: #448
+#721 := [trans #449 #451]: #345
+#445 := [monotonicity #721]: #444
+#724 := [trans #445 #723]: #720
+#738 := (iff #414 true)
+#372 := (not false)
+#377 := (iff #372 true)
+#378 := [rewrite]: #377
+#735 := (iff #414 #372)
+#728 := (iff #740 false)
+#402 := (or false false)
+#727 := (iff #402 false)
+#390 := [rewrite]: #727
+#732 := (iff #740 #402)
+#730 := (iff #533 false)
+#731 := [rewrite]: #730
+#733 := [monotonicity #729 #731]: #732
+#734 := [trans #733 #390]: #728
+#737 := [monotonicity #734]: #735
+#736 := [trans #737 #378]: #738
+#435 := [monotonicity #736 #724]: #434
+#437 := [trans #435 #451]: #436
+#581 := [monotonicity #437 #700 #585]: #588
+#592 := [trans #581 #590]: #591
+#391 := (iff #745 false)
+#743 := (iff #745 #402)
+#406 := (iff #749 false)
+#742 := [rewrite]: #406
+#741 := (iff #750 false)
+#401 := [rewrite]: #741
+#386 := [monotonicity #401 #742]: #743
+#392 := [trans #386 #390]: #391
+#683 := [monotonicity #392 #592]: #686
+#668 := [trans #683 #674]: #676
+#675 := [monotonicity #668]: #679
+#670 := [trans #675 #669]: #679
+#678 := [quant-inst]: #677
+#671 := [mp #678 #670]: #667
+[unit-resolution #671 #758 #194]: false
+unsat
+033c174f82b5a84d7fb4bb3712b35d17f518a720 328 0
 #2 := false
 #41 := 2::int
 decl f4 :: (-> int int int)
@@ -36768,329 +37090,7 @@
 #641 := [mp #635 #636]: #650
 [unit-resolution #641 #742 #170]: false
 unsat
-a5e7ca3a1a908b3cfa96261b62a5e5f564ff08b5 321 0
-#2 := false
-#67 := -1::int
-decl f3 :: (-> int int int)
-#40 := 3::int
-#173 := (f3 -1::int 3::int)
-#176 := (= #173 -1::int)
-#189 := (not #176)
-#38 := 1::int
-#39 := (- 1::int)
-#41 := (f3 #39 3::int)
-#42 := (= #41 #39)
-#43 := (not #42)
-#192 := (iff #43 #189)
-#179 := (= -1::int #173)
-#184 := (not #179)
-#190 := (iff #184 #189)
-#187 := (iff #179 #176)
-#188 := [rewrite]: #187
-#191 := [monotonicity #188]: #190
-#185 := (iff #43 #184)
-#182 := (iff #42 #179)
-#180 := (iff #176 #179)
-#181 := [rewrite]: #180
-#177 := (iff #42 #176)
-#171 := (= #39 -1::int)
-#172 := [rewrite]: #171
-#174 := (= #41 #173)
-#175 := [monotonicity #172]: #174
-#178 := [monotonicity #175 #172]: #177
-#183 := [trans #178 #181]: #182
-#186 := [monotonicity #183]: #185
-#193 := [trans #186 #191]: #192
-#170 := [asserted]: #43
-#194 := [mp #170 #193]: #189
-#9 := (:var 0 int)
-#8 := (:var 1 int)
-#10 := (f3 #8 #9)
-#752 := (pattern #10)
-#11 := 0::int
-#71 := (* -1::int #9)
-#68 := (* -1::int #8)
-#74 := (div #68 #71)
-#255 := (* -1::int #74)
-#256 := (+ #10 #255)
-#257 := (= #256 0::int)
-#21 := (div #8 #9)
-#252 := (* -1::int #21)
-#253 := (+ #10 #252)
-#254 := (= #253 0::int)
-#93 := (<= #9 0::int)
-#89 := (<= #8 0::int)
-#210 := (or #89 #93)
-#211 := (not #210)
-#100 := (>= #8 0::int)
-#202 := (or #93 #100)
-#203 := (not #202)
-#217 := (or #203 #211)
-#258 := (ite #217 #254 #257)
-#251 := (= #10 0::int)
-#13 := (= #9 0::int)
-#12 := (= #8 0::int)
-#14 := (or #12 #13)
-#259 := (ite #14 #251 #258)
-#753 := (forall (vars (?v0 int) (?v1 int)) (:pat #752) #259)
-#262 := (forall (vars (?v0 int) (?v1 int)) #259)
-#756 := (iff #262 #753)
-#754 := (iff #259 #259)
-#755 := [refl]: #754
-#757 := [quant-intro #755]: #756
-#222 := (ite #217 #21 #74)
-#225 := (ite #14 0::int #222)
-#228 := (= #10 #225)
-#231 := (forall (vars (?v0 int) (?v1 int)) #228)
-#263 := (iff #231 #262)
-#260 := (iff #228 #259)
-#261 := [rewrite]: #260
-#264 := [quant-intro #261]: #263
-#101 := (not #100)
-#94 := (not #93)
-#104 := (and #94 #101)
-#90 := (not #89)
-#97 := (and #90 #94)
-#107 := (or #97 #104)
-#110 := (ite #107 #21 #74)
-#113 := (ite #14 0::int #110)
-#116 := (= #10 #113)
-#119 := (forall (vars (?v0 int) (?v1 int)) #116)
-#232 := (iff #119 #231)
-#229 := (iff #116 #228)
-#226 := (= #113 #225)
-#223 := (= #110 #222)
-#220 := (iff #107 #217)
-#214 := (or #211 #203)
-#218 := (iff #214 #217)
-#219 := [rewrite]: #218
-#215 := (iff #107 #214)
-#212 := (iff #104 #203)
-#213 := [rewrite]: #212
-#200 := (iff #97 #211)
-#201 := [rewrite]: #200
-#216 := [monotonicity #201 #213]: #215
-#221 := [trans #216 #219]: #220
-#224 := [monotonicity #221]: #223
-#227 := [monotonicity #224]: #226
-#230 := [monotonicity #227]: #229
-#233 := [quant-intro #230]: #232
-#206 := (~ #119 #119)
-#204 := (~ #116 #116)
-#205 := [refl]: #204
-#207 := [nnf-pos #205]: #206
-#23 := (- #9)
-#22 := (- #8)
-#24 := (div #22 #23)
-#16 := (< 0::int #9)
-#18 := (< #8 0::int)
-#19 := (and #18 #16)
-#15 := (< 0::int #8)
-#17 := (and #15 #16)
-#20 := (or #17 #19)
-#25 := (ite #20 #21 #24)
-#26 := (ite #14 0::int #25)
-#27 := (= #10 #26)
-#28 := (forall (vars (?v0 int) (?v1 int)) #27)
-#122 := (iff #28 #119)
-#61 := (and #16 #18)
-#64 := (or #17 #61)
-#77 := (ite #64 #21 #74)
-#80 := (ite #14 0::int #77)
-#83 := (= #10 #80)
-#86 := (forall (vars (?v0 int) (?v1 int)) #83)
-#120 := (iff #86 #119)
-#117 := (iff #83 #116)
-#114 := (= #80 #113)
-#111 := (= #77 #110)
-#108 := (iff #64 #107)
-#105 := (iff #61 #104)
-#102 := (iff #18 #101)
-#103 := [rewrite]: #102
-#95 := (iff #16 #94)
-#96 := [rewrite]: #95
-#106 := [monotonicity #96 #103]: #105
-#98 := (iff #17 #97)
-#91 := (iff #15 #90)
-#92 := [rewrite]: #91
-#99 := [monotonicity #92 #96]: #98
-#109 := [monotonicity #99 #106]: #108
-#112 := [monotonicity #109]: #111
-#115 := [monotonicity #112]: #114
-#118 := [monotonicity #115]: #117
-#121 := [quant-intro #118]: #120
-#87 := (iff #28 #86)
-#84 := (iff #27 #83)
-#81 := (= #26 #80)
-#78 := (= #25 #77)
-#75 := (= #24 #74)
-#72 := (= #23 #71)
-#73 := [rewrite]: #72
-#69 := (= #22 #68)
-#70 := [rewrite]: #69
-#76 := [monotonicity #70 #73]: #75
-#65 := (iff #20 #64)
-#62 := (iff #19 #61)
-#63 := [rewrite]: #62
-#66 := [monotonicity #63]: #65
-#79 := [monotonicity #66 #76]: #78
-#82 := [monotonicity #79]: #81
-#85 := [monotonicity #82]: #84
-#88 := [quant-intro #85]: #87
-#123 := [trans #88 #121]: #122
-#60 := [asserted]: #28
-#124 := [mp #60 #123]: #119
-#197 := [mp~ #124 #207]: #119
-#234 := [mp #197 #233]: #231
-#265 := [mp #234 #264]: #262
-#758 := [mp #265 #757]: #753
-#665 := (not #753)
-#667 := (or #665 #176)
-#339 := (* -1::int 3::int)
-#423 := (* -1::int -1::int)
-#424 := (div #423 #339)
-#425 := (* -1::int #424)
-#416 := (+ #173 #425)
-#427 := (= #416 0::int)
-#428 := (div -1::int 3::int)
-#429 := (* -1::int #428)
-#426 := (+ #173 #429)
-#430 := (= #426 0::int)
-#409 := (<= 3::int 0::int)
-#744 := (<= -1::int 0::int)
-#746 := (or #744 #409)
-#403 := (not #746)
-#533 := (>= -1::int 0::int)
-#740 := (or #409 #533)
-#414 := (not #740)
-#415 := (or #414 #403)
-#747 := (ite #415 #430 #427)
-#748 := (= #173 0::int)
-#749 := (= 3::int 0::int)
-#750 := (= -1::int 0::int)
-#745 := (or #750 #749)
-#751 := (ite #745 #748 #747)
-#677 := (or #665 #751)
-#679 := (iff #677 #667)
-#680 := (iff #667 #667)
-#669 := [rewrite]: #680
-#676 := (iff #751 #176)
-#593 := (ite false #748 #176)
-#687 := (iff #593 #176)
-#674 := [rewrite]: #687
-#686 := (iff #751 #593)
-#591 := (iff #747 #176)
-#1 := true
-#587 := (ite true #176 #748)
-#589 := (iff #587 #176)
-#590 := [rewrite]: #589
-#588 := (iff #747 #587)
-#570 := (iff #427 #748)
-#682 := (= #416 #173)
-#577 := (+ #173 0::int)
-#586 := (= #577 #173)
-#681 := [rewrite]: #586
-#536 := (= #416 #577)
-#575 := (= #425 0::int)
-#689 := (* -1::int 0::int)
-#690 := (= #689 0::int)
-#693 := [rewrite]: #690
-#691 := (= #425 #689)
-#535 := (= #424 0::int)
-#694 := -3::int
-#702 := (div 1::int -3::int)
-#532 := (= #702 0::int)
-#534 := [rewrite]: #532
-#696 := (= #424 #702)
-#695 := (= #339 -3::int)
-#701 := [rewrite]: #695
-#717 := (= #423 1::int)
-#714 := [rewrite]: #717
-#703 := [monotonicity #714 #701]: #696
-#688 := [trans #703 #534]: #535
-#692 := [monotonicity #688]: #691
-#576 := [trans #692 #693]: #575
-#684 := [monotonicity #576]: #536
-#685 := [trans #684 #681]: #682
-#585 := [monotonicity #685]: #570
-#699 := (iff #430 #176)
-#705 := (+ 1::int #173)
-#553 := (= #705 0::int)
-#697 := (iff #553 #176)
-#698 := [rewrite]: #697
-#554 := (iff #430 #553)
-#706 := (= #426 #705)
-#708 := (+ #173 1::int)
-#710 := (= #708 #705)
-#711 := [rewrite]: #710
-#709 := (= #426 #708)
-#718 := (= #429 1::int)
-#431 := (= #429 #423)
-#715 := (= #428 -1::int)
-#716 := [rewrite]: #715
-#713 := [monotonicity #716]: #431
-#707 := [trans #713 #714]: #718
-#704 := [monotonicity #707]: #709
-#712 := [trans #704 #711]: #706
-#555 := [monotonicity #712]: #554
-#700 := [trans #555 #698]: #699
-#436 := (iff #415 true)
-#726 := (or true false)
-#450 := (iff #726 true)
-#451 := [rewrite]: #450
-#434 := (iff #415 #726)
-#720 := (iff #403 false)
-#722 := (not true)
-#719 := (iff #722 false)
-#723 := [rewrite]: #719
-#444 := (iff #403 #722)
-#345 := (iff #746 true)
-#448 := (iff #746 #726)
-#393 := (iff #409 false)
-#729 := [rewrite]: #393
-#739 := (iff #744 true)
-#725 := [rewrite]: #739
-#449 := [monotonicity #725 #729]: #448
-#721 := [trans #449 #451]: #345
-#445 := [monotonicity #721]: #444
-#724 := [trans #445 #723]: #720
-#738 := (iff #414 true)
-#372 := (not false)
-#377 := (iff #372 true)
-#378 := [rewrite]: #377
-#735 := (iff #414 #372)
-#728 := (iff #740 false)
-#402 := (or false false)
-#727 := (iff #402 false)
-#390 := [rewrite]: #727
-#732 := (iff #740 #402)
-#730 := (iff #533 false)
-#731 := [rewrite]: #730
-#733 := [monotonicity #729 #731]: #732
-#734 := [trans #733 #390]: #728
-#737 := [monotonicity #734]: #735
-#736 := [trans #737 #378]: #738
-#435 := [monotonicity #736 #724]: #434
-#437 := [trans #435 #451]: #436
-#581 := [monotonicity #437 #700 #585]: #588
-#592 := [trans #581 #590]: #591
-#391 := (iff #745 false)
-#743 := (iff #745 #402)
-#406 := (iff #749 false)
-#742 := [rewrite]: #406
-#741 := (iff #750 false)
-#401 := [rewrite]: #741
-#386 := [monotonicity #401 #742]: #743
-#392 := [trans #386 #390]: #391
-#683 := [monotonicity #392 #592]: #686
-#668 := [trans #683 #674]: #676
-#675 := [monotonicity #668]: #679
-#670 := [trans #675 #669]: #679
-#678 := [quant-inst]: #677
-#671 := [mp #678 #670]: #667
-[unit-resolution #671 #758 #194]: false
-unsat
-4a26f9179dc065943e8b39f87c50b753014abca8 323 0
+d42aa6984a7dce484750bcd7fd3519e7754fc33c 323 0
 #2 := false
 #68 := -1::int
 decl f3 :: (-> int int int)
@@ -37414,7 +37414,7 @@
 #673 := [mp #671 #684]: #672
 [unit-resolution #673 #762 #198]: false
 unsat
-f77523eb025c744a899f70384fe23771c2e2df49 335 0
+9a87ecccd917767a2618c6aa64ea49313201d461 335 0
 #2 := false
 #179 := -2::int
 decl f4 :: (-> int int int)
@@ -37750,7 +37750,7 @@
 #666 := [mp #673 #665]: #671
 [unit-resolution #666 #759 #190]: false
 unsat
-aa5c848d75f817ce17fcfbcc43fdae3201eb9151 326 0
+ad2a6875c2ba06fc01a6747490a7bde0bd97929e 326 0
 #2 := false
 #179 := -2::int
 decl f3 :: (-> int int int)
@@ -38077,7 +38077,7 @@
 #654 := [mp #652 #658]: #661
 [unit-resolution #654 #753 #190]: false
 unsat
-51326f007e56e93f50afc5ba2d03581cdc697a2d 328 0
+b80549d22ecf7f5cd139430555c8f40a8bf6eaf1 328 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -38406,7 +38406,7 @@
 #688 := [mp #591 #684]: #582
 [unit-resolution #688 #766 #194]: false
 unsat
-4ca477e5a43a16dacbb90f983ac5a8510c16d464 327 0
+f5bac51774cbba53d38c1b1a54df34cd76c05e60 327 0
 #2 := false
 #11 := 0::int
 decl f3 :: (-> int int int)
@@ -38734,7 +38734,7 @@
 #670 := [mp #679 #676]: #682
 [unit-resolution #670 #762 #198]: false
 unsat
-0f74c41c938e9378ba24d8b61b7a4d0b50210370 356 0
+0b4939d8f1f4bc7cd881c6a957ccad857d8a1074 356 0
 #2 := false
 #69 := -1::int
 decl f4 :: (-> int int int)
@@ -39091,7 +39091,7 @@
 #669 := [mp #663 #664]: #678
 [unit-resolution #669 #770 #199]: false
 unsat
-ddc5a6b304650a08be4d46afd02b8b25ea1c25a2 311 0
+970747fa305dc2e610f7c82f817720c0ccc3a165 311 0
 #2 := false
 #41 := 1::int
 decl f3 :: (-> int int int)
@@ -39403,7 +39403,7 @@
 #677 := [mp #593 #675]: #591
 [unit-resolution #677 #759 #195]: false
 unsat
-3c5a12d92626ff8ea2f3e7c2d04bebd45ef00916 350 0
+fdc90ed3bd1ececd431bc0c6098387ca00c73cfc 350 0
 #2 := false
 #42 := 2::int
 decl f4 :: (-> int int int)
@@ -39754,7 +39754,7 @@
 #664 := [mp #674 #663]: #673
 [unit-resolution #664 #766 #195]: false
 unsat
-081d17418769caf8ceb0841229da368f6008d179 338 0
+b3920b336e88838381046f8db8a66873eedc037f 338 0
 #2 := false
 #43 := 1::int
 decl f3 :: (-> int int int)
@@ -40093,7 +40093,7 @@
 #670 := [mp #664 #665]: #679
 [unit-resolution #670 #764 #200]: false
 unsat
-9ee8d0dc4ede7b68c19a265d2c4cda80156ee20b 331 0
+751a59e3560a9cccfdefaac76c413ce978cf57af 331 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -40425,7 +40425,7 @@
 #669 := [mp #594 #677]: #592
 [unit-resolution #669 #766 #194]: false
 unsat
-ab1c3c43720ded895d2a82ffbaf56e6367dbc9b8 592 0
+1e04803c850b7955989debde9ec201f52ca7253f 592 0
 #2 := false
 #11 := 0::int
 decl f3 :: (-> int int int)
@@ -41018,7 +41018,7 @@
 #362 := [unit-resolution #397 #361]: #600
 [th-lemma #362 #415 #382 #378]: false
 unsat
-0dff6836610ad24fd350792fdba18f67fffe78ae 353 0
+0014d0664084b0406eb7d7fe8514292d539673ea 353 0
 #2 := false
 #42 := 1::int
 decl f4 :: (-> int int int)
@@ -41372,7 +41372,7 @@
 #666 := [mp #660 #661]: #675
 [unit-resolution #666 #767 #196]: false
 unsat
-f7d21861165159375bc45e6364e84fc0183b7f2c 549 0
+b73a0de984e1278677e252eddd5f49245a89ef43 549 0
 #2 := false
 #11 := 0::int
 decl f3 :: (-> int int int)
@@ -41922,7 +41922,7 @@
 #478 := [unit-resolution #470 #507]: #751
 [th-lemma #478 #476 #486 #472]: false
 unsat
-2131919aacf2b81143bdcdf048ab7c7b571f4dab 350 0
+69b248ec4c8c22d71fd11309dbdf636ac009612d 350 0
 #2 := false
 #68 := -1::int
 decl f4 :: (-> int int int)
@@ -42273,7 +42273,7 @@
 #664 := [mp #675 #662]: #673
 [unit-resolution #664 #769 #198]: false
 unsat
-f185b775c0ed207acb3897bf916bd950213b79f9 319 0
+206d37ba92a2e6c0100ce1d13f8823dad1d40cd1 319 0
 #2 := false
 #11 := 0::int
 decl f4 :: (-> int int int)
@@ -42593,7 +42593,7 @@
 #589 := [mp #682 #588]: #685
 [unit-resolution #589 #766 #194]: false
 unsat
-b8a677f41acfea6ca1bd28f53fd89f2c10758abc 75 0
+cc9432c40327db517dd79cbbd0d9d26dcbfe5cac 75 0
 #2 := false
 #8 := 0::int
 decl f3 :: int
@@ -42669,7 +42669,7 @@
 #96 := [unit-resolution #95 #92]: #90
 [th-lemma #89 #70 #96]: false
 unsat
-957272aa2f77e61687a16c7aa490ba2664908958 132 0
+48eb42104c7475e8c3a01fc47d1fb95a5b64e0b9 132 0
 #2 := false
 #9 := 0::int
 decl f3 :: int
@@ -42802,7 +42802,7 @@
 #162 := [th-lemma]: #161
 [unit-resolution #162 #160 #143]: false
 unsat
-9485d306079aa8cdc08952543a8ac86391d45fc0 103 0
+029c5fe4db8f26b45338d7437b6be2ddd1a19e85 103 0
 #2 := false
 #8 := 0::int
 decl f3 :: int
@@ -42906,7 +42906,7 @@
 #124 := [unit-resolution #123 #120]: #115
 [th-lemma #110 #124]: false
 unsat
-fc9f250b0540aecbc3a008bfe364829a1228d272 347 0
+830c72401ff6ad8a8e8d6573aef1bb4cebf52b34 347 0
 #2 := false
 #183 := -2::int
 decl f4 :: (-> int int int)
@@ -43254,7 +43254,7 @@
 #661 := [mp #665 #660]: #670
 [unit-resolution #661 #764 #194]: false
 unsat
-443d726f158e992756000aa2462469d5494d62ee 149 0
+52af3e6f56c34eae5bf2a6d6b943c47275276ffc 149 0
 #2 := false
 #9 := 0::int
 decl f3 :: int
@@ -43404,7 +43404,7 @@
 #170 := [unit-resolution #169 #155]: #97
 [th-lemma #159 #170 #167]: false
 unsat
-5d75c12dca04a93af891e80a12133cb48b0e8ce3 114 0
+a6116a7f03a76aa4ac7d1dcd46146a27d6d63ab1 114 0
 #2 := false
 #9 := 0::int
 decl f3 :: int
@@ -43519,7 +43519,7 @@
 #143 := [unit-resolution #142 #139]: #137
 [th-lemma #136 #134 #143]: false
 unsat
-1c29e683939b29daf6c0c39d6dc5211f90494d2b 57 0
+e4b94493f8fddbc193be4dbfae372055ca4cbda1 57 0
 #2 := false
 #36 := 0::int
 decl f4 :: int
@@ -43577,7 +43577,7 @@
 #77 := [th-lemma]: #76
 [unit-resolution #77 #74 #56]: false
 unsat
-66247d826364718443f0bc07b82495d982768eb5 327 0
+0296c8b047bf7c4a566214ff7059485e4b909dfc 327 0
 #2 := false
 #11 := 0::int
 decl f5 :: int
@@ -43905,7 +43905,7 @@
 #595 := [unit-resolution #594 #613]: #727
 [unit-resolution #595 #482 #589]: false
 unsat
-f5bdd04ade0ff62ddedb44ca71a4ab32cea43ed1 57 0
+91e3b65fe0735963e19e3d7ce9fe3c5222eb3f2d 57 0
 #2 := false
 #36 := 0::int
 decl f4 :: int
@@ -43963,7 +43963,7 @@
 #77 := [unit-resolution #76 #73]: #71
 [th-lemma #77 #56 #72]: false
 unsat
-db7c87847633d861c99b1fec84d68fb0617d9c27 103 0
+e8ac648521d18274c15ba44956491a942644e11b 103 0
 #2 := false
 #45 := 0::int
 decl f5 :: int
@@ -44067,7 +44067,7 @@
 #122 := [unit-resolution #121 #118]: #115
 [th-lemma #122 #92 #93]: false
 unsat
-30ec056750b76c9c44be73825eb8959f04eaf2af 86 0
+ce75b686fb3c3081849ae555f6c4209952006101 86 0
 #2 := false
 decl f3 :: int
 #8 := f3
@@ -44154,7 +44154,7 @@
 #105 := [trans #104 #83]: #51
 [unit-resolution #57 #105]: false
 unsat
-87cffe59a43ecd3ffcda40df06578c44d2a9feac 68 0
+5ed6ad8b6d8d132011755b1d04d869cf48c13481 68 0
 #2 := false
 #8 := 0::int
 decl f3 :: int
@@ -44223,132 +44223,7 @@
 #88 := [trans #87 #84]: #13
 [unit-resolution #71 #88]: false
 unsat
-90c0dd925b0006ab13047c20a6f0e8d277ec4cdf 124 0
-#2 := false
-#13 := 0::int
-decl f4 :: int
-#9 := f4
-decl f3 :: int
-#8 := f3
-#36 := -1::int
-#38 := (* -1::int f4)
-#51 := (+ f3 #38)
-#52 := (<= #51 0::int)
-#55 := (ite #52 f3 f4)
-#103 := (* -1::int #55)
-#104 := (+ f3 #103)
-#106 := (>= #104 0::int)
-#91 := (= f3 #55)
-#105 := (+ f4 #103)
-#123 := (>= #105 0::int)
-#92 := (= f4 #55)
-#93 := (not #52)
-#134 := [hypothesis]: #93
-#90 := (or #52 #92)
-#88 := [def-axiom]: #90
-#135 := [unit-resolution #88 #134]: #92
-#126 := (not #92)
-#127 := (or #126 #123)
-#128 := [th-lemma]: #127
-#136 := [unit-resolution #128 #135]: #123
-#37 := (* -1::int f3)
-#39 := (+ #37 #38)
-#12 := (+ f3 f4)
-#58 := (>= #12 0::int)
-#65 := (ite #58 #12 #39)
-#73 := (* -1::int #65)
-#74 := (+ #55 #73)
-#75 := (<= #74 0::int)
-#80 := (not #75)
-#15 := (- #12)
-#14 := (< #12 0::int)
-#16 := (ite #14 #15 #12)
-#10 := (<= f3 f4)
-#11 := (ite #10 f3 f4)
-#17 := (<= #11 #16)
-#18 := (not #17)
-#83 := (iff #18 #80)
-#42 := (ite #14 #39 #12)
-#45 := (<= #11 #42)
-#48 := (not #45)
-#81 := (iff #48 #80)
-#78 := (iff #45 #75)
-#70 := (<= #55 #65)
-#76 := (iff #70 #75)
-#77 := [rewrite]: #76
-#71 := (iff #45 #70)
-#68 := (= #42 #65)
-#59 := (not #58)
-#62 := (ite #59 #39 #12)
-#66 := (= #62 #65)
-#67 := [rewrite]: #66
-#63 := (= #42 #62)
-#60 := (iff #14 #59)
-#61 := [rewrite]: #60
-#64 := [monotonicity #61]: #63
-#69 := [trans #64 #67]: #68
-#56 := (= #11 #55)
-#53 := (iff #10 #52)
-#54 := [rewrite]: #53
-#57 := [monotonicity #54]: #56
-#72 := [monotonicity #57 #69]: #71
-#79 := [trans #72 #77]: #78
-#82 := [monotonicity #79]: #81
-#49 := (iff #18 #48)
-#46 := (iff #17 #45)
-#43 := (= #16 #42)
-#40 := (= #15 #39)
-#41 := [rewrite]: #40
-#44 := [monotonicity #41]: #43
-#47 := [monotonicity #44]: #46
-#50 := [monotonicity #47]: #49
-#84 := [trans #50 #82]: #83
-#35 := [asserted]: #18
-#85 := [mp #35 #84]: #80
-#102 := (+ #12 #73)
-#122 := (<= #102 0::int)
-#86 := (= #12 #65)
-#108 := [hypothesis]: #59
-#120 := (or #93 #58)
-#107 := [hypothesis]: #52
-#100 := (+ #39 #73)
-#101 := (<= #100 0::int)
-#95 := (= #39 #65)
-#98 := (or #58 #95)
-#99 := [def-axiom]: #98
-#109 := [unit-resolution #99 #108]: #95
-#110 := (not #95)
-#111 := (or #110 #101)
-#112 := [th-lemma]: #111
-#113 := [unit-resolution #112 #109]: #101
-#94 := (or #93 #91)
-#89 := [def-axiom]: #94
-#114 := [unit-resolution #89 #107]: #91
-#115 := (not #91)
-#116 := (or #115 #106)
-#117 := [th-lemma]: #116
-#118 := [unit-resolution #117 #114]: #106
-#119 := [th-lemma #108 #118 #113 #85 #107]: false
-#121 := [lemma #119]: #120
-#124 := [unit-resolution #121 #108]: #93
-#125 := [unit-resolution #88 #124]: #92
-#129 := [unit-resolution #128 #125]: #123
-#130 := [th-lemma #113 #85 #108 #124 #129]: false
-#131 := [lemma #130]: #58
-#96 := (or #59 #86)
-#97 := [def-axiom]: #96
-#137 := [unit-resolution #97 #131]: #86
-#138 := (not #86)
-#139 := (or #138 #122)
-#140 := [th-lemma]: #139
-#141 := [unit-resolution #140 #137]: #122
-#142 := [th-lemma #134 #131 #141 #85 #136]: false
-#143 := [lemma #142]: #52
-#144 := [unit-resolution #89 #143]: #91
-#145 := [unit-resolution #117 #144]: #106
-[th-lemma #131 #143 #141 #85 #145]: false
-unsat
-e48a7e8698a7ec4071541fd4399337a2b0f4fdb6 345 0
+f33aa883aeb7c21943e04cb493978fec1eef7863 345 0
 #2 := false
 #39 := 3::int
 decl f4 :: (-> int int int)
@@ -44694,7 +44569,132 @@
 #624 := [unit-resolution #628 #626]: #707
 [th-lemma #624 #612 #206 #631 #648]: false
 unsat
-de67b37b9c3eba477099ff5d9b09e840de376762 57 0
+676aec4873ed7d4eeb51bdde607873c00764a075 124 0
+#2 := false
+#13 := 0::int
+decl f4 :: int
+#9 := f4
+decl f3 :: int
+#8 := f3
+#36 := -1::int
+#38 := (* -1::int f4)
+#51 := (+ f3 #38)
+#52 := (<= #51 0::int)
+#55 := (ite #52 f3 f4)
+#103 := (* -1::int #55)
+#104 := (+ f3 #103)
+#106 := (>= #104 0::int)
+#91 := (= f3 #55)
+#105 := (+ f4 #103)
+#123 := (>= #105 0::int)
+#92 := (= f4 #55)
+#93 := (not #52)
+#134 := [hypothesis]: #93
+#90 := (or #52 #92)
+#88 := [def-axiom]: #90
+#135 := [unit-resolution #88 #134]: #92
+#126 := (not #92)
+#127 := (or #126 #123)
+#128 := [th-lemma]: #127
+#136 := [unit-resolution #128 #135]: #123
+#37 := (* -1::int f3)
+#39 := (+ #37 #38)
+#12 := (+ f3 f4)
+#58 := (>= #12 0::int)
+#65 := (ite #58 #12 #39)
+#73 := (* -1::int #65)
+#74 := (+ #55 #73)
+#75 := (<= #74 0::int)
+#80 := (not #75)
+#15 := (- #12)
+#14 := (< #12 0::int)
+#16 := (ite #14 #15 #12)
+#10 := (<= f3 f4)
+#11 := (ite #10 f3 f4)
+#17 := (<= #11 #16)
+#18 := (not #17)
+#83 := (iff #18 #80)
+#42 := (ite #14 #39 #12)
+#45 := (<= #11 #42)
+#48 := (not #45)
+#81 := (iff #48 #80)
+#78 := (iff #45 #75)
+#70 := (<= #55 #65)
+#76 := (iff #70 #75)
+#77 := [rewrite]: #76
+#71 := (iff #45 #70)
+#68 := (= #42 #65)
+#59 := (not #58)
+#62 := (ite #59 #39 #12)
+#66 := (= #62 #65)
+#67 := [rewrite]: #66
+#63 := (= #42 #62)
+#60 := (iff #14 #59)
+#61 := [rewrite]: #60
+#64 := [monotonicity #61]: #63
+#69 := [trans #64 #67]: #68
+#56 := (= #11 #55)
+#53 := (iff #10 #52)
+#54 := [rewrite]: #53
+#57 := [monotonicity #54]: #56
+#72 := [monotonicity #57 #69]: #71
+#79 := [trans #72 #77]: #78
+#82 := [monotonicity #79]: #81
+#49 := (iff #18 #48)
+#46 := (iff #17 #45)
+#43 := (= #16 #42)
+#40 := (= #15 #39)
+#41 := [rewrite]: #40
+#44 := [monotonicity #41]: #43
+#47 := [monotonicity #44]: #46
+#50 := [monotonicity #47]: #49
+#84 := [trans #50 #82]: #83
+#35 := [asserted]: #18
+#85 := [mp #35 #84]: #80
+#102 := (+ #12 #73)
+#122 := (<= #102 0::int)
+#86 := (= #12 #65)
+#108 := [hypothesis]: #59
+#120 := (or #93 #58)
+#107 := [hypothesis]: #52
+#100 := (+ #39 #73)
+#101 := (<= #100 0::int)
+#95 := (= #39 #65)
+#98 := (or #58 #95)
+#99 := [def-axiom]: #98
+#109 := [unit-resolution #99 #108]: #95
+#110 := (not #95)
+#111 := (or #110 #101)
+#112 := [th-lemma]: #111
+#113 := [unit-resolution #112 #109]: #101
+#94 := (or #93 #91)
+#89 := [def-axiom]: #94
+#114 := [unit-resolution #89 #107]: #91
+#115 := (not #91)
+#116 := (or #115 #106)
+#117 := [th-lemma]: #116
+#118 := [unit-resolution #117 #114]: #106
+#119 := [th-lemma #108 #118 #113 #85 #107]: false
+#121 := [lemma #119]: #120
+#124 := [unit-resolution #121 #108]: #93
+#125 := [unit-resolution #88 #124]: #92
+#129 := [unit-resolution #128 #125]: #123
+#130 := [th-lemma #113 #85 #108 #124 #129]: false
+#131 := [lemma #130]: #58
+#96 := (or #59 #86)
+#97 := [def-axiom]: #96
+#137 := [unit-resolution #97 #131]: #86
+#138 := (not #86)
+#139 := (or #138 #122)
+#140 := [th-lemma]: #139
+#141 := [unit-resolution #140 #137]: #122
+#142 := [th-lemma #134 #131 #141 #85 #136]: false
+#143 := [lemma #142]: #52
+#144 := [unit-resolution #89 #143]: #91
+#145 := [unit-resolution #117 #144]: #106
+[th-lemma #131 #143 #141 #85 #145]: false
+unsat
+8c7ea6775a14dcc4e6e4353a2f19b1779116c872 57 0
 #2 := false
 #36 := 0::int
 decl f4 :: int
@@ -44752,7 +44752,7 @@
 #77 := [unit-resolution #76 #73]: #70
 [th-lemma #77 #56 #72]: false
 unsat
-8f0b2c755e25c9b0ef5750035ec56d21d3c6b32f 57 0
+d2ac6a0bd8f242b6fea1d95d6a700ca235f7739e 57 0
 #2 := false
 #35 := 0::int
 decl f4 :: int
@@ -44810,7 +44810,7 @@
 #77 := [th-lemma]: #76
 [unit-resolution #77 #74 #56]: false
 unsat
-ba050e782d9473f46d4f759400e69d34d257264e 103 0
+8bc37b5efc45a2f7051f9fdaf148c2248f44ab13 103 0
 #2 := false
 #45 := 0::int
 decl f3 :: int
@@ -44914,7 +44914,7 @@
 #122 := [unit-resolution #121 #118]: #116
 [th-lemma #122 #91 #93]: false
 unsat
-9c2cfdc304fee997e8f612dd9123abd86a877f29 88 0
+3bd554374bbb33d45f736a3866c11a3228de58fe 88 0
 #2 := false
 decl f4 :: int
 #9 := f4
@@ -45003,64 +45003,7 @@
 #109 := [trans #108 #83]: #51
 [unit-resolution #57 #109]: false
 unsat
-efdfb7635dd41e99f117d8463d9d75f3897207dd 56 0
-#2 := false
-#11 := 1::int
-decl f3 :: int
-#9 := f3
-#14 := (= f3 1::int)
-#12 := (<= f3 1::int)
-#8 := 0::int
-#41 := (<= f3 0::int)
-#42 := (not #41)
-#48 := (and #12 #42)
-#53 := (not #48)
-#59 := (or #14 #53)
-#64 := (not #59)
-#10 := (< 0::int f3)
-#13 := (and #10 #12)
-#15 := (implies #13 #14)
-#16 := (not #15)
-#67 := (iff #16 #64)
-#34 := (not #13)
-#35 := (or #34 #14)
-#38 := (not #35)
-#65 := (iff #38 #64)
-#62 := (iff #35 #59)
-#56 := (or #53 #14)
-#60 := (iff #56 #59)
-#61 := [rewrite]: #60
-#57 := (iff #35 #56)
-#54 := (iff #34 #53)
-#51 := (iff #13 #48)
-#45 := (and #42 #12)
-#49 := (iff #45 #48)
-#50 := [rewrite]: #49
-#46 := (iff #13 #45)
-#43 := (iff #10 #42)
-#44 := [rewrite]: #43
-#47 := [monotonicity #44]: #46
-#52 := [trans #47 #50]: #51
-#55 := [monotonicity #52]: #54
-#58 := [monotonicity #55]: #57
-#63 := [trans #58 #61]: #62
-#66 := [monotonicity #63]: #65
-#39 := (iff #16 #38)
-#36 := (iff #15 #35)
-#37 := [rewrite]: #36
-#40 := [monotonicity #37]: #39
-#68 := [trans #40 #66]: #67
-#33 := [asserted]: #16
-#69 := [mp #33 #68]: #64
-#72 := [not-or-elim #69]: #48
-#73 := [and-elim #72]: #12
-#74 := [and-elim #72]: #42
-#85 := [th-lemma #74 #73]: #14
-#70 := (not #14)
-#71 := [not-or-elim #69]: #70
-[unit-resolution #71 #85]: false
-unsat
-66ca5933e35ee3faa0336268f65c331335330f57 66 0
+0a0200d3ff0127396d33719b1042db644955b4a6 66 0
 #2 := false
 decl f3 :: int
 #9 := f3
@@ -45127,26 +45070,7 @@
 #86 := [trans #83 #85]: #33
 [unit-resolution #69 #86]: false
 unsat
-6a196ac012aba8c7b41b1d8437b14fc3fb23e5a4 18 0
-#2 := false
-decl f3 :: int
-#8 := f3
-#9 := (<= f3 f3)
-#10 := (not #9)
-#37 := (iff #10 false)
-#1 := true
-#32 := (not true)
-#35 := (iff #32 false)
-#36 := [rewrite]: #35
-#33 := (iff #10 #32)
-#30 := (iff #9 true)
-#31 := [rewrite]: #30
-#34 := [monotonicity #31]: #33
-#38 := [trans #34 #36]: #37
-#27 := [asserted]: #10
-[mp #27 #38]: false
-unsat
-a176c257f1c89ffea971e08639242e005fb1222f 228 0
+8577a1a174a114007fec8ab3e02f9bb87a08d3a4 228 0
 #2 := false
 #9 := 0::int
 decl f4 :: int
@@ -45375,7 +45299,83 @@
 #250 := [unit-resolution #196 #249]: #190
 [th-lemma #236 #250 #131 #234 #248 #238]: false
 unsat
-4afe860c901fd901bf34dc83b799fd986f9e4155 51 0
+5113b523f1372e7b618c36a10fb907e6373d5abd 56 0
+#2 := false
+#11 := 1::int
+decl f3 :: int
+#9 := f3
+#14 := (= f3 1::int)
+#12 := (<= f3 1::int)
+#8 := 0::int
+#41 := (<= f3 0::int)
+#42 := (not #41)
+#48 := (and #12 #42)
+#53 := (not #48)
+#59 := (or #14 #53)
+#64 := (not #59)
+#10 := (< 0::int f3)
+#13 := (and #10 #12)
+#15 := (implies #13 #14)
+#16 := (not #15)
+#67 := (iff #16 #64)
+#34 := (not #13)
+#35 := (or #34 #14)
+#38 := (not #35)
+#65 := (iff #38 #64)
+#62 := (iff #35 #59)
+#56 := (or #53 #14)
+#60 := (iff #56 #59)
+#61 := [rewrite]: #60
+#57 := (iff #35 #56)
+#54 := (iff #34 #53)
+#51 := (iff #13 #48)
+#45 := (and #42 #12)
+#49 := (iff #45 #48)
+#50 := [rewrite]: #49
+#46 := (iff #13 #45)
+#43 := (iff #10 #42)
+#44 := [rewrite]: #43
+#47 := [monotonicity #44]: #46
+#52 := [trans #47 #50]: #51
+#55 := [monotonicity #52]: #54
+#58 := [monotonicity #55]: #57
+#63 := [trans #58 #61]: #62
+#66 := [monotonicity #63]: #65
+#39 := (iff #16 #38)
+#36 := (iff #15 #35)
+#37 := [rewrite]: #36
+#40 := [monotonicity #37]: #39
+#68 := [trans #40 #66]: #67
+#33 := [asserted]: #16
+#69 := [mp #33 #68]: #64
+#72 := [not-or-elim #69]: #48
+#73 := [and-elim #72]: #12
+#74 := [and-elim #72]: #42
+#85 := [th-lemma #74 #73]: #14
+#70 := (not #14)
+#71 := [not-or-elim #69]: #70
+[unit-resolution #71 #85]: false
+unsat
+62b700db02f2de2fa17813b51c0e2aba7a4c9eab 18 0
+#2 := false
+decl f3 :: int
+#8 := f3
+#9 := (<= f3 f3)
+#10 := (not #9)
+#37 := (iff #10 false)
+#1 := true
+#32 := (not true)
+#35 := (iff #32 false)
+#36 := [rewrite]: #35
+#33 := (iff #10 #32)
+#30 := (iff #9 true)
+#31 := [rewrite]: #30
+#34 := [monotonicity #31]: #33
+#38 := [trans #34 #36]: #37
+#27 := [asserted]: #10
+[mp #27 #38]: false
+unsat
+096109feda0c7355b238e40d53b92530b4dac963 51 0
 #2 := false
 decl f4 :: int
 #9 := f4
@@ -45427,7 +45427,7 @@
 #33 := [asserted]: #16
 [mp #33 #68]: false
 unsat
-5551b99ea77d386f007b1b1979a0b6b379c3a347 56 0
+b5e5bf38e2f1c07ae123d010d3ca139589460e87 56 0
 #2 := false
 decl f4 :: int
 #9 := f4
@@ -45484,7 +45484,7 @@
 #33 := [asserted]: #16
 [mp #33 #73]: false
 unsat
-76fdd03dce324fb45070b1e1983f0a282cda6fa6 52 0
+fed98b15794bca1381978ee51c537989f6976c21 52 0
 #2 := false
 #40 := 0::int
 decl f4 :: int
@@ -45537,7 +45537,7 @@
 #77 := [unit-resolution #76 #65]: #53
 [unit-resolution #77 #67]: false
 unsat
-550f7d68b0836924510ab12e5b3c4ed9f6c794bb 73 0
+87f174d87c949beb4788f98812dca55337bf0039 73 0
 #2 := false
 #58 := 0::int
 decl f4 :: int
@@ -45611,25 +45611,7 @@
 #78 := [unit-resolution #82 #74]: #83
 [unit-resolution #78 #92 #89]: false
 unsat
-0eeabd2aea1625cea2b9a9ade1eee621e6dfb534 17 0
-#2 := false
-#8 := 0::real
-#9 := (= 0::real 0::real)
-#10 := (not #9)
-#35 := (iff #10 false)
-#1 := true
-#30 := (not true)
-#33 := (iff #30 false)
-#34 := [rewrite]: #33
-#31 := (iff #10 #30)
-#28 := (iff #9 true)
-#29 := [rewrite]: #28
-#32 := [monotonicity #29]: #31
-#36 := [trans #32 #34]: #35
-#27 := [asserted]: #10
-[mp #27 #36]: false
-unsat
-65c77124096528f9cb7c1cb6b89625b62f5eeb2a 15 0
+e9fb6be58fab173c96da99cb14354ad048f64a9a 15 0
 #2 := false
 decl f3 :: int
 #8 := f3
@@ -45645,33 +45627,7 @@
 #28 := [asserted]: #11
 [mp #28 #34]: false
 unsat
-582ef11d89a67dd029d6b29272ca6688d8312bd7 25 0
-#2 := false
-#8 := 0::real
-#9 := (- 0::real)
-#10 := (= 0::real #9)
-#11 := (not #10)
-#43 := (iff #11 false)
-#1 := true
-#38 := (not true)
-#41 := (iff #38 false)
-#42 := [rewrite]: #41
-#39 := (iff #11 #38)
-#36 := (iff #10 true)
-#31 := (= 0::real 0::real)
-#34 := (iff #31 true)
-#35 := [rewrite]: #34
-#32 := (iff #10 #31)
-#29 := (= #9 0::real)
-#30 := [rewrite]: #29
-#33 := [monotonicity #30]: #32
-#37 := [trans #33 #35]: #36
-#40 := [monotonicity #37]: #39
-#44 := [trans #40 #42]: #43
-#28 := [asserted]: #11
-[mp #28 #44]: false
-unsat
-8aa9d7db6e905a29f4a4232a6a82f51c63e2641b 75 0
+2e519318d3bea148863de330ab0d886976088a08 75 0
 #2 := false
 #53 := 0::int
 decl f4 :: int
@@ -45747,25 +45703,7 @@
 #89 := [not-or-elim #88]: #54
 [th-lemma #89 #91 #92]: false
 unsat
-4de73c1caf8d03027271f9dfec62b23debf65d9b 17 0
-#2 := false
-#8 := 1::real
-#9 := (= 1::real 1::real)
-#10 := (not #9)
-#35 := (iff #10 false)
-#1 := true
-#30 := (not true)
-#33 := (iff #30 false)
-#34 := [rewrite]: #33
-#31 := (iff #10 #30)
-#28 := (iff #9 true)
-#29 := [rewrite]: #28
-#32 := [monotonicity #29]: #31
-#36 := [trans #32 #34]: #35
-#27 := [asserted]: #10
-[mp #27 #36]: false
-unsat
-625ca444862ba21a1fa0a52470751952d4f5acee 80 0
+d957e317464f75f14f0257c9a9e3944a4c7e56fa 80 0
 #2 := false
 #53 := 0::int
 decl f4 :: int
@@ -45846,61 +45784,7 @@
 #94 := [not-or-elim #93]: #54
 [th-lemma #94 #96 #97]: false
 unsat
-793c5962cbb9973917b8d8c66a2d2a3d94594803 34 0
-#2 := false
-#8 := 1::real
-#9 := (- 1::real)
-#10 := (= #9 1::real)
-#11 := (not #10)
-#12 := (not #11)
-#52 := (iff #12 false)
-#1 := true
-#47 := (not true)
-#50 := (iff #47 false)
-#51 := [rewrite]: #50
-#48 := (iff #12 #47)
-#45 := (iff #11 true)
-#40 := (not false)
-#43 := (iff #40 true)
-#44 := [rewrite]: #43
-#41 := (iff #11 #40)
-#38 := (iff #10 false)
-#30 := -1::real
-#33 := (= -1::real 1::real)
-#36 := (iff #33 false)
-#37 := [rewrite]: #36
-#34 := (iff #10 #33)
-#31 := (= #9 -1::real)
-#32 := [rewrite]: #31
-#35 := [monotonicity #32]: #34
-#39 := [trans #35 #37]: #38
-#42 := [monotonicity #39]: #41
-#46 := [trans #42 #44]: #45
-#49 := [monotonicity #46]: #48
-#53 := [trans #49 #51]: #52
-#29 := [asserted]: #12
-[mp #29 #53]: false
-unsat
-8f6bb26e23c49df219a9fc6920a8bbad56872cba 18 0
-#2 := false
-#9 := 1::real
-#8 := 0::real
-#10 := (< 0::real 1::real)
-#11 := (not #10)
-#38 := (iff #11 false)
-#1 := true
-#33 := (not true)
-#36 := (iff #33 false)
-#37 := [rewrite]: #36
-#34 := (iff #11 #33)
-#31 := (iff #10 true)
-#32 := [rewrite]: #31
-#35 := [monotonicity #32]: #34
-#39 := [trans #35 #37]: #38
-#28 := [asserted]: #11
-[mp #28 #39]: false
-unsat
-59582f385e59c3a49a302bb1b9701c92bb368fac 80 0
+1e6359b823e59d7a3bc20a06b7948d9799fc1ea2 80 0
 #2 := false
 #52 := 0::int
 decl f4 :: int
@@ -45981,26 +45865,7 @@
 #96 := [not-or-elim #93]: #95
 [th-lemma #96 #94 #97]: false
 unsat
-6edbad6a7b2935c8d856f03c54b56bf43891a380 18 0
-#2 := false
-#9 := 1::real
-#8 := 0::real
-#10 := (<= 0::real 1::real)
-#11 := (not #10)
-#38 := (iff #11 false)
-#1 := true
-#33 := (not true)
-#36 := (iff #33 false)
-#37 := [rewrite]: #36
-#34 := (iff #11 #33)
-#31 := (iff #10 true)
-#32 := [rewrite]: #31
-#35 := [monotonicity #32]: #34
-#39 := [trans #35 #37]: #38
-#28 := [asserted]: #11
-[mp #28 #39]: false
-unsat
-6dfe89c45e68ba796109229b1c54d23603c64ded 85 0
+70f0bd2ca61ea7f7f79a865b60edecada1e579bc 85 0
 #2 := false
 #52 := 0::int
 decl f4 :: int
@@ -46086,48 +45951,7 @@
 #101 := [not-or-elim #99]: #66
 [th-lemma #101 #100 #102]: false
 unsat
-a64bea89744a3af0ed560a5c871536de3fcb2ecf 40 0
-#2 := false
-#12 := 567::real
-#10 := 345::real
-#8 := 123::real
-#9 := (- 123::real)
-#11 := (+ #9 345::real)
-#13 := (< #11 567::real)
-#14 := (not #13)
-#58 := (iff #14 false)
-#38 := 222::real
-#43 := (< 222::real 567::real)
-#46 := (not #43)
-#56 := (iff #46 false)
-#1 := true
-#51 := (not true)
-#54 := (iff #51 false)
-#55 := [rewrite]: #54
-#52 := (iff #46 #51)
-#49 := (iff #43 true)
-#50 := [rewrite]: #49
-#53 := [monotonicity #50]: #52
-#57 := [trans #53 #55]: #56
-#47 := (iff #14 #46)
-#44 := (iff #13 #43)
-#41 := (= #11 222::real)
-#32 := -123::real
-#35 := (+ -123::real 345::real)
-#39 := (= #35 222::real)
-#40 := [rewrite]: #39
-#36 := (= #11 #35)
-#33 := (= #9 -123::real)
-#34 := [rewrite]: #33
-#37 := [monotonicity #34]: #36
-#42 := [trans #37 #40]: #41
-#45 := [monotonicity #42]: #44
-#48 := [monotonicity #45]: #47
-#59 := [trans #48 #57]: #58
-#31 := [asserted]: #14
-[mp #31 #59]: false
-unsat
-650b9ceb8c2cf801e6ceee5375af886f013abe2c 69 0
+d4b9d7236f58deec9d8b880ed595e162ac78698f 69 0
 #2 := false
 #44 := 0::int
 decl f5 :: int
@@ -46197,7 +46021,237 @@
 #85 := [and-elim #83]: #53
 [th-lemma #85 #84 #86]: false
 unsat
-a79ee55daec933b360adb88ed0db37156e2f7821 18 0
+93f88e9d9942aeac0995634bc80288f6b3124d6e 17 0
+#2 := false
+#8 := 0::real
+#9 := (= 0::real 0::real)
+#10 := (not #9)
+#35 := (iff #10 false)
+#1 := true
+#30 := (not true)
+#33 := (iff #30 false)
+#34 := [rewrite]: #33
+#31 := (iff #10 #30)
+#28 := (iff #9 true)
+#29 := [rewrite]: #28
+#32 := [monotonicity #29]: #31
+#36 := [trans #32 #34]: #35
+#27 := [asserted]: #10
+[mp #27 #36]: false
+unsat
+c76a2eba918417f6f2e01b2b723c524c06e861cf 25 0
+#2 := false
+#8 := 0::real
+#9 := (- 0::real)
+#10 := (= 0::real #9)
+#11 := (not #10)
+#43 := (iff #11 false)
+#1 := true
+#38 := (not true)
+#41 := (iff #38 false)
+#42 := [rewrite]: #41
+#39 := (iff #11 #38)
+#36 := (iff #10 true)
+#31 := (= 0::real 0::real)
+#34 := (iff #31 true)
+#35 := [rewrite]: #34
+#32 := (iff #10 #31)
+#29 := (= #9 0::real)
+#30 := [rewrite]: #29
+#33 := [monotonicity #30]: #32
+#37 := [trans #33 #35]: #36
+#40 := [monotonicity #37]: #39
+#44 := [trans #40 #42]: #43
+#28 := [asserted]: #11
+[mp #28 #44]: false
+unsat
+124d21d085906b9b1a287c6fb023579c3d29d71e 17 0
+#2 := false
+#8 := 1::real
+#9 := (= 1::real 1::real)
+#10 := (not #9)
+#35 := (iff #10 false)
+#1 := true
+#30 := (not true)
+#33 := (iff #30 false)
+#34 := [rewrite]: #33
+#31 := (iff #10 #30)
+#28 := (iff #9 true)
+#29 := [rewrite]: #28
+#32 := [monotonicity #29]: #31
+#36 := [trans #32 #34]: #35
+#27 := [asserted]: #10
+[mp #27 #36]: false
+unsat
+5560886df3c18f9a0c150a7d43e759132adbc67a 34 0
+#2 := false
+#8 := 1::real
+#9 := (- 1::real)
+#10 := (= #9 1::real)
+#11 := (not #10)
+#12 := (not #11)
+#52 := (iff #12 false)
+#1 := true
+#47 := (not true)
+#50 := (iff #47 false)
+#51 := [rewrite]: #50
+#48 := (iff #12 #47)
+#45 := (iff #11 true)
+#40 := (not false)
+#43 := (iff #40 true)
+#44 := [rewrite]: #43
+#41 := (iff #11 #40)
+#38 := (iff #10 false)
+#30 := -1::real
+#33 := (= -1::real 1::real)
+#36 := (iff #33 false)
+#37 := [rewrite]: #36
+#34 := (iff #10 #33)
+#31 := (= #9 -1::real)
+#32 := [rewrite]: #31
+#35 := [monotonicity #32]: #34
+#39 := [trans #35 #37]: #38
+#42 := [monotonicity #39]: #41
+#46 := [trans #42 #44]: #45
+#49 := [monotonicity #46]: #48
+#53 := [trans #49 #51]: #52
+#29 := [asserted]: #12
+[mp #29 #53]: false
+unsat
+ea1032005c0c668000f0638ca6458e10715452d1 18 0
+#2 := false
+#9 := 1::real
+#8 := 0::real
+#10 := (< 0::real 1::real)
+#11 := (not #10)
+#38 := (iff #11 false)
+#1 := true
+#33 := (not true)
+#36 := (iff #33 false)
+#37 := [rewrite]: #36
+#34 := (iff #11 #33)
+#31 := (iff #10 true)
+#32 := [rewrite]: #31
+#35 := [monotonicity #32]: #34
+#39 := [trans #35 #37]: #38
+#28 := [asserted]: #11
+[mp #28 #39]: false
+unsat
+9bf86956cfc4183079f2d625e7fb67e79d8e3a6f 18 0
+#2 := false
+#9 := 1::real
+#8 := 0::real
+#10 := (<= 0::real 1::real)
+#11 := (not #10)
+#38 := (iff #11 false)
+#1 := true
+#33 := (not true)
+#36 := (iff #33 false)
+#37 := [rewrite]: #36
+#34 := (iff #11 #33)
+#31 := (iff #10 true)
+#32 := [rewrite]: #31
+#35 := [monotonicity #32]: #34
+#39 := [trans #35 #37]: #38
+#28 := [asserted]: #11
+[mp #28 #39]: false
+unsat
+462b078573a7260cabbe050e6e8a010e81307468 26 0
+#2 := false
+decl f3 :: real
+#8 := f3
+#9 := 0::real
+#10 := (+ f3 0::real)
+#11 := (= #10 f3)
+#12 := (not #11)
+#43 := (iff #12 false)
+#1 := true
+#38 := (not true)
+#41 := (iff #38 false)
+#42 := [rewrite]: #41
+#39 := (iff #12 #38)
+#36 := (iff #11 true)
+#31 := (= f3 f3)
+#34 := (iff #31 true)
+#35 := [rewrite]: #34
+#32 := (iff #11 #31)
+#30 := [rewrite]: #11
+#33 := [monotonicity #30]: #32
+#37 := [trans #33 #35]: #36
+#40 := [monotonicity #37]: #39
+#44 := [trans #40 #42]: #43
+#29 := [asserted]: #12
+[mp #29 #44]: false
+unsat
+fbe5b7285614f32e77c7dc8b02bdfaab1ce33767 40 0
+#2 := false
+#12 := 567::real
+#10 := 345::real
+#8 := 123::real
+#9 := (- 123::real)
+#11 := (+ #9 345::real)
+#13 := (< #11 567::real)
+#14 := (not #13)
+#58 := (iff #14 false)
+#38 := 222::real
+#43 := (< 222::real 567::real)
+#46 := (not #43)
+#56 := (iff #46 false)
+#1 := true
+#51 := (not true)
+#54 := (iff #51 false)
+#55 := [rewrite]: #54
+#52 := (iff #46 #51)
+#49 := (iff #43 true)
+#50 := [rewrite]: #49
+#53 := [monotonicity #50]: #52
+#57 := [trans #53 #55]: #56
+#47 := (iff #14 #46)
+#44 := (iff #13 #43)
+#41 := (= #11 222::real)
+#32 := -123::real
+#35 := (+ -123::real 345::real)
+#39 := (= #35 222::real)
+#40 := [rewrite]: #39
+#36 := (= #11 #35)
+#33 := (= #9 -123::real)
+#34 := [rewrite]: #33
+#37 := [monotonicity #34]: #36
+#42 := [trans #37 #40]: #41
+#45 := [monotonicity #42]: #44
+#48 := [monotonicity #45]: #47
+#59 := [trans #48 #57]: #58
+#31 := [asserted]: #14
+[mp #31 #59]: false
+unsat
+440f4e3d826b24104b71d716ed035b8fcf2e496d 26 0
+#2 := false
+decl f3 :: real
+#9 := f3
+#8 := 0::real
+#10 := (+ 0::real f3)
+#11 := (= #10 f3)
+#12 := (not #11)
+#43 := (iff #12 false)
+#1 := true
+#38 := (not true)
+#41 := (iff #38 false)
+#42 := [rewrite]: #41
+#39 := (iff #12 #38)
+#36 := (iff #11 true)
+#31 := (= f3 f3)
+#34 := (iff #31 true)
+#35 := [rewrite]: #34
+#32 := (iff #11 #31)
+#30 := [rewrite]: #11
+#33 := [monotonicity #30]: #32
+#37 := [trans #33 #35]: #36
+#40 := [monotonicity #37]: #39
+#44 := [trans #40 #42]: #43
+#29 := [asserted]: #12
+[mp #29 #44]: false
+unsat
+0f930aea7df79d93cedef0ce68be2ff1d1da57e3 18 0
 #2 := false
 #9 := 2345678901::real
 #8 := 123456789::real
@@ -46216,7 +46270,37 @@
 #28 := [asserted]: #11
 [mp #28 #39]: false
 unsat
-4b51b4eed1dc4e4e6099fbf906b70822230d5e3f 30 0
+20e0c3ffbf68f93c4311b4bf54c2ea3efe010e7a 29 0
+#2 := false
+decl f3 :: real
+#8 := f3
+decl f4 :: real
+#9 := f4
+#11 := (+ f4 f3)
+#10 := (+ f3 f4)
+#12 := (= #10 #11)
+#13 := (not #12)
+#45 := (iff #13 false)
+#1 := true
+#40 := (not true)
+#43 := (iff #40 false)
+#44 := [rewrite]: #43
+#41 := (iff #13 #40)
+#38 := (iff #12 true)
+#33 := (= #10 #10)
+#36 := (iff #33 true)
+#37 := [rewrite]: #36
+#34 := (iff #12 #33)
+#31 := (= #11 #10)
+#32 := [rewrite]: #31
+#35 := [monotonicity #32]: #34
+#39 := [trans #35 #37]: #38
+#42 := [monotonicity #39]: #41
+#46 := [trans #42 #44]: #45
+#30 := [asserted]: #13
+[mp #30 #46]: false
+unsat
+39b152c2721f346c536c8037f243dbf8a4709b1b 30 0
 #2 := false
 #10 := 2345678901::real
 #8 := 123456789::real
@@ -46247,12 +46331,92 @@
 #29 := [asserted]: #12
 [mp #29 #49]: false
 unsat
-209cf5d4457acae6abf17187fd6e89c259187362 26 0
+2fbcb3e0a00b30b4d1cfcecd9304791b2a48d7f4 33 0
+#2 := false
+decl f5 :: real
+#10 := f5
+decl f4 :: real
+#9 := f4
+decl f3 :: real
+#8 := f3
+#13 := (+ f3 f4)
+#14 := (+ #13 f5)
+#11 := (+ f4 f5)
+#12 := (+ f3 #11)
+#15 := (= #12 #14)
+#16 := (not #15)
+#48 := (iff #16 false)
+#1 := true
+#43 := (not true)
+#46 := (iff #43 false)
+#47 := [rewrite]: #46
+#44 := (iff #16 #43)
+#41 := (iff #15 true)
+#36 := (= #12 #12)
+#39 := (iff #36 true)
+#40 := [rewrite]: #39
+#37 := (iff #15 #36)
+#34 := (= #14 #12)
+#35 := [rewrite]: #34
+#38 := [monotonicity #35]: #37
+#42 := [trans #38 #40]: #41
+#45 := [monotonicity #42]: #44
+#49 := [trans #45 #47]: #48
+#33 := [asserted]: #16
+[mp #33 #49]: false
+unsat
+2ec6b499b5be496e928bd834c349a1c431eea001 45 0
+#2 := false
+decl f4 :: real
+#9 := f4
+#13 := (- f4)
+decl f3 :: real
+#8 := f3
+#14 := (= f3 #13)
+#11 := 0::real
+#10 := (+ f3 f4)
+#12 := (= #10 0::real)
+#15 := (iff #12 #14)
+#16 := (not #15)
+#62 := (iff #16 false)
+#47 := (not #12)
+#34 := -1::real
+#35 := (* -1::real f4)
+#38 := (= f3 #35)
+#48 := (iff #38 #47)
+#60 := (iff #48 false)
+#55 := (iff #12 #47)
+#58 := (iff #55 false)
+#59 := [rewrite]: #58
+#56 := (iff #48 #55)
+#53 := (iff #38 #12)
+#54 := [rewrite]: #53
+#57 := [monotonicity #54]: #56
+#61 := [trans #57 #59]: #60
+#51 := (iff #16 #48)
+#41 := (iff #12 #38)
+#44 := (not #41)
+#49 := (iff #44 #48)
+#50 := [rewrite]: #49
+#45 := (iff #16 #44)
+#42 := (iff #15 #41)
+#39 := (iff #14 #38)
+#36 := (= #13 #35)
+#37 := [rewrite]: #36
+#40 := [monotonicity #37]: #39
+#43 := [monotonicity #40]: #42
+#46 := [monotonicity #43]: #45
+#52 := [trans #46 #50]: #51
+#63 := [trans #52 #61]: #62
+#33 := [asserted]: #16
+[mp #33 #63]: false
+unsat
+fc436284003e8c697b8dbb37e8945314d2bc0428 26 0
 #2 := false
 decl f3 :: real
 #8 := f3
 #9 := 0::real
-#10 := (+ f3 0::real)
+#10 := (- f3 0::real)
 #11 := (= #10 f3)
 #12 := (not #11)
 #43 := (iff #12 false)
@@ -46274,34 +46438,7 @@
 #29 := [asserted]: #12
 [mp #29 #44]: false
 unsat
-97dafa0bba507529233c05cc33dd1519b4e28e4b 26 0
-#2 := false
-decl f3 :: real
-#9 := f3
-#8 := 0::real
-#10 := (+ 0::real f3)
-#11 := (= #10 f3)
-#12 := (not #11)
-#43 := (iff #12 false)
-#1 := true
-#38 := (not true)
-#41 := (iff #38 false)
-#42 := [rewrite]: #41
-#39 := (iff #12 #38)
-#36 := (iff #11 true)
-#31 := (= f3 f3)
-#34 := (iff #31 true)
-#35 := [rewrite]: #34
-#32 := (iff #11 #31)
-#30 := [rewrite]: #11
-#33 := [monotonicity #30]: #32
-#37 := [trans #33 #35]: #36
-#40 := [monotonicity #37]: #39
-#44 := [trans #40 #42]: #43
-#29 := [asserted]: #12
-[mp #29 #44]: false
-unsat
-4a497c9573e0d4cf02c29e65ea385ac694a5d2a9 58 0
+d3d5a890beab517bd089563bbca4f1f153a58428 58 0
 #2 := false
 decl f3 :: real
 #8 := f3
@@ -46360,37 +46497,40 @@
 #31 := [asserted]: #14
 [mp #31 #77]: false
 unsat
-393f5dbb0db04527f22218d40363df111099baf5 29 0
+e32be0c9d1b02319d3e7244ea2d0e549b6430915 32 0
 #2 := false
 decl f3 :: real
-#8 := f3
-decl f4 :: real
-#9 := f4
-#11 := (+ f4 f3)
-#10 := (+ f3 f4)
+#9 := f3
+#11 := (- f3)
+#8 := 0::real
+#10 := (- 0::real f3)
 #12 := (= #10 #11)
 #13 := (not #12)
-#45 := (iff #13 false)
-#1 := true
-#40 := (not true)
-#43 := (iff #40 false)
-#44 := [rewrite]: #43
-#41 := (iff #13 #40)
-#38 := (iff #12 true)
-#33 := (= #10 #10)
-#36 := (iff #33 true)
-#37 := [rewrite]: #36
-#34 := (iff #12 #33)
-#31 := (= #11 #10)
-#32 := [rewrite]: #31
-#35 := [monotonicity #32]: #34
-#39 := [trans #35 #37]: #38
-#42 := [monotonicity #39]: #41
-#46 := [trans #42 #44]: #45
+#49 := (iff #13 false)
+#1 := true
+#44 := (not true)
+#47 := (iff #44 false)
+#48 := [rewrite]: #47
+#45 := (iff #13 #44)
+#42 := (iff #12 true)
+#31 := -1::real
+#32 := (* -1::real f3)
+#37 := (= #32 #32)
+#40 := (iff #37 true)
+#41 := [rewrite]: #40
+#38 := (iff #12 #37)
+#35 := (= #11 #32)
+#36 := [rewrite]: #35
+#33 := (= #10 #32)
+#34 := [rewrite]: #33
+#39 := [monotonicity #34 #36]: #38
+#43 := [trans #39 #41]: #42
+#46 := [monotonicity #43]: #45
+#50 := [trans #46 #48]: #49
 #30 := [asserted]: #13
-[mp #30 #46]: false
-unsat
-5310d952762e8bd0d9db1c0127d9100532f42cf4 61 0
+[mp #30 #50]: false
+unsat
+eb2eb6c8c377b3314725038ad15c0d85d1554cd5 61 0
 #2 := false
 #8 := 0::real
 decl f3 :: real
@@ -46452,209 +46592,7 @@
 #31 := [asserted]: #14
 [mp #31 #79]: false
 unsat
-08018537eda07e4214b99470b7aa75706e7cd28c 33 0
-#2 := false
-decl f5 :: real
-#10 := f5
-decl f4 :: real
-#9 := f4
-decl f3 :: real
-#8 := f3
-#13 := (+ f3 f4)
-#14 := (+ #13 f5)
-#11 := (+ f4 f5)
-#12 := (+ f3 #11)
-#15 := (= #12 #14)
-#16 := (not #15)
-#48 := (iff #16 false)
-#1 := true
-#43 := (not true)
-#46 := (iff #43 false)
-#47 := [rewrite]: #46
-#44 := (iff #16 #43)
-#41 := (iff #15 true)
-#36 := (= #12 #12)
-#39 := (iff #36 true)
-#40 := [rewrite]: #39
-#37 := (iff #15 #36)
-#34 := (= #14 #12)
-#35 := [rewrite]: #34
-#38 := [monotonicity #35]: #37
-#42 := [trans #38 #40]: #41
-#45 := [monotonicity #42]: #44
-#49 := [trans #45 #47]: #48
-#33 := [asserted]: #16
-[mp #33 #49]: false
-unsat
-aed50da01a066fa4f6c8e7af4a461d101bc09de0 61 0
-#2 := false
-decl f3 :: real
-#8 := f3
-#11 := (- f3)
-#9 := 0::real
-#12 := (< 0::real #11)
-#10 := (< f3 0::real)
-#13 := (implies #10 #12)
-#14 := (not #13)
-#78 := (iff #14 false)
-#32 := -1::real
-#33 := (* -1::real f3)
-#36 := (< 0::real #33)
-#42 := (not #10)
-#43 := (or #42 #36)
-#48 := (not #43)
-#76 := (iff #48 false)
-#1 := true
-#71 := (not true)
-#74 := (iff #71 false)
-#75 := [rewrite]: #74
-#72 := (iff #48 #71)
-#69 := (iff #43 true)
-#51 := (>= f3 0::real)
-#52 := (not #51)
-#64 := (or #51 #52)
-#67 := (iff #64 true)
-#68 := [rewrite]: #67
-#65 := (iff #43 #64)
-#62 := (iff #36 #52)
-#63 := [rewrite]: #62
-#60 := (iff #42 #51)
-#55 := (not #52)
-#58 := (iff #55 #51)
-#59 := [rewrite]: #58
-#56 := (iff #42 #55)
-#53 := (iff #10 #52)
-#54 := [rewrite]: #53
-#57 := [monotonicity #54]: #56
-#61 := [trans #57 #59]: #60
-#66 := [monotonicity #61 #63]: #65
-#70 := [trans #66 #68]: #69
-#73 := [monotonicity #70]: #72
-#77 := [trans #73 #75]: #76
-#49 := (iff #14 #48)
-#46 := (iff #13 #43)
-#39 := (implies #10 #36)
-#44 := (iff #39 #43)
-#45 := [rewrite]: #44
-#40 := (iff #13 #39)
-#37 := (iff #12 #36)
-#34 := (= #11 #33)
-#35 := [rewrite]: #34
-#38 := [monotonicity #35]: #37
-#41 := [monotonicity #38]: #40
-#47 := [trans #41 #45]: #46
-#50 := [monotonicity #47]: #49
-#79 := [trans #50 #77]: #78
-#31 := [asserted]: #14
-[mp #31 #79]: false
-unsat
-afbfb539cd215cee99e6f9076de9621f41db722f 45 0
-#2 := false
-decl f4 :: real
-#9 := f4
-#13 := (- f4)
-decl f3 :: real
-#8 := f3
-#14 := (= f3 #13)
-#11 := 0::real
-#10 := (+ f3 f4)
-#12 := (= #10 0::real)
-#15 := (iff #12 #14)
-#16 := (not #15)
-#62 := (iff #16 false)
-#47 := (not #12)
-#34 := -1::real
-#35 := (* -1::real f4)
-#38 := (= f3 #35)
-#48 := (iff #38 #47)
-#60 := (iff #48 false)
-#55 := (iff #12 #47)
-#58 := (iff #55 false)
-#59 := [rewrite]: #58
-#56 := (iff #48 #55)
-#53 := (iff #38 #12)
-#54 := [rewrite]: #53
-#57 := [monotonicity #54]: #56
-#61 := [trans #57 #59]: #60
-#51 := (iff #16 #48)
-#41 := (iff #12 #38)
-#44 := (not #41)
-#49 := (iff #44 #48)
-#50 := [rewrite]: #49
-#45 := (iff #16 #44)
-#42 := (iff #15 #41)
-#39 := (iff #14 #38)
-#36 := (= #13 #35)
-#37 := [rewrite]: #36
-#40 := [monotonicity #37]: #39
-#43 := [monotonicity #40]: #42
-#46 := [monotonicity #43]: #45
-#52 := [trans #46 #50]: #51
-#63 := [trans #52 #61]: #62
-#33 := [asserted]: #16
-[mp #33 #63]: false
-unsat
-4c33a6158d9a09229cc4bfd8f383004f3cebc48a 26 0
-#2 := false
-decl f3 :: real
-#8 := f3
-#9 := 0::real
-#10 := (- f3 0::real)
-#11 := (= #10 f3)
-#12 := (not #11)
-#43 := (iff #12 false)
-#1 := true
-#38 := (not true)
-#41 := (iff #38 false)
-#42 := [rewrite]: #41
-#39 := (iff #12 #38)
-#36 := (iff #11 true)
-#31 := (= f3 f3)
-#34 := (iff #31 true)
-#35 := [rewrite]: #34
-#32 := (iff #11 #31)
-#30 := [rewrite]: #11
-#33 := [monotonicity #30]: #32
-#37 := [trans #33 #35]: #36
-#40 := [monotonicity #37]: #39
-#44 := [trans #40 #42]: #43
-#29 := [asserted]: #12
-[mp #29 #44]: false
-unsat
-5fa448e93a50f684d9003c71f7eb6c60b8908f77 32 0
-#2 := false
-decl f3 :: real
-#9 := f3
-#11 := (- f3)
-#8 := 0::real
-#10 := (- 0::real f3)
-#12 := (= #10 #11)
-#13 := (not #12)
-#49 := (iff #13 false)
-#1 := true
-#44 := (not true)
-#47 := (iff #44 false)
-#48 := [rewrite]: #47
-#45 := (iff #13 #44)
-#42 := (iff #12 true)
-#31 := -1::real
-#32 := (* -1::real f3)
-#37 := (= #32 #32)
-#40 := (iff #37 true)
-#41 := [rewrite]: #40
-#38 := (iff #12 #37)
-#35 := (= #11 #32)
-#36 := [rewrite]: #35
-#33 := (= #10 #32)
-#34 := [rewrite]: #33
-#39 := [monotonicity #34 #36]: #38
-#43 := [trans #39 #41]: #42
-#46 := [monotonicity #43]: #45
-#50 := [trans #46 #48]: #49
-#30 := [asserted]: #13
-[mp #30 #50]: false
-unsat
-abc85cf86b0b1c8a34cd74d5da49e570c77ddea0 64 0
+83589b9e6143db146b7355cf95d479fdd7008de6 64 0
 #2 := false
 #12 := 0::real
 decl f4 :: real
@@ -46719,7 +46657,69 @@
 #32 := [asserted]: #15
 [mp #32 #81]: false
 unsat
-8084abd03f885814b6c145eb3fdc41f5a2cc85f8 44 0
+20175dd1cbc4733e0e0a6808b337d3ef714bc8ea 61 0
+#2 := false
+decl f3 :: real
+#8 := f3
+#11 := (- f3)
+#9 := 0::real
+#12 := (< 0::real #11)
+#10 := (< f3 0::real)
+#13 := (implies #10 #12)
+#14 := (not #13)
+#78 := (iff #14 false)
+#32 := -1::real
+#33 := (* -1::real f3)
+#36 := (< 0::real #33)
+#42 := (not #10)
+#43 := (or #42 #36)
+#48 := (not #43)
+#76 := (iff #48 false)
+#1 := true
+#71 := (not true)
+#74 := (iff #71 false)
+#75 := [rewrite]: #74
+#72 := (iff #48 #71)
+#69 := (iff #43 true)
+#51 := (>= f3 0::real)
+#52 := (not #51)
+#64 := (or #51 #52)
+#67 := (iff #64 true)
+#68 := [rewrite]: #67
+#65 := (iff #43 #64)
+#62 := (iff #36 #52)
+#63 := [rewrite]: #62
+#60 := (iff #42 #51)
+#55 := (not #52)
+#58 := (iff #55 #51)
+#59 := [rewrite]: #58
+#56 := (iff #42 #55)
+#53 := (iff #10 #52)
+#54 := [rewrite]: #53
+#57 := [monotonicity #54]: #56
+#61 := [trans #57 #59]: #60
+#66 := [monotonicity #61 #63]: #65
+#70 := [trans #66 #68]: #69
+#73 := [monotonicity #70]: #72
+#77 := [trans #73 #75]: #76
+#49 := (iff #14 #48)
+#46 := (iff #13 #43)
+#39 := (implies #10 #36)
+#44 := (iff #39 #43)
+#45 := [rewrite]: #44
+#40 := (iff #13 #39)
+#37 := (iff #12 #36)
+#34 := (= #11 #33)
+#35 := [rewrite]: #34
+#38 := [monotonicity #35]: #37
+#41 := [monotonicity #38]: #40
+#47 := [trans #41 #45]: #46
+#50 := [monotonicity #47]: #49
+#79 := [trans #50 #77]: #78
+#31 := [asserted]: #14
+[mp #31 #79]: false
+unsat
+0edbb7a2c42cbb0fdbf200f800919445d8fe0fcd 44 0
 #2 := false
 decl f3 :: real
 #8 := f3
@@ -46764,7 +46764,7 @@
 #31 := [asserted]: #14
 [mp #31 #61]: false
 unsat
-9afe5717b3e2c9027579ba3e8d9d66db44c6cbda 42 0
+07f4f6c399af663ebc560d31da386f4b6f8eceaa 42 0
 #2 := false
 decl f3 :: real
 #8 := f3
@@ -46807,7 +46807,7 @@
 #31 := [asserted]: #14
 [mp #31 #59]: false
 unsat
-a1710b56b11072c592931adbf944a5bd3bc6efc2 48 0
+11d02f55135438b9126f773087ae5fbc1bfb4b1f 48 0
 #2 := false
 decl f5 :: real
 #11 := f5
@@ -46856,7 +46856,7 @@
 #33 := [asserted]: #16
 [mp #33 #64]: false
 unsat
-4611c2bccf9693379d8f36635022f4216eaaa919 30 0
+43b7b87cca59f261804e2de323813ff74305eab9 30 0
 #2 := false
 #8 := 1::real
 #9 := 2::real
@@ -46887,7 +46887,7 @@
 #29 := [asserted]: #12
 [mp #29 #49]: false
 unsat
-300cf7e266e08d39c05d69e60b19d0ac09a08a2e 27 0
+53cfe5e87c16fffbe2f16f255256cca3098e68ab 27 0
 #2 := false
 #9 := 3::real
 #8 := 1::real
@@ -46915,7 +46915,44 @@
 #29 := [asserted]: #12
 [mp #29 #46]: false
 unsat
-b59d35169428d1cd490a83e17435ecfc93225870 48 0
+a0dc8948916e6295727989d5921bca6fbb1b7702 36 0
+#2 := false
+decl f3 :: real
+#9 := f3
+#8 := 3::real
+#10 := (/ f3 3::real)
+#11 := (* 3::real #10)
+#12 := (= #11 f3)
+#13 := (not #12)
+#53 := (iff #13 false)
+#1 := true
+#48 := (not true)
+#51 := (iff #48 false)
+#52 := [rewrite]: #51
+#49 := (iff #13 #48)
+#46 := (iff #12 true)
+#41 := (= f3 f3)
+#44 := (iff #41 true)
+#45 := [rewrite]: #44
+#42 := (iff #12 #41)
+#31 := 1/3::real
+#32 := (* 1/3::real f3)
+#35 := (* 3::real #32)
+#38 := (= #35 f3)
+#39 := [rewrite]: #38
+#36 := (= #11 #35)
+#33 := (= #10 #32)
+#34 := [rewrite]: #33
+#37 := [monotonicity #34]: #36
+#40 := [trans #37 #39]: #12
+#43 := [monotonicity #40]: #42
+#47 := [trans #43 #45]: #46
+#50 := [monotonicity #47]: #49
+#54 := [trans #50 #52]: #53
+#30 := [asserted]: #13
+[mp #30 #54]: false
+unsat
+26808346607eaf4342e6db7ed90e590a0bd9c647 48 0
 #2 := false
 #9 := 3::real
 #8 := 1::real
@@ -46964,7 +47001,43 @@
 #32 := [asserted]: #15
 [mp #32 #67]: false
 unsat
-1c222157f628411945e7e47ef57130c5ba4ad155 36 0
+09202bff4da2c74e9a8dbe43ef21689e4bdfaae9 35 0
+#2 := false
+decl f3 :: real
+#8 := f3
+#9 := 3::real
+#10 := (* f3 3::real)
+#11 := (/ #10 3::real)
+#12 := (= #11 f3)
+#13 := (not #12)
+#52 := (iff #13 false)
+#1 := true
+#47 := (not true)
+#50 := (iff #47 false)
+#51 := [rewrite]: #50
+#48 := (iff #13 #47)
+#45 := (iff #12 true)
+#40 := (= f3 f3)
+#43 := (iff #40 true)
+#44 := [rewrite]: #43
+#41 := (iff #12 #40)
+#31 := (* 3::real f3)
+#34 := (/ #31 3::real)
+#37 := (= #34 f3)
+#38 := [rewrite]: #37
+#35 := (= #11 #34)
+#32 := (= #10 #31)
+#33 := [rewrite]: #32
+#36 := [monotonicity #33]: #35
+#39 := [trans #36 #38]: #12
+#42 := [monotonicity #39]: #41
+#46 := [trans #42 #44]: #45
+#49 := [monotonicity #46]: #48
+#53 := [trans #49 #51]: #52
+#30 := [asserted]: #13
+[mp #30 #53]: false
+unsat
+b76505782dfbae0f8341048039ea3f79ecdab350 36 0
 #2 := false
 #10 := 3::real
 #8 := 1::real
@@ -47001,7 +47074,70 @@
 #30 := [asserted]: #13
 [mp #30 #55]: false
 unsat
-e4a7188c884c4cc69972b6b4c9f7bcbb1cd3ef93 43 0
+0c13c4469b276c16009a975c07b71cc3daa7abc5 62 0
+#2 := false
+#8 := 0::real
+decl f3 :: real
+#9 := f3
+#67 := 1/3::real
+#68 := (* 1/3::real f3)
+#69 := (<= #68 0::real)
+#65 := (not #69)
+#54 := (<= f3 0::real)
+#71 := (or #54 #65)
+#74 := (not #71)
+#13 := 3::real
+#11 := 2::real
+#12 := (* 2::real f3)
+#14 := (/ #12 3::real)
+#15 := (< #14 f3)
+#10 := (< 0::real f3)
+#16 := (implies #10 #15)
+#17 := (not #16)
+#77 := (iff #17 #74)
+#36 := 2/3::real
+#37 := (* 2/3::real f3)
+#39 := (< #37 f3)
+#45 := (not #10)
+#46 := (or #45 #39)
+#51 := (not #46)
+#75 := (iff #51 #74)
+#72 := (iff #46 #71)
+#66 := (iff #39 #65)
+#70 := [rewrite]: #66
+#63 := (iff #45 #54)
+#55 := (not #54)
+#58 := (not #55)
+#61 := (iff #58 #54)
+#62 := [rewrite]: #61
+#59 := (iff #45 #58)
+#56 := (iff #10 #55)
+#57 := [rewrite]: #56
+#60 := [monotonicity #57]: #59
+#64 := [trans #60 #62]: #63
+#73 := [monotonicity #64 #70]: #72
+#76 := [monotonicity #73]: #75
+#52 := (iff #17 #51)
+#49 := (iff #16 #46)
+#42 := (implies #10 #39)
+#47 := (iff #42 #46)
+#48 := [rewrite]: #47
+#43 := (iff #16 #42)
+#40 := (iff #15 #39)
+#35 := (= #14 #37)
+#38 := [rewrite]: #35
+#41 := [monotonicity #38]: #40
+#44 := [monotonicity #41]: #43
+#50 := [trans #44 #48]: #49
+#53 := [monotonicity #50]: #52
+#78 := [trans #53 #76]: #77
+#34 := [asserted]: #17
+#79 := [mp #34 #78]: #74
+#81 := [not-or-elim #79]: #69
+#80 := [not-or-elim #79]: #55
+[th-lemma #80 #81]: false
+unsat
+bc88a01de6db0490fffd7e188b191be86acfd954 43 0
 #2 := false
 #10 := 3::real
 #8 := 1::real
@@ -47045,7 +47181,70 @@
 #32 := [asserted]: #15
 [mp #32 #62]: false
 unsat
-b7bd87b08d1cd38b7e0db00083a20eb0fa944982 26 0
+27ba361ee1bcc866b25f3de9b0470e4e247364ed 62 0
+#2 := false
+#9 := 0::real
+decl f3 :: real
+#8 := f3
+#69 := 1/3::real
+#70 := (* 1/3::real f3)
+#67 := (>= #70 0::real)
+#65 := (not #67)
+#56 := (>= f3 0::real)
+#71 := (or #56 #65)
+#74 := (not #71)
+#13 := 3::real
+#11 := 2::real
+#12 := (* 2::real f3)
+#14 := (/ #12 3::real)
+#15 := (< f3 #14)
+#10 := (< f3 0::real)
+#16 := (implies #10 #15)
+#17 := (not #16)
+#77 := (iff #17 #74)
+#36 := 2/3::real
+#37 := (* 2/3::real f3)
+#39 := (< f3 #37)
+#45 := (not #10)
+#46 := (or #45 #39)
+#51 := (not #46)
+#75 := (iff #51 #74)
+#72 := (iff #46 #71)
+#66 := (iff #39 #65)
+#68 := [rewrite]: #66
+#63 := (iff #45 #56)
+#54 := (not #56)
+#58 := (not #54)
+#61 := (iff #58 #56)
+#62 := [rewrite]: #61
+#59 := (iff #45 #58)
+#55 := (iff #10 #54)
+#57 := [rewrite]: #55
+#60 := [monotonicity #57]: #59
+#64 := [trans #60 #62]: #63
+#73 := [monotonicity #64 #68]: #72
+#76 := [monotonicity #73]: #75
+#52 := (iff #17 #51)
+#49 := (iff #16 #46)
+#42 := (implies #10 #39)
+#47 := (iff #42 #46)
+#48 := [rewrite]: #47
+#43 := (iff #16 #42)
+#40 := (iff #15 #39)
+#35 := (= #14 #37)
+#38 := [rewrite]: #35
+#41 := [monotonicity #38]: #40
+#44 := [monotonicity #41]: #43
+#50 := [trans #44 #48]: #49
+#53 := [monotonicity #50]: #52
+#78 := [trans #53 #76]: #77
+#34 := [asserted]: #17
+#79 := [mp #34 #78]: #74
+#81 := [not-or-elim #79]: #67
+#80 := [not-or-elim #79]: #54
+[th-lemma #80 #81]: false
+unsat
+e1161936dfae097cefecc5afb0c61d7cd7a9394d 26 0
 #2 := false
 decl f3 :: real
 #8 := f3
@@ -47072,7 +47271,7 @@
 #29 := [asserted]: #12
 [mp #29 #44]: false
 unsat
-c3e8ed15657d66fdc6a77370b7e3994d0741653a 60 0
+501254910821a4c83220ee640918ae11739106cb 60 0
 #2 := false
 #8 := 0::real
 decl f3 :: real
@@ -47133,141 +47332,7 @@
 #78 := [not-or-elim #77]: #53
 [th-lemma #78 #79]: false
 unsat
-05dd4ddb8672ca6d3f31acc3ffa7f7986078b232 60 0
-#2 := false
-#9 := 0::real
-decl f3 :: real
-#8 := f3
-#67 := 2/3::real
-#68 := (* 2/3::real f3)
-#65 := (>= #68 0::real)
-#63 := (not #65)
-#54 := (>= f3 0::real)
-#69 := (or #54 #63)
-#72 := (not #69)
-#11 := 3::real
-#12 := (/ f3 3::real)
-#13 := (< f3 #12)
-#10 := (< f3 0::real)
-#14 := (implies #10 #13)
-#15 := (not #14)
-#75 := (iff #15 #72)
-#33 := 1/3::real
-#34 := (* 1/3::real f3)
-#37 := (< f3 #34)
-#43 := (not #10)
-#44 := (or #43 #37)
-#49 := (not #44)
-#73 := (iff #49 #72)
-#70 := (iff #44 #69)
-#64 := (iff #37 #63)
-#66 := [rewrite]: #64
-#61 := (iff #43 #54)
-#52 := (not #54)
-#56 := (not #52)
-#59 := (iff #56 #54)
-#60 := [rewrite]: #59
-#57 := (iff #43 #56)
-#53 := (iff #10 #52)
-#55 := [rewrite]: #53
-#58 := [monotonicity #55]: #57
-#62 := [trans #58 #60]: #61
-#71 := [monotonicity #62 #66]: #70
-#74 := [monotonicity #71]: #73
-#50 := (iff #15 #49)
-#47 := (iff #14 #44)
-#40 := (implies #10 #37)
-#45 := (iff #40 #44)
-#46 := [rewrite]: #45
-#41 := (iff #14 #40)
-#38 := (iff #13 #37)
-#35 := (= #12 #34)
-#36 := [rewrite]: #35
-#39 := [monotonicity #36]: #38
-#42 := [monotonicity #39]: #41
-#48 := [trans #42 #46]: #47
-#51 := [monotonicity #48]: #50
-#76 := [trans #51 #74]: #75
-#32 := [asserted]: #15
-#77 := [mp #32 #76]: #72
-#79 := [not-or-elim #77]: #65
-#78 := [not-or-elim #77]: #52
-[th-lemma #78 #79]: false
-unsat
-b7a066feb9f43bcc3b0373cd9c9287361b54eff6 36 0
-#2 := false
-decl f3 :: real
-#9 := f3
-#8 := 3::real
-#10 := (/ f3 3::real)
-#11 := (* 3::real #10)
-#12 := (= #11 f3)
-#13 := (not #12)
-#53 := (iff #13 false)
-#1 := true
-#48 := (not true)
-#51 := (iff #48 false)
-#52 := [rewrite]: #51
-#49 := (iff #13 #48)
-#46 := (iff #12 true)
-#41 := (= f3 f3)
-#44 := (iff #41 true)
-#45 := [rewrite]: #44
-#42 := (iff #12 #41)
-#31 := 1/3::real
-#32 := (* 1/3::real f3)
-#35 := (* 3::real #32)
-#38 := (= #35 f3)
-#39 := [rewrite]: #38
-#36 := (= #11 #35)
-#33 := (= #10 #32)
-#34 := [rewrite]: #33
-#37 := [monotonicity #34]: #36
-#40 := [trans #37 #39]: #12
-#43 := [monotonicity #40]: #42
-#47 := [trans #43 #45]: #46
-#50 := [monotonicity #47]: #49
-#54 := [trans #50 #52]: #53
-#30 := [asserted]: #13
-[mp #30 #54]: false
-unsat
-60b8185463f5b2ce142483f90c095e9accf8989c 35 0
-#2 := false
-decl f3 :: real
-#8 := f3
-#9 := 3::real
-#10 := (* f3 3::real)
-#11 := (/ #10 3::real)
-#12 := (= #11 f3)
-#13 := (not #12)
-#52 := (iff #13 false)
-#1 := true
-#47 := (not true)
-#50 := (iff #47 false)
-#51 := [rewrite]: #50
-#48 := (iff #13 #47)
-#45 := (iff #12 true)
-#40 := (= f3 f3)
-#43 := (iff #40 true)
-#44 := [rewrite]: #43
-#41 := (iff #12 #40)
-#31 := (* 3::real f3)
-#34 := (/ #31 3::real)
-#37 := (= #34 f3)
-#38 := [rewrite]: #37
-#35 := (= #11 #34)
-#32 := (= #10 #31)
-#33 := [rewrite]: #32
-#36 := [monotonicity #33]: #35
-#39 := [trans #36 #38]: #12
-#42 := [monotonicity #39]: #41
-#46 := [trans #42 #44]: #45
-#49 := [monotonicity #46]: #48
-#53 := [trans #49 #51]: #52
-#30 := [asserted]: #13
-[mp #30 #53]: false
-unsat
-2f685a966903afb267e7499dd8ad6b2b43caca93 75 0
+86149959970b3ea28fbf17dcb380883b8a659842 75 0
 #2 := false
 #8 := 0::real
 decl f3 :: real
@@ -47343,70 +47408,68 @@
 #96 := [unit-resolution #95 #92]: #90
 [th-lemma #89 #70 #96]: false
 unsat
-8140105cc276b32acd77e4f2cd380fea1f24efd8 62 0
-#2 := false
-#8 := 0::real
+3adfdc99c7629ab533bda7bf39a3bd8e76e15d1b 60 0
+#2 := false
+#9 := 0::real
 decl f3 :: real
-#9 := f3
-#67 := 1/3::real
-#68 := (* 1/3::real f3)
-#69 := (<= #68 0::real)
-#65 := (not #69)
-#54 := (<= f3 0::real)
-#71 := (or #54 #65)
-#74 := (not #71)
-#13 := 3::real
-#11 := 2::real
-#12 := (* 2::real f3)
-#14 := (/ #12 3::real)
-#15 := (< #14 f3)
-#10 := (< 0::real f3)
-#16 := (implies #10 #15)
-#17 := (not #16)
-#77 := (iff #17 #74)
-#36 := 2/3::real
-#37 := (* 2/3::real f3)
-#39 := (< #37 f3)
-#45 := (not #10)
-#46 := (or #45 #39)
-#51 := (not #46)
-#75 := (iff #51 #74)
-#72 := (iff #46 #71)
-#66 := (iff #39 #65)
-#70 := [rewrite]: #66
-#63 := (iff #45 #54)
-#55 := (not #54)
-#58 := (not #55)
-#61 := (iff #58 #54)
-#62 := [rewrite]: #61
-#59 := (iff #45 #58)
-#56 := (iff #10 #55)
-#57 := [rewrite]: #56
-#60 := [monotonicity #57]: #59
-#64 := [trans #60 #62]: #63
-#73 := [monotonicity #64 #70]: #72
-#76 := [monotonicity #73]: #75
-#52 := (iff #17 #51)
-#49 := (iff #16 #46)
-#42 := (implies #10 #39)
-#47 := (iff #42 #46)
-#48 := [rewrite]: #47
-#43 := (iff #16 #42)
-#40 := (iff #15 #39)
-#35 := (= #14 #37)
-#38 := [rewrite]: #35
-#41 := [monotonicity #38]: #40
-#44 := [monotonicity #41]: #43
-#50 := [trans #44 #48]: #49
-#53 := [monotonicity #50]: #52
-#78 := [trans #53 #76]: #77
-#34 := [asserted]: #17
-#79 := [mp #34 #78]: #74
-#81 := [not-or-elim #79]: #69
-#80 := [not-or-elim #79]: #55
-[th-lemma #80 #81]: false
-unsat
-4a38ab99c62d0654d0c5bc149db3e769cf921224 132 0
+#8 := f3
+#67 := 2/3::real
+#68 := (* 2/3::real f3)
+#65 := (>= #68 0::real)
+#63 := (not #65)
+#54 := (>= f3 0::real)
+#69 := (or #54 #63)
+#72 := (not #69)
+#11 := 3::real
+#12 := (/ f3 3::real)
+#13 := (< f3 #12)
+#10 := (< f3 0::real)
+#14 := (implies #10 #13)
+#15 := (not #14)
+#75 := (iff #15 #72)
+#33 := 1/3::real
+#34 := (* 1/3::real f3)
+#37 := (< f3 #34)
+#43 := (not #10)
+#44 := (or #43 #37)
+#49 := (not #44)
+#73 := (iff #49 #72)
+#70 := (iff #44 #69)
+#64 := (iff #37 #63)
+#66 := [rewrite]: #64
+#61 := (iff #43 #54)
+#52 := (not #54)
+#56 := (not #52)
+#59 := (iff #56 #54)
+#60 := [rewrite]: #59
+#57 := (iff #43 #56)
+#53 := (iff #10 #52)
+#55 := [rewrite]: #53
+#58 := [monotonicity #55]: #57
+#62 := [trans #58 #60]: #61
+#71 := [monotonicity #62 #66]: #70
+#74 := [monotonicity #71]: #73
+#50 := (iff #15 #49)
+#47 := (iff #14 #44)
+#40 := (implies #10 #37)
+#45 := (iff #40 #44)
+#46 := [rewrite]: #45
+#41 := (iff #14 #40)
+#38 := (iff #13 #37)
+#35 := (= #12 #34)
+#36 := [rewrite]: #35
+#39 := [monotonicity #36]: #38
+#42 := [monotonicity #39]: #41
+#48 := [trans #42 #46]: #47
+#51 := [monotonicity #48]: #50
+#76 := [trans #51 #74]: #75
+#32 := [asserted]: #15
+#77 := [mp #32 #76]: #72
+#79 := [not-or-elim #77]: #65
+#78 := [not-or-elim #77]: #52
+[th-lemma #78 #79]: false
+unsat
+9239e81a3a819598711273c035c67b58cc850e19 132 0
 #2 := false
 #9 := 0::real
 decl f3 :: real
@@ -47539,70 +47602,7 @@
 #162 := [th-lemma]: #161
 [unit-resolution #162 #160 #143]: false
 unsat
-9a571f31a85693be816acc5c7b7aa7362cb820bb 62 0
-#2 := false
-#9 := 0::real
-decl f3 :: real
-#8 := f3
-#69 := 1/3::real
-#70 := (* 1/3::real f3)
-#67 := (>= #70 0::real)
-#65 := (not #67)
-#56 := (>= f3 0::real)
-#71 := (or #56 #65)
-#74 := (not #71)
-#13 := 3::real
-#11 := 2::real
-#12 := (* 2::real f3)
-#14 := (/ #12 3::real)
-#15 := (< f3 #14)
-#10 := (< f3 0::real)
-#16 := (implies #10 #15)
-#17 := (not #16)
-#77 := (iff #17 #74)
-#36 := 2/3::real
-#37 := (* 2/3::real f3)
-#39 := (< f3 #37)
-#45 := (not #10)
-#46 := (or #45 #39)
-#51 := (not #46)
-#75 := (iff #51 #74)
-#72 := (iff #46 #71)
-#66 := (iff #39 #65)
-#68 := [rewrite]: #66
-#63 := (iff #45 #56)
-#54 := (not #56)
-#58 := (not #54)
-#61 := (iff #58 #56)
-#62 := [rewrite]: #61
-#59 := (iff #45 #58)
-#55 := (iff #10 #54)
-#57 := [rewrite]: #55
-#60 := [monotonicity #57]: #59
-#64 := [trans #60 #62]: #63
-#73 := [monotonicity #64 #68]: #72
-#76 := [monotonicity #73]: #75
-#52 := (iff #17 #51)
-#49 := (iff #16 #46)
-#42 := (implies #10 #39)
-#47 := (iff #42 #46)
-#48 := [rewrite]: #47
-#43 := (iff #16 #42)
-#40 := (iff #15 #39)
-#35 := (= #14 #37)
-#38 := [rewrite]: #35
-#41 := [monotonicity #38]: #40
-#44 := [monotonicity #41]: #43
-#50 := [trans #44 #48]: #49
-#53 := [monotonicity #50]: #52
-#78 := [trans #53 #76]: #77
-#34 := [asserted]: #17
-#79 := [mp #34 #78]: #74
-#81 := [not-or-elim #79]: #67
-#80 := [not-or-elim #79]: #54
-[th-lemma #80 #81]: false
-unsat
-704113f68324742364e301291c46543b32d30adc 103 0
+e3b48db6caf5e610a2e9a0bcae40a85fdd5e39bf 103 0
 #2 := false
 #8 := 0::real
 decl f3 :: real
@@ -47706,7 +47706,7 @@
 #124 := [unit-resolution #123 #120]: #115
 [th-lemma #110 #124]: false
 unsat
-c7322eea663ce724ffdf3e5de8e20e490ab8caf6 57 0
+e9188136c9d6e220e6ee3a401a574bb3b56f838f 57 0
 #2 := false
 #36 := 0::real
 decl f4 :: real
@@ -47764,7 +47764,7 @@
 #77 := [th-lemma]: #76
 [unit-resolution #77 #74 #56]: false
 unsat
-099809f4b951e6c4b8dd87d068c12977d185ca9a 149 0
+00baaea05aa472fbe57df430837e148f4a44397f 149 0
 #2 := false
 #9 := 0::real
 decl f3 :: real
@@ -47914,7 +47914,7 @@
 #170 := [unit-resolution #169 #155]: #97
 [th-lemma #159 #170 #167]: false
 unsat
-f580fbf74c17d6b6fb5afde9912701d1c54bba4d 57 0
+6166959cee3110b0d0634dd50d7cb2cfabb9eb5a 57 0
 #2 := false
 #36 := 0::real
 decl f4 :: real
@@ -47972,7 +47972,111 @@
 #77 := [unit-resolution #76 #73]: #71
 [th-lemma #77 #56 #72]: false
 unsat
-29b8934bcf2c51c8a551e0b17bf814bf8deedd61 114 0
+92d942d88d8ad274a6c24a4a1642ec3e151829bd 103 0
+#2 := false
+#45 := 0::real
+decl f5 :: real
+#11 := f5
+decl f4 :: real
+#9 := f4
+#43 := -1::real
+#53 := (* -1::real f5)
+#63 := (+ f4 #53)
+#64 := (<= #63 0::real)
+#67 := (ite #64 f4 f5)
+#75 := (* -1::real #67)
+decl f3 :: real
+#8 := f3
+#76 := (+ f3 #75)
+#74 := (>= #76 0::real)
+#73 := (not #74)
+#54 := (+ f3 #53)
+#52 := (>= #54 0::real)
+#51 := (not #52)
+#47 := (* -1::real f4)
+#48 := (+ f3 #47)
+#46 := (>= #48 0::real)
+#44 := (not #46)
+#57 := (and #44 #51)
+#60 := (not #57)
+#81 := (or #60 #73)
+#84 := (not #81)
+#14 := (<= f4 f5)
+#15 := (ite #14 f4 f5)
+#16 := (< f3 #15)
+#12 := (< f3 f5)
+#10 := (< f3 f4)
+#13 := (and #10 #12)
+#17 := (implies #13 #16)
+#18 := (not #17)
+#87 := (iff #18 #84)
+#36 := (not #13)
+#37 := (or #36 #16)
+#40 := (not #37)
+#85 := (iff #40 #84)
+#82 := (iff #37 #81)
+#79 := (iff #16 #73)
+#70 := (< f3 #67)
+#77 := (iff #70 #73)
+#78 := [rewrite]: #77
+#71 := (iff #16 #70)
+#68 := (= #15 #67)
+#65 := (iff #14 #64)
+#66 := [rewrite]: #65
+#69 := [monotonicity #66]: #68
+#72 := [monotonicity #69]: #71
+#80 := [trans #72 #78]: #79
+#61 := (iff #36 #60)
+#58 := (iff #13 #57)
+#55 := (iff #12 #51)
+#56 := [rewrite]: #55
+#49 := (iff #10 #44)
+#50 := [rewrite]: #49
+#59 := [monotonicity #50 #56]: #58
+#62 := [monotonicity #59]: #61
+#83 := [monotonicity #62 #80]: #82
+#86 := [monotonicity #83]: #85
+#41 := (iff #18 #40)
+#38 := (iff #17 #37)
+#39 := [rewrite]: #38
+#42 := [monotonicity #39]: #41
+#88 := [trans #42 #86]: #87
+#35 := [asserted]: #18
+#89 := [mp #35 #88]: #84
+#93 := [not-or-elim #89]: #74
+#90 := [not-or-elim #89]: #57
+#92 := [and-elim #90]: #51
+#98 := (+ f5 #75)
+#115 := (<= #98 0::real)
+#104 := (= f5 #67)
+#105 := (not #64)
+#103 := (= f4 #67)
+#110 := (not #103)
+#100 := (+ f4 #75)
+#97 := (<= #100 0::real)
+#107 := (not #97)
+#91 := [and-elim #90]: #44
+#96 := [hypothesis]: #97
+#94 := [th-lemma #96 #91 #93]: false
+#108 := [lemma #94]: #107
+#109 := [hypothesis]: #103
+#111 := (or #110 #97)
+#112 := [th-lemma]: #111
+#113 := [unit-resolution #112 #109 #108]: false
+#114 := [lemma #113]: #110
+#106 := (or #105 #103)
+#101 := [def-axiom]: #106
+#117 := [unit-resolution #101 #114]: #105
+#102 := (or #64 #104)
+#99 := [def-axiom]: #102
+#118 := [unit-resolution #99 #117]: #104
+#119 := (not #104)
+#120 := (or #119 #115)
+#121 := [th-lemma]: #120
+#122 := [unit-resolution #121 #118]: #115
+[th-lemma #122 #92 #93]: false
+unsat
+ebd0660c7140785afcd9de0809a5083ea0dcee04 114 0
 #2 := false
 #9 := 0::real
 decl f3 :: real
@@ -48087,169 +48191,7 @@
 #143 := [unit-resolution #142 #139]: #137
 [th-lemma #136 #134 #143]: false
 unsat
-cc7a80da13c82cc207500cb8afbaae97318e63e2 103 0
-#2 := false
-#45 := 0::real
-decl f5 :: real
-#11 := f5
-decl f4 :: real
-#9 := f4
-#43 := -1::real
-#53 := (* -1::real f5)
-#63 := (+ f4 #53)
-#64 := (<= #63 0::real)
-#67 := (ite #64 f4 f5)
-#75 := (* -1::real #67)
-decl f3 :: real
-#8 := f3
-#76 := (+ f3 #75)
-#74 := (>= #76 0::real)
-#73 := (not #74)
-#54 := (+ f3 #53)
-#52 := (>= #54 0::real)
-#51 := (not #52)
-#47 := (* -1::real f4)
-#48 := (+ f3 #47)
-#46 := (>= #48 0::real)
-#44 := (not #46)
-#57 := (and #44 #51)
-#60 := (not #57)
-#81 := (or #60 #73)
-#84 := (not #81)
-#14 := (<= f4 f5)
-#15 := (ite #14 f4 f5)
-#16 := (< f3 #15)
-#12 := (< f3 f5)
-#10 := (< f3 f4)
-#13 := (and #10 #12)
-#17 := (implies #13 #16)
-#18 := (not #17)
-#87 := (iff #18 #84)
-#36 := (not #13)
-#37 := (or #36 #16)
-#40 := (not #37)
-#85 := (iff #40 #84)
-#82 := (iff #37 #81)
-#79 := (iff #16 #73)
-#70 := (< f3 #67)
-#77 := (iff #70 #73)
-#78 := [rewrite]: #77
-#71 := (iff #16 #70)
-#68 := (= #15 #67)
-#65 := (iff #14 #64)
-#66 := [rewrite]: #65
-#69 := [monotonicity #66]: #68
-#72 := [monotonicity #69]: #71
-#80 := [trans #72 #78]: #79
-#61 := (iff #36 #60)
-#58 := (iff #13 #57)
-#55 := (iff #12 #51)
-#56 := [rewrite]: #55
-#49 := (iff #10 #44)
-#50 := [rewrite]: #49
-#59 := [monotonicity #50 #56]: #58
-#62 := [monotonicity #59]: #61
-#83 := [monotonicity #62 #80]: #82
-#86 := [monotonicity #83]: #85
-#41 := (iff #18 #40)
-#38 := (iff #17 #37)
-#39 := [rewrite]: #38
-#42 := [monotonicity #39]: #41
-#88 := [trans #42 #86]: #87
-#35 := [asserted]: #18
-#89 := [mp #35 #88]: #84
-#93 := [not-or-elim #89]: #74
-#90 := [not-or-elim #89]: #57
-#92 := [and-elim #90]: #51
-#98 := (+ f5 #75)
-#115 := (<= #98 0::real)
-#104 := (= f5 #67)
-#105 := (not #64)
-#103 := (= f4 #67)
-#110 := (not #103)
-#100 := (+ f4 #75)
-#97 := (<= #100 0::real)
-#107 := (not #97)
-#91 := [and-elim #90]: #44
-#96 := [hypothesis]: #97
-#94 := [th-lemma #96 #91 #93]: false
-#108 := [lemma #94]: #107
-#109 := [hypothesis]: #103
-#111 := (or #110 #97)
-#112 := [th-lemma]: #111
-#113 := [unit-resolution #112 #109 #108]: false
-#114 := [lemma #113]: #110
-#106 := (or #105 #103)
-#101 := [def-axiom]: #106
-#117 := [unit-resolution #101 #114]: #105
-#102 := (or #64 #104)
-#99 := [def-axiom]: #102
-#118 := [unit-resolution #99 #117]: #104
-#119 := (not #104)
-#120 := (or #119 #115)
-#121 := [th-lemma]: #120
-#122 := [unit-resolution #121 #118]: #115
-[th-lemma #122 #92 #93]: false
-unsat
-dcaa54c51c4b138dac6c0178c67a0d52f05b3002 57 0
-#2 := false
-#36 := 0::real
-decl f4 :: real
-#9 := f4
-#33 := -1::real
-#34 := (* -1::real f4)
-decl f3 :: real
-#8 := f3
-#35 := (+ f3 #34)
-#37 := (<= #35 0::real)
-#40 := (ite #37 f4 f3)
-#61 := (= f3 #40)
-#65 := (not #61)
-#46 := (* -1::real #40)
-#47 := (+ f3 #46)
-#48 := (<= #47 0::real)
-#53 := (not #48)
-#10 := (<= f3 f4)
-#11 := (ite #10 f4 f3)
-#12 := (<= f3 #11)
-#13 := (not #12)
-#54 := (iff #13 #53)
-#51 := (iff #12 #48)
-#43 := (<= f3 #40)
-#49 := (iff #43 #48)
-#50 := [rewrite]: #49
-#44 := (iff #12 #43)
-#41 := (= #11 #40)
-#38 := (iff #10 #37)
-#39 := [rewrite]: #38
-#42 := [monotonicity #39]: #41
-#45 := [monotonicity #42]: #44
-#52 := [trans #45 #50]: #51
-#55 := [monotonicity #52]: #54
-#30 := [asserted]: #13
-#56 := [mp #30 #55]: #53
-#64 := [hypothesis]: #61
-#66 := (or #65 #48)
-#67 := [th-lemma]: #66
-#68 := [unit-resolution #67 #64 #56]: false
-#69 := [lemma #68]: #65
-#59 := (or #37 #61)
-#57 := [def-axiom]: #59
-#72 := [unit-resolution #57 #69]: #37
-#31 := (+ f4 #46)
-#70 := (<= #31 0::real)
-#60 := (= f4 #40)
-#62 := (not #37)
-#63 := (or #62 #60)
-#58 := [def-axiom]: #63
-#73 := [unit-resolution #58 #72]: #60
-#74 := (not #60)
-#75 := (or #74 #70)
-#76 := [th-lemma]: #75
-#77 := [unit-resolution #76 #73]: #70
-[th-lemma #77 #56 #72]: false
-unsat
-23d9458c2d94638d741588b7f5f53da3b743fc4b 86 0
+bc553cd04d1e096b5239cc4030cde6a6b1f35726 86 0
 #2 := false
 decl f3 :: real
 #8 := f3
@@ -48336,65 +48278,7 @@
 #105 := [trans #104 #83]: #51
 [unit-resolution #57 #105]: false
 unsat
-ef39e4f5f84c012d1a7afd1eb9ae7787355eb901 57 0
-#2 := false
-#35 := 0::real
-decl f4 :: real
-#9 := f4
-decl f3 :: real
-#8 := f3
-#33 := -1::real
-#37 := (* -1::real f4)
-#38 := (+ f3 #37)
-#36 := (>= #38 0::real)
-#40 := (ite #36 f3 f4)
-#46 := (* -1::real #40)
-#47 := (+ f3 #46)
-#48 := (<= #47 0::real)
-#53 := (not #48)
-#10 := (<= f4 f3)
-#11 := (ite #10 f3 f4)
-#12 := (<= f3 #11)
-#13 := (not #12)
-#54 := (iff #13 #53)
-#51 := (iff #12 #48)
-#43 := (<= f3 #40)
-#49 := (iff #43 #48)
-#50 := [rewrite]: #49
-#44 := (iff #12 #43)
-#41 := (= #11 #40)
-#34 := (iff #10 #36)
-#39 := [rewrite]: #34
-#42 := [monotonicity #39]: #41
-#45 := [monotonicity #42]: #44
-#52 := [trans #45 #50]: #51
-#55 := [monotonicity #52]: #54
-#30 := [asserted]: #13
-#56 := [mp #30 #55]: #53
-#60 := (= f3 #40)
-#31 := (+ f4 #46)
-#64 := (<= #31 0::real)
-#61 := (= f4 #40)
-#62 := (not #36)
-#66 := [hypothesis]: #62
-#59 := (or #36 #61)
-#57 := [def-axiom]: #59
-#67 := [unit-resolution #57 #66]: #61
-#68 := (not #61)
-#69 := (or #68 #64)
-#70 := [th-lemma]: #69
-#71 := [unit-resolution #70 #67]: #64
-#72 := [th-lemma #56 #66 #71]: false
-#73 := [lemma #72]: #36
-#63 := (or #62 #60)
-#58 := [def-axiom]: #63
-#74 := [unit-resolution #58 #73]: #60
-#75 := (not #60)
-#76 := (or #75 #48)
-#77 := [th-lemma]: #76
-[unit-resolution #77 #74 #56]: false
-unsat
-ca3670773dec1aa185941c6109c12ef74c091595 68 0
+ace00ee2ae241d978310b9741895c318a66ed629 68 0
 #2 := false
 #8 := 0::real
 decl f3 :: real
@@ -48463,111 +48347,65 @@
 #88 := [trans #87 #84]: #13
 [unit-resolution #71 #88]: false
 unsat
-7eae59ca8b45a027fbc591665e655f191dd6bbc4 103 0
-#2 := false
-#45 := 0::real
-decl f3 :: real
-#8 := f3
-decl f5 :: real
-#11 := f5
-#43 := -1::real
-#51 := (* -1::real f5)
-#63 := (+ f3 #51)
-#64 := (<= #63 0::real)
-#67 := (ite #64 f5 f3)
-#73 := (* -1::real #67)
+e81fb3c2654f8ea7635466cd1678fb1937f5d399 57 0
+#2 := false
+#36 := 0::real
 decl f4 :: real
 #9 := f4
-#74 := (+ f4 #73)
-#75 := (<= #74 0::real)
-#76 := (not #75)
-#52 := (+ f4 #51)
-#53 := (<= #52 0::real)
-#54 := (not #53)
-#47 := (* -1::real f4)
-#48 := (+ f3 #47)
-#46 := (>= #48 0::real)
-#44 := (not #46)
-#57 := (and #44 #54)
-#60 := (not #57)
-#81 := (or #60 #76)
-#84 := (not #81)
-#14 := (<= f3 f5)
-#15 := (ite #14 f5 f3)
-#16 := (< #15 f4)
-#12 := (< f5 f4)
-#10 := (< f3 f4)
-#13 := (and #10 #12)
-#17 := (implies #13 #16)
-#18 := (not #17)
-#87 := (iff #18 #84)
-#36 := (not #13)
-#37 := (or #36 #16)
-#40 := (not #37)
-#85 := (iff #40 #84)
-#82 := (iff #37 #81)
-#79 := (iff #16 #76)
-#70 := (< #67 f4)
-#77 := (iff #70 #76)
-#78 := [rewrite]: #77
-#71 := (iff #16 #70)
-#68 := (= #15 #67)
-#65 := (iff #14 #64)
-#66 := [rewrite]: #65
-#69 := [monotonicity #66]: #68
-#72 := [monotonicity #69]: #71
-#80 := [trans #72 #78]: #79
-#61 := (iff #36 #60)
-#58 := (iff #13 #57)
-#55 := (iff #12 #54)
-#56 := [rewrite]: #55
-#49 := (iff #10 #44)
+#33 := -1::real
+#34 := (* -1::real f4)
+decl f3 :: real
+#8 := f3
+#35 := (+ f3 #34)
+#37 := (<= #35 0::real)
+#40 := (ite #37 f4 f3)
+#61 := (= f3 #40)
+#65 := (not #61)
+#46 := (* -1::real #40)
+#47 := (+ f3 #46)
+#48 := (<= #47 0::real)
+#53 := (not #48)
+#10 := (<= f3 f4)
+#11 := (ite #10 f4 f3)
+#12 := (<= f3 #11)
+#13 := (not #12)
+#54 := (iff #13 #53)
+#51 := (iff #12 #48)
+#43 := (<= f3 #40)
+#49 := (iff #43 #48)
 #50 := [rewrite]: #49
-#59 := [monotonicity #50 #56]: #58
-#62 := [monotonicity #59]: #61
-#83 := [monotonicity #62 #80]: #82
-#86 := [monotonicity #83]: #85
-#41 := (iff #18 #40)
-#38 := (iff #17 #37)
+#44 := (iff #12 #43)
+#41 := (= #11 #40)
+#38 := (iff #10 #37)
 #39 := [rewrite]: #38
 #42 := [monotonicity #39]: #41
-#88 := [trans #42 #86]: #87
-#35 := [asserted]: #18
-#89 := [mp #35 #88]: #84
-#93 := [not-or-elim #89]: #75
-#90 := [not-or-elim #89]: #57
-#91 := [and-elim #90]: #44
-#97 := (+ f3 #73)
-#116 := (>= #97 0::real)
-#104 := (= f3 #67)
-#105 := (not #64)
-#103 := (= f5 #67)
-#110 := (not #103)
-#100 := (+ f5 #73)
-#98 := (>= #100 0::real)
-#107 := (not #98)
-#92 := [and-elim #90]: #54
-#96 := [hypothesis]: #98
-#94 := [th-lemma #96 #92 #93]: false
-#108 := [lemma #94]: #107
-#109 := [hypothesis]: #103
-#111 := (or #110 #98)
-#112 := [th-lemma]: #111
-#113 := [unit-resolution #112 #109 #108]: false
-#114 := [lemma #113]: #110
-#106 := (or #105 #103)
-#101 := [def-axiom]: #106
-#117 := [unit-resolution #101 #114]: #105
-#102 := (or #64 #104)
-#99 := [def-axiom]: #102
-#118 := [unit-resolution #99 #117]: #104
-#119 := (not #104)
-#120 := (or #119 #116)
-#121 := [th-lemma]: #120
-#122 := [unit-resolution #121 #118]: #116
-[th-lemma #122 #91 #93]: false
-unsat
-a5005d5e2177d7e219c0762e500aaee9c6b18ed1 124 0
+#45 := [monotonicity #42]: #44
+#52 := [trans #45 #50]: #51
+#55 := [monotonicity #52]: #54
+#30 := [asserted]: #13
+#56 := [mp #30 #55]: #53
+#64 := [hypothesis]: #61
+#66 := (or #65 #48)
+#67 := [th-lemma]: #66
+#68 := [unit-resolution #67 #64 #56]: false
+#69 := [lemma #68]: #65
+#59 := (or #37 #61)
+#57 := [def-axiom]: #59
+#72 := [unit-resolution #57 #69]: #37
+#31 := (+ f4 #46)
+#70 := (<= #31 0::real)
+#60 := (= f4 #40)
+#62 := (not #37)
+#63 := (or #62 #60)
+#58 := [def-axiom]: #63
+#73 := [unit-resolution #58 #72]: #60
+#74 := (not #60)
+#75 := (or #74 #70)
+#76 := [th-lemma]: #75
+#77 := [unit-resolution #76 #73]: #70
+[th-lemma #77 #56 #72]: false
+unsat
+3664abc26f14854ad536c42c42a627c251d7213d 124 0
 #2 := false
 #13 := 0::real
 decl f4 :: real
@@ -48692,7 +48530,169 @@
 #145 := [unit-resolution #117 #144]: #106
 [th-lemma #131 #143 #141 #85 #145]: false
 unsat
-f8a9afea5f80c13265f7efc519efee9034d86aaa 88 0
+927cad57bf38ad7e837486701c357c7d04ee43f1 57 0
+#2 := false
+#35 := 0::real
+decl f4 :: real
+#9 := f4
+decl f3 :: real
+#8 := f3
+#33 := -1::real
+#37 := (* -1::real f4)
+#38 := (+ f3 #37)
+#36 := (>= #38 0::real)
+#40 := (ite #36 f3 f4)
+#46 := (* -1::real #40)
+#47 := (+ f3 #46)
+#48 := (<= #47 0::real)
+#53 := (not #48)
+#10 := (<= f4 f3)
+#11 := (ite #10 f3 f4)
+#12 := (<= f3 #11)
+#13 := (not #12)
+#54 := (iff #13 #53)
+#51 := (iff #12 #48)
+#43 := (<= f3 #40)
+#49 := (iff #43 #48)
+#50 := [rewrite]: #49
+#44 := (iff #12 #43)
+#41 := (= #11 #40)
+#34 := (iff #10 #36)
+#39 := [rewrite]: #34
+#42 := [monotonicity #39]: #41
+#45 := [monotonicity #42]: #44
+#52 := [trans #45 #50]: #51
+#55 := [monotonicity #52]: #54
+#30 := [asserted]: #13
+#56 := [mp #30 #55]: #53
+#60 := (= f3 #40)
+#31 := (+ f4 #46)
+#64 := (<= #31 0::real)
+#61 := (= f4 #40)
+#62 := (not #36)
+#66 := [hypothesis]: #62
+#59 := (or #36 #61)
+#57 := [def-axiom]: #59
+#67 := [unit-resolution #57 #66]: #61
+#68 := (not #61)
+#69 := (or #68 #64)
+#70 := [th-lemma]: #69
+#71 := [unit-resolution #70 #67]: #64
+#72 := [th-lemma #56 #66 #71]: false
+#73 := [lemma #72]: #36
+#63 := (or #62 #60)
+#58 := [def-axiom]: #63
+#74 := [unit-resolution #58 #73]: #60
+#75 := (not #60)
+#76 := (or #75 #48)
+#77 := [th-lemma]: #76
+[unit-resolution #77 #74 #56]: false
+unsat
+d6fff20b692527fbc5f2c570f30f65c6b5299749 103 0
+#2 := false
+#45 := 0::real
+decl f3 :: real
+#8 := f3
+decl f5 :: real
+#11 := f5
+#43 := -1::real
+#51 := (* -1::real f5)
+#63 := (+ f3 #51)
+#64 := (<= #63 0::real)
+#67 := (ite #64 f5 f3)
+#73 := (* -1::real #67)
+decl f4 :: real
+#9 := f4
+#74 := (+ f4 #73)
+#75 := (<= #74 0::real)
+#76 := (not #75)
+#52 := (+ f4 #51)
+#53 := (<= #52 0::real)
+#54 := (not #53)
+#47 := (* -1::real f4)
+#48 := (+ f3 #47)
+#46 := (>= #48 0::real)
+#44 := (not #46)
+#57 := (and #44 #54)
+#60 := (not #57)
+#81 := (or #60 #76)
+#84 := (not #81)
+#14 := (<= f3 f5)
+#15 := (ite #14 f5 f3)
+#16 := (< #15 f4)
+#12 := (< f5 f4)
+#10 := (< f3 f4)
+#13 := (and #10 #12)
+#17 := (implies #13 #16)
+#18 := (not #17)
+#87 := (iff #18 #84)
+#36 := (not #13)
+#37 := (or #36 #16)
+#40 := (not #37)
+#85 := (iff #40 #84)
+#82 := (iff #37 #81)
+#79 := (iff #16 #76)
+#70 := (< #67 f4)
+#77 := (iff #70 #76)
+#78 := [rewrite]: #77
+#71 := (iff #16 #70)
+#68 := (= #15 #67)
+#65 := (iff #14 #64)
+#66 := [rewrite]: #65
+#69 := [monotonicity #66]: #68
+#72 := [monotonicity #69]: #71
+#80 := [trans #72 #78]: #79
+#61 := (iff #36 #60)
+#58 := (iff #13 #57)
+#55 := (iff #12 #54)
+#56 := [rewrite]: #55
+#49 := (iff #10 #44)
+#50 := [rewrite]: #49
+#59 := [monotonicity #50 #56]: #58
+#62 := [monotonicity #59]: #61
+#83 := [monotonicity #62 #80]: #82
+#86 := [monotonicity #83]: #85
+#41 := (iff #18 #40)
+#38 := (iff #17 #37)
+#39 := [rewrite]: #38
+#42 := [monotonicity #39]: #41
+#88 := [trans #42 #86]: #87
+#35 := [asserted]: #18
+#89 := [mp #35 #88]: #84
+#93 := [not-or-elim #89]: #75
+#90 := [not-or-elim #89]: #57
+#91 := [and-elim #90]: #44
+#97 := (+ f3 #73)
+#116 := (>= #97 0::real)
+#104 := (= f3 #67)
+#105 := (not #64)
+#103 := (= f5 #67)
+#110 := (not #103)
+#100 := (+ f5 #73)
+#98 := (>= #100 0::real)
+#107 := (not #98)
+#92 := [and-elim #90]: #54
+#96 := [hypothesis]: #98
+#94 := [th-lemma #96 #92 #93]: false
+#108 := [lemma #94]: #107
+#109 := [hypothesis]: #103
+#111 := (or #110 #98)
+#112 := [th-lemma]: #111
+#113 := [unit-resolution #112 #109 #108]: false
+#114 := [lemma #113]: #110
+#106 := (or #105 #103)
+#101 := [def-axiom]: #106
+#117 := [unit-resolution #101 #114]: #105
+#102 := (or #64 #104)
+#99 := [def-axiom]: #102
+#118 := [unit-resolution #99 #117]: #104
+#119 := (not #104)
+#120 := (or #119 #116)
+#121 := [th-lemma]: #120
+#122 := [unit-resolution #121 #118]: #116
+[th-lemma #122 #91 #93]: false
+unsat
+71c351bb1819ddd2772bbf0065af1d459d5e627d 88 0
 #2 := false
 decl f4 :: real
 #9 := f4
@@ -48781,7 +48781,7 @@
 #109 := [trans #108 #83]: #51
 [unit-resolution #57 #109]: false
 unsat
-c008fb0a346a13df61c397707ef86eadaaaaf028 66 0
+0871a2d7a1a8feb4c622a99d4a7c9677b08adbc1 66 0
 #2 := false
 decl f3 :: real
 #9 := f3
@@ -48848,26 +48848,7 @@
 #86 := [trans #83 #85]: #33
 [unit-resolution #69 #86]: false
 unsat
-6fa8c48985ebc99327aefe25360343fbef04699f 18 0
-#2 := false
-decl f3 :: real
-#8 := f3
-#9 := (<= f3 f3)
-#10 := (not #9)
-#37 := (iff #10 false)
-#1 := true
-#32 := (not true)
-#35 := (iff #32 false)
-#36 := [rewrite]: #35
-#33 := (iff #10 #32)
-#30 := (iff #9 true)
-#31 := [rewrite]: #30
-#34 := [monotonicity #31]: #33
-#38 := [trans #34 #36]: #37
-#27 := [asserted]: #10
-[mp #27 #38]: false
-unsat
-3ea0cce22deeb1cf0a91c70b01f38d938cbfca2b 228 0
+f25887cff9f186252a40569f295759f63c1a99d5 228 0
 #2 := false
 #9 := 0::real
 decl f4 :: real
@@ -49096,7 +49077,26 @@
 #250 := [unit-resolution #196 #249]: #190
 [th-lemma #236 #250 #131 #234 #248 #238]: false
 unsat
-6246909589ff44c53af5060ab09e0fb241168550 50 0
+dec7d4cc8bde2cdb0d27eb6949a1b3c0be77f81d 18 0
+#2 := false
+decl f3 :: real
+#8 := f3
+#9 := (<= f3 f3)
+#10 := (not #9)
+#37 := (iff #10 false)
+#1 := true
+#32 := (not true)
+#35 := (iff #32 false)
+#36 := [rewrite]: #35
+#33 := (iff #10 #32)
+#30 := (iff #9 true)
+#31 := [rewrite]: #30
+#34 := [monotonicity #31]: #33
+#38 := [trans #34 #36]: #37
+#27 := [asserted]: #10
+[mp #27 #38]: false
+unsat
+a4cd1ac41bf4526fafd89a49dac8eaa0aa8148d4 50 0
 #2 := false
 #44 := 0::real
 decl f4 :: real
@@ -49147,7 +49147,7 @@
 #68 := [not-or-elim #65]: #67
 [th-lemma #68 #66]: false
 unsat
-9a368b708e53fe0140c26e7ca790639aa465ac37 55 0
+f04ec87433f814fae44c74b8e4463331c99ee4d7 55 0
 #2 := false
 #43 := 0::real
 decl f4 :: real
@@ -49203,7 +49203,7 @@
 #72 := [not-or-elim #71]: #42
 [th-lemma #72 #73]: false
 unsat
-9d1b38a4c0ecf43766b852c7e4d288a3e46da901 52 0
+306ff8b8fc070291a5ab7a64ab57d274b4990969 52 0
 #2 := false
 #40 := 0::real
 decl f4 :: real
@@ -49256,51 +49256,7 @@
 #77 := [unit-resolution #76 #65]: #53
 [unit-resolution #77 #67]: false
 unsat
-7db3ee0924a4cb1b14a4cebbf1c598c0b8dbec57 43 0
-#2 := false
-decl f5 :: (-> S2 S2 S3)
-#15 := (:var 0 S2)
-#14 := (:var 1 S2)
-#16 := (f5 #14 #15)
-#561 := (pattern #16)
-decl f4 :: (-> S3 S2)
-#17 := (f4 #16)
-#47 := (= #14 #17)
-#562 := (forall (vars (?v0 S2) (?v1 S2)) (:pat #561) #47)
-#50 := (forall (vars (?v0 S2) (?v1 S2)) #47)
-#565 := (iff #50 #562)
-#563 := (iff #47 #47)
-#564 := [refl]: #563
-#566 := [quant-intro #564]: #565
-#83 := (~ #50 #50)
-#81 := (~ #47 #47)
-#82 := [refl]: #81
-#84 := [nnf-pos #82]: #83
-#18 := (= #17 #14)
-#19 := (forall (vars (?v0 S2) (?v1 S2)) #18)
-#51 := (iff #19 #50)
-#48 := (iff #18 #47)
-#49 := [rewrite]: #48
-#52 := [quant-intro #49]: #51
-#46 := [asserted]: #19
-#55 := [mp #46 #52]: #50
-#73 := [mp~ #55 #84]: #50
-#567 := [mp #73 #566]: #562
-decl f6 :: S2
-#9 := f6
-decl f3 :: S2
-#8 := f3
-#10 := (f5 f3 f6)
-#11 := (f4 #10)
-#12 := (= f3 #11)
-#13 := (not #12)
-#45 := [asserted]: #13
-#144 := (not #562)
-#231 := (or #144 #12)
-#145 := [quant-inst]: #231
-[unit-resolution #145 #45 #567]: false
-unsat
-5631a67f2c650efd9761a68c96a2b28d9ed4cdd0 15 0
+3e97f3eb9f24bfae7990e01bc01c5a21dda19218 15 0
 #2 := false
 decl f3 :: real
 #8 := f3
@@ -49316,51 +49272,7 @@
 #28 := [asserted]: #11
 [mp #28 #34]: false
 unsat
-8502f9cde674da83d9cbc8a977644ab6e85265ed 43 0
-#2 := false
-decl f5 :: (-> S2 S2 S3)
-#15 := (:var 0 S2)
-#14 := (:var 1 S2)
-#16 := (f5 #14 #15)
-#561 := (pattern #16)
-decl f4 :: (-> S3 S2)
-#20 := (f4 #16)
-#54 := (= #15 #20)
-#568 := (forall (vars (?v0 S2) (?v1 S2)) (:pat #561) #54)
-#58 := (forall (vars (?v0 S2) (?v1 S2)) #54)
-#571 := (iff #58 #568)
-#569 := (iff #54 #54)
-#570 := [refl]: #569
-#572 := [quant-intro #570]: #571
-#75 := (~ #58 #58)
-#74 := (~ #54 #54)
-#72 := [refl]: #74
-#76 := [nnf-pos #72]: #75
-#21 := (= #20 #15)
-#22 := (forall (vars (?v0 S2) (?v1 S2)) #21)
-#59 := (iff #22 #58)
-#56 := (iff #21 #54)
-#57 := [rewrite]: #56
-#60 := [quant-intro #57]: #59
-#53 := [asserted]: #22
-#63 := [mp #53 #60]: #58
-#69 := [mp~ #63 #76]: #58
-#573 := [mp #69 #572]: #568
-decl f3 :: S2
-#8 := f3
-decl f6 :: S2
-#9 := f6
-#10 := (f5 f6 f3)
-#11 := (f4 #10)
-#12 := (= f3 #11)
-#13 := (not #12)
-#45 := [asserted]: #13
-#234 := (not #568)
-#235 := (or #234 #12)
-#163 := [quant-inst]: #235
-[unit-resolution #163 #45 #573]: false
-unsat
-c41bf12f912d9026a2697f2c615b98bf21c74fe7 75 0
+21d10b6d12abf591475883c4d7507c1168d34b59 75 0
 #2 := false
 #53 := 0::real
 decl f4 :: real
@@ -49436,7 +49348,413 @@
 #89 := [not-or-elim #88]: #54
 [th-lemma #89 #91 #92]: false
 unsat
-7028fd42bf273f5da876a633b9b2fac12fd44679 85 0
+a2e7adbf25ec843eff2ffcb678b0be5736d7d96c 80 0
+#2 := false
+#53 := 0::real
+decl f4 :: real
+#9 := f4
+#50 := -1::real
+#66 := (* -1::real f4)
+decl f3 :: real
+#8 := f3
+#67 := (+ f3 #66)
+#65 := (>= #67 0::real)
+#64 := (not #65)
+decl f5 :: real
+#11 := f5
+#51 := (* -1::real f5)
+#60 := (+ f3 #51)
+#61 := (<= #60 0::real)
+#52 := (+ f4 #51)
+#54 := (<= #52 0::real)
+#57 := (not #54)
+#83 := (or #57 #61 #65)
+#88 := (not #83)
+#13 := (<= f3 f5)
+#12 := (<= f4 f5)
+#14 := (implies #12 #13)
+#10 := (< f3 f4)
+#15 := (implies #10 #14)
+#16 := (not #15)
+#91 := (iff #16 #88)
+#34 := (not #12)
+#35 := (or #34 #13)
+#41 := (not #10)
+#42 := (or #41 #35)
+#47 := (not #42)
+#89 := (iff #47 #88)
+#86 := (iff #42 #83)
+#77 := (or #57 #61)
+#80 := (or #65 #77)
+#84 := (iff #80 #83)
+#85 := [rewrite]: #84
+#81 := (iff #42 #80)
+#78 := (iff #35 #77)
+#62 := (iff #13 #61)
+#63 := [rewrite]: #62
+#58 := (iff #34 #57)
+#55 := (iff #12 #54)
+#56 := [rewrite]: #55
+#59 := [monotonicity #56]: #58
+#79 := [monotonicity #59 #63]: #78
+#75 := (iff #41 #65)
+#70 := (not #64)
+#73 := (iff #70 #65)
+#74 := [rewrite]: #73
+#71 := (iff #41 #70)
+#68 := (iff #10 #64)
+#69 := [rewrite]: #68
+#72 := [monotonicity #69]: #71
+#76 := [trans #72 #74]: #75
+#82 := [monotonicity #76 #79]: #81
+#87 := [trans #82 #85]: #86
+#90 := [monotonicity #87]: #89
+#48 := (iff #16 #47)
+#45 := (iff #15 #42)
+#38 := (implies #10 #35)
+#43 := (iff #38 #42)
+#44 := [rewrite]: #43
+#39 := (iff #15 #38)
+#36 := (iff #14 #35)
+#37 := [rewrite]: #36
+#40 := [monotonicity #37]: #39
+#46 := [trans #40 #44]: #45
+#49 := [monotonicity #46]: #48
+#92 := [trans #49 #90]: #91
+#33 := [asserted]: #16
+#93 := [mp #33 #92]: #88
+#97 := [not-or-elim #93]: #64
+#95 := (not #61)
+#96 := [not-or-elim #93]: #95
+#94 := [not-or-elim #93]: #54
+[th-lemma #94 #96 #97]: false
+unsat
+1a6c859282e9f174eccf2c9ae56d2a4283272a9d 80 0
+#2 := false
+#52 := 0::real
+decl f4 :: real
+#9 := f4
+#50 := -1::real
+#69 := (* -1::real f4)
+decl f3 :: real
+#8 := f3
+#70 := (+ f3 #69)
+#71 := (<= #70 0::real)
+#74 := (not #71)
+decl f5 :: real
+#11 := f5
+#54 := (* -1::real f5)
+#65 := (+ f3 #54)
+#66 := (<= #65 0::real)
+#55 := (+ f4 #54)
+#53 := (>= #55 0::real)
+#83 := (or #53 #66 #74)
+#88 := (not #83)
+#13 := (<= f3 f5)
+#12 := (< f4 f5)
+#14 := (implies #12 #13)
+#10 := (<= f3 f4)
+#15 := (implies #10 #14)
+#16 := (not #15)
+#91 := (iff #16 #88)
+#34 := (not #12)
+#35 := (or #34 #13)
+#41 := (not #10)
+#42 := (or #41 #35)
+#47 := (not #42)
+#89 := (iff #47 #88)
+#86 := (iff #42 #83)
+#77 := (or #53 #66)
+#80 := (or #74 #77)
+#84 := (iff #80 #83)
+#85 := [rewrite]: #84
+#81 := (iff #42 #80)
+#78 := (iff #35 #77)
+#67 := (iff #13 #66)
+#68 := [rewrite]: #67
+#63 := (iff #34 #53)
+#51 := (not #53)
+#58 := (not #51)
+#61 := (iff #58 #53)
+#62 := [rewrite]: #61
+#59 := (iff #34 #58)
+#56 := (iff #12 #51)
+#57 := [rewrite]: #56
+#60 := [monotonicity #57]: #59
+#64 := [trans #60 #62]: #63
+#79 := [monotonicity #64 #68]: #78
+#75 := (iff #41 #74)
+#72 := (iff #10 #71)
+#73 := [rewrite]: #72
+#76 := [monotonicity #73]: #75
+#82 := [monotonicity #76 #79]: #81
+#87 := [trans #82 #85]: #86
+#90 := [monotonicity #87]: #89
+#48 := (iff #16 #47)
+#45 := (iff #15 #42)
+#38 := (implies #10 #35)
+#43 := (iff #38 #42)
+#44 := [rewrite]: #43
+#39 := (iff #15 #38)
+#36 := (iff #14 #35)
+#37 := [rewrite]: #36
+#40 := [monotonicity #37]: #39
+#46 := [trans #40 #44]: #45
+#49 := [monotonicity #46]: #48
+#92 := [trans #49 #90]: #91
+#33 := [asserted]: #16
+#93 := [mp #33 #92]: #88
+#97 := [not-or-elim #93]: #71
+#94 := [not-or-elim #93]: #51
+#95 := (not #66)
+#96 := [not-or-elim #93]: #95
+[th-lemma #96 #94 #97]: false
+unsat
+a456c127f26b5322f4e875bd59145cba8570dfda 85 0
+#2 := false
+#52 := 0::real
+decl f4 :: real
+#9 := f4
+#50 := -1::real
+#72 := (* -1::real f4)
+decl f3 :: real
+#8 := f3
+#73 := (+ f3 #72)
+#71 := (>= #73 0::real)
+#70 := (not #71)
+decl f5 :: real
+#11 := f5
+#54 := (* -1::real f5)
+#67 := (+ f3 #54)
+#66 := (>= #67 0::real)
+#65 := (not #66)
+#55 := (+ f4 #54)
+#53 := (>= #55 0::real)
+#89 := (or #53 #65 #71)
+#94 := (not #89)
+#13 := (< f3 f5)
+#12 := (< f4 f5)
+#14 := (implies #12 #13)
+#10 := (< f3 f4)
+#15 := (implies #10 #14)
+#16 := (not #15)
+#97 := (iff #16 #94)
+#34 := (not #12)
+#35 := (or #34 #13)
+#41 := (not #10)
+#42 := (or #41 #35)
+#47 := (not #42)
+#95 := (iff #47 #94)
+#92 := (iff #42 #89)
+#83 := (or #53 #65)
+#86 := (or #71 #83)
+#90 := (iff #86 #89)
+#91 := [rewrite]: #90
+#87 := (iff #42 #86)
+#84 := (iff #35 #83)
+#68 := (iff #13 #65)
+#69 := [rewrite]: #68
+#63 := (iff #34 #53)
+#51 := (not #53)
+#58 := (not #51)
+#61 := (iff #58 #53)
+#62 := [rewrite]: #61
+#59 := (iff #34 #58)
+#56 := (iff #12 #51)
+#57 := [rewrite]: #56
+#60 := [monotonicity #57]: #59
+#64 := [trans #60 #62]: #63
+#85 := [monotonicity #64 #69]: #84
+#81 := (iff #41 #71)
+#76 := (not #70)
+#79 := (iff #76 #71)
+#80 := [rewrite]: #79
+#77 := (iff #41 #76)
+#74 := (iff #10 #70)
+#75 := [rewrite]: #74
+#78 := [monotonicity #75]: #77
+#82 := [trans #78 #80]: #81
+#88 := [monotonicity #82 #85]: #87
+#93 := [trans #88 #91]: #92
+#96 := [monotonicity #93]: #95
+#48 := (iff #16 #47)
+#45 := (iff #15 #42)
+#38 := (implies #10 #35)
+#43 := (iff #38 #42)
+#44 := [rewrite]: #43
+#39 := (iff #15 #38)
+#36 := (iff #14 #35)
+#37 := [rewrite]: #36
+#40 := [monotonicity #37]: #39
+#46 := [trans #40 #44]: #45
+#49 := [monotonicity #46]: #48
+#98 := [trans #49 #96]: #97
+#33 := [asserted]: #16
+#99 := [mp #33 #98]: #94
+#102 := [not-or-elim #99]: #70
+#100 := [not-or-elim #99]: #51
+#101 := [not-or-elim #99]: #66
+[th-lemma #101 #100 #102]: false
+unsat
+8a69c429281dbce5e808c8ed794578e8f39d3940 69 0
+#2 := false
+#44 := 0::real
+decl f5 :: real
+#11 := f5
+#42 := -1::real
+#51 := (* -1::real f5)
+decl f3 :: real
+#8 := f3
+#62 := (+ f3 #51)
+#63 := (<= #62 0::real)
+#64 := (not #63)
+decl f4 :: real
+#9 := f4
+#52 := (+ f4 #51)
+#50 := (>= #52 0::real)
+#53 := (not #50)
+#46 := (* -1::real f4)
+#47 := (+ f3 #46)
+#45 := (>= #47 0::real)
+#43 := (not #45)
+#56 := (and #43 #53)
+#59 := (not #56)
+#74 := (or #59 #63)
+#77 := (not #74)
+#14 := (< f5 f3)
+#15 := (not #14)
+#12 := (< f4 f5)
+#10 := (< f3 f4)
+#13 := (and #10 #12)
+#16 := (implies #13 #15)
+#17 := (not #16)
+#80 := (iff #17 #77)
+#35 := (not #13)
+#36 := (or #35 #15)
+#39 := (not #36)
+#78 := (iff #39 #77)
+#75 := (iff #36 #74)
+#72 := (iff #15 #63)
+#67 := (not #64)
+#70 := (iff #67 #63)
+#71 := [rewrite]: #70
+#68 := (iff #15 #67)
+#65 := (iff #14 #64)
+#66 := [rewrite]: #65
+#69 := [monotonicity #66]: #68
+#73 := [trans #69 #71]: #72
+#60 := (iff #35 #59)
+#57 := (iff #13 #56)
+#54 := (iff #12 #53)
+#55 := [rewrite]: #54
+#48 := (iff #10 #43)
+#49 := [rewrite]: #48
+#58 := [monotonicity #49 #55]: #57
+#61 := [monotonicity #58]: #60
+#76 := [monotonicity #61 #73]: #75
+#79 := [monotonicity #76]: #78
+#40 := (iff #17 #39)
+#37 := (iff #16 #36)
+#38 := [rewrite]: #37
+#41 := [monotonicity #38]: #40
+#81 := [trans #41 #79]: #80
+#34 := [asserted]: #17
+#82 := [mp #34 #81]: #77
+#86 := [not-or-elim #82]: #64
+#83 := [not-or-elim #82]: #56
+#84 := [and-elim #83]: #43
+#85 := [and-elim #83]: #53
+[th-lemma #85 #84 #86]: false
+unsat
+857d7ddf089457505996d95feeeae40661d0b2f9 43 0
+#2 := false
+decl f5 :: (-> S2 S2 S3)
+#15 := (:var 0 S2)
+#14 := (:var 1 S2)
+#16 := (f5 #14 #15)
+#561 := (pattern #16)
+decl f4 :: (-> S3 S2)
+#17 := (f4 #16)
+#47 := (= #14 #17)
+#562 := (forall (vars (?v0 S2) (?v1 S2)) (:pat #561) #47)
+#50 := (forall (vars (?v0 S2) (?v1 S2)) #47)
+#565 := (iff #50 #562)
+#563 := (iff #47 #47)
+#564 := [refl]: #563
+#566 := [quant-intro #564]: #565
+#83 := (~ #50 #50)
+#81 := (~ #47 #47)
+#82 := [refl]: #81
+#84 := [nnf-pos #82]: #83
+#18 := (= #17 #14)
+#19 := (forall (vars (?v0 S2) (?v1 S2)) #18)
+#51 := (iff #19 #50)
+#48 := (iff #18 #47)
+#49 := [rewrite]: #48
+#52 := [quant-intro #49]: #51
+#46 := [asserted]: #19
+#55 := [mp #46 #52]: #50
+#73 := [mp~ #55 #84]: #50
+#567 := [mp #73 #566]: #562
+decl f6 :: S2
+#9 := f6
+decl f3 :: S2
+#8 := f3
+#10 := (f5 f3 f6)
+#11 := (f4 #10)
+#12 := (= f3 #11)
+#13 := (not #12)
+#45 := [asserted]: #13
+#144 := (not #562)
+#231 := (or #144 #12)
+#145 := [quant-inst]: #231
+[unit-resolution #145 #45 #567]: false
+unsat
+23637ccd7eefaf0528eb9dd850aad7beaa4e7354 43 0
+#2 := false
+decl f5 :: (-> S2 S2 S3)
+#15 := (:var 0 S2)
+#14 := (:var 1 S2)
+#16 := (f5 #14 #15)
+#561 := (pattern #16)
+decl f4 :: (-> S3 S2)
+#20 := (f4 #16)
+#54 := (= #15 #20)
+#568 := (forall (vars (?v0 S2) (?v1 S2)) (:pat #561) #54)
+#58 := (forall (vars (?v0 S2) (?v1 S2)) #54)
+#571 := (iff #58 #568)
+#569 := (iff #54 #54)
+#570 := [refl]: #569
+#572 := [quant-intro #570]: #571
+#75 := (~ #58 #58)
+#74 := (~ #54 #54)
+#72 := [refl]: #74
+#76 := [nnf-pos #72]: #75
+#21 := (= #20 #15)
+#22 := (forall (vars (?v0 S2) (?v1 S2)) #21)
+#59 := (iff #22 #58)
+#56 := (iff #21 #54)
+#57 := [rewrite]: #56
+#60 := [quant-intro #57]: #59
+#53 := [asserted]: #22
+#63 := [mp #53 #60]: #58
+#69 := [mp~ #63 #76]: #58
+#573 := [mp #69 #572]: #568
+decl f3 :: S2
+#8 := f3
+decl f6 :: S2
+#9 := f6
+#10 := (f5 f6 f3)
+#11 := (f4 #10)
+#12 := (= f3 #11)
+#13 := (not #12)
+#45 := [asserted]: #13
+#234 := (not #568)
+#235 := (or #234 #12)
+#163 := [quant-inst]: #235
+[unit-resolution #163 #45 #573]: false
+unsat
+9a00f879e91964e9d6bb28cc5e490183e3742924 85 0
 #2 := false
 decl f5 :: S2
 #9 := f5
@@ -49522,88 +49840,7 @@
 #206 := [unit-resolution #170 #205]: #239
 [unit-resolution #206 #186]: false
 unsat
-9f5fa7c760db14a67656e2a38b69825c2338f5ee 80 0
-#2 := false
-#53 := 0::real
-decl f4 :: real
-#9 := f4
-#50 := -1::real
-#66 := (* -1::real f4)
-decl f3 :: real
-#8 := f3
-#67 := (+ f3 #66)
-#65 := (>= #67 0::real)
-#64 := (not #65)
-decl f5 :: real
-#11 := f5
-#51 := (* -1::real f5)
-#60 := (+ f3 #51)
-#61 := (<= #60 0::real)
-#52 := (+ f4 #51)
-#54 := (<= #52 0::real)
-#57 := (not #54)
-#83 := (or #57 #61 #65)
-#88 := (not #83)
-#13 := (<= f3 f5)
-#12 := (<= f4 f5)
-#14 := (implies #12 #13)
-#10 := (< f3 f4)
-#15 := (implies #10 #14)
-#16 := (not #15)
-#91 := (iff #16 #88)
-#34 := (not #12)
-#35 := (or #34 #13)
-#41 := (not #10)
-#42 := (or #41 #35)
-#47 := (not #42)
-#89 := (iff #47 #88)
-#86 := (iff #42 #83)
-#77 := (or #57 #61)
-#80 := (or #65 #77)
-#84 := (iff #80 #83)
-#85 := [rewrite]: #84
-#81 := (iff #42 #80)
-#78 := (iff #35 #77)
-#62 := (iff #13 #61)
-#63 := [rewrite]: #62
-#58 := (iff #34 #57)
-#55 := (iff #12 #54)
-#56 := [rewrite]: #55
-#59 := [monotonicity #56]: #58
-#79 := [monotonicity #59 #63]: #78
-#75 := (iff #41 #65)
-#70 := (not #64)
-#73 := (iff #70 #65)
-#74 := [rewrite]: #73
-#71 := (iff #41 #70)
-#68 := (iff #10 #64)
-#69 := [rewrite]: #68
-#72 := [monotonicity #69]: #71
-#76 := [trans #72 #74]: #75
-#82 := [monotonicity #76 #79]: #81
-#87 := [trans #82 #85]: #86
-#90 := [monotonicity #87]: #89
-#48 := (iff #16 #47)
-#45 := (iff #15 #42)
-#38 := (implies #10 #35)
-#43 := (iff #38 #42)
-#44 := [rewrite]: #43
-#39 := (iff #15 #38)
-#36 := (iff #14 #35)
-#37 := [rewrite]: #36
-#40 := [monotonicity #37]: #39
-#46 := [trans #40 #44]: #45
-#49 := [monotonicity #46]: #48
-#92 := [trans #49 #90]: #91
-#33 := [asserted]: #16
-#93 := [mp #33 #92]: #88
-#97 := [not-or-elim #93]: #64
-#95 := (not #61)
-#96 := [not-or-elim #93]: #95
-#94 := [not-or-elim #93]: #54
-[th-lemma #94 #96 #97]: false
-unsat
-ab91d7002afe61891f92aa68c03a93dbeac150bb 155 0
+8760f419b4705bba51bf2708287a0ef4a7175b9e 155 0
 #2 := false
 decl f7 :: S2
 #12 := f7
@@ -49759,88 +49996,7 @@
 #263 := [def-axiom]: #176
 [unit-resolution #263 #289 #215 #569]: false
 unsat
-ef54c95730a86f29e142ca8c0703d6c3a6105c5e 80 0
-#2 := false
-#52 := 0::real
-decl f4 :: real
-#9 := f4
-#50 := -1::real
-#69 := (* -1::real f4)
-decl f3 :: real
-#8 := f3
-#70 := (+ f3 #69)
-#71 := (<= #70 0::real)
-#74 := (not #71)
-decl f5 :: real
-#11 := f5
-#54 := (* -1::real f5)
-#65 := (+ f3 #54)
-#66 := (<= #65 0::real)
-#55 := (+ f4 #54)
-#53 := (>= #55 0::real)
-#83 := (or #53 #66 #74)
-#88 := (not #83)
-#13 := (<= f3 f5)
-#12 := (< f4 f5)
-#14 := (implies #12 #13)
-#10 := (<= f3 f4)
-#15 := (implies #10 #14)
-#16 := (not #15)
-#91 := (iff #16 #88)
-#34 := (not #12)
-#35 := (or #34 #13)
-#41 := (not #10)
-#42 := (or #41 #35)
-#47 := (not #42)
-#89 := (iff #47 #88)
-#86 := (iff #42 #83)
-#77 := (or #53 #66)
-#80 := (or #74 #77)
-#84 := (iff #80 #83)
-#85 := [rewrite]: #84
-#81 := (iff #42 #80)
-#78 := (iff #35 #77)
-#67 := (iff #13 #66)
-#68 := [rewrite]: #67
-#63 := (iff #34 #53)
-#51 := (not #53)
-#58 := (not #51)
-#61 := (iff #58 #53)
-#62 := [rewrite]: #61
-#59 := (iff #34 #58)
-#56 := (iff #12 #51)
-#57 := [rewrite]: #56
-#60 := [monotonicity #57]: #59
-#64 := [trans #60 #62]: #63
-#79 := [monotonicity #64 #68]: #78
-#75 := (iff #41 #74)
-#72 := (iff #10 #71)
-#73 := [rewrite]: #72
-#76 := [monotonicity #73]: #75
-#82 := [monotonicity #76 #79]: #81
-#87 := [trans #82 #85]: #86
-#90 := [monotonicity #87]: #89
-#48 := (iff #16 #47)
-#45 := (iff #15 #42)
-#38 := (implies #10 #35)
-#43 := (iff #38 #42)
-#44 := [rewrite]: #43
-#39 := (iff #15 #38)
-#36 := (iff #14 #35)
-#37 := [rewrite]: #36
-#40 := [monotonicity #37]: #39
-#46 := [trans #40 #44]: #45
-#49 := [monotonicity #46]: #48
-#92 := [trans #49 #90]: #91
-#33 := [asserted]: #16
-#93 := [mp #33 #92]: #88
-#97 := [not-or-elim #93]: #71
-#94 := [not-or-elim #93]: #51
-#95 := (not #66)
-#96 := [not-or-elim #93]: #95
-[th-lemma #96 #94 #97]: false
-unsat
-c53da5ad16e14d4123258f05451b97645b05e47b 91 0
+9b011b5f1ccfc0c5952d2a8ce428ee6a14bd5a78 91 0
 #2 := false
 decl f9 :: S3
 #14 := f9
@@ -49932,93 +50088,58 @@
 #320 := [unit-resolution #230 #598]: #299
 [unit-resolution #320 #321]: false
 unsat
-0c5d7dbb8aa2814977e1a9556d08eabbc11dd00b 85 0
-#2 := false
-#52 := 0::real
-decl f4 :: real
-#9 := f4
-#50 := -1::real
-#72 := (* -1::real f4)
-decl f3 :: real
-#8 := f3
-#73 := (+ f3 #72)
-#71 := (>= #73 0::real)
-#70 := (not #71)
-decl f5 :: real
-#11 := f5
-#54 := (* -1::real f5)
-#67 := (+ f3 #54)
-#66 := (>= #67 0::real)
-#65 := (not #66)
-#55 := (+ f4 #54)
-#53 := (>= #55 0::real)
-#89 := (or #53 #65 #71)
-#94 := (not #89)
-#13 := (< f3 f5)
-#12 := (< f4 f5)
-#14 := (implies #12 #13)
-#10 := (< f3 f4)
-#15 := (implies #10 #14)
-#16 := (not #15)
-#97 := (iff #16 #94)
-#34 := (not #12)
-#35 := (or #34 #13)
-#41 := (not #10)
-#42 := (or #41 #35)
-#47 := (not #42)
-#95 := (iff #47 #94)
-#92 := (iff #42 #89)
-#83 := (or #53 #65)
-#86 := (or #71 #83)
-#90 := (iff #86 #89)
-#91 := [rewrite]: #90
-#87 := (iff #42 #86)
-#84 := (iff #35 #83)
-#68 := (iff #13 #65)
-#69 := [rewrite]: #68
-#63 := (iff #34 #53)
-#51 := (not #53)
-#58 := (not #51)
-#61 := (iff #58 #53)
-#62 := [rewrite]: #61
-#59 := (iff #34 #58)
-#56 := (iff #12 #51)
+15e3058b649be6d5463c784c16fd64eaa28f5f73 50 0
+#2 := false
+decl f3 :: (-> S2 S3 S4 S3 S4)
+#15 := (:var 1 S3)
+#16 := (:var 0 S4)
+#14 := (:var 2 S2)
+#17 := (f3 #14 #15 #16 #15)
+#571 := (pattern #17)
+#54 := (= #16 #17)
+#572 := (forall (vars (?v0 S2) (?v1 S3) (?v2 S4)) (:pat #571) #54)
+#58 := (forall (vars (?v0 S2) (?v1 S3) (?v2 S4)) #54)
+#575 := (iff #58 #572)
+#573 := (iff #54 #54)
+#574 := [refl]: #573
+#576 := [quant-intro #574]: #575
+#87 := (~ #58 #58)
+#85 := (~ #54 #54)
+#86 := [refl]: #85
+#88 := [nnf-pos #86]: #87
+#18 := (= #17 #16)
+#19 := (forall (vars (?v0 S2) (?v1 S3) (?v2 S4)) #18)
+#59 := (iff #19 #58)
+#56 := (iff #18 #54)
 #57 := [rewrite]: #56
-#60 := [monotonicity #57]: #59
-#64 := [trans #60 #62]: #63
-#85 := [monotonicity #64 #69]: #84
-#81 := (iff #41 #71)
-#76 := (not #70)
-#79 := (iff #76 #71)
-#80 := [rewrite]: #79
-#77 := (iff #41 #76)
-#74 := (iff #10 #70)
-#75 := [rewrite]: #74
-#78 := [monotonicity #75]: #77
-#82 := [trans #78 #80]: #81
-#88 := [monotonicity #82 #85]: #87
-#93 := [trans #88 #91]: #92
-#96 := [monotonicity #93]: #95
-#48 := (iff #16 #47)
-#45 := (iff #15 #42)
-#38 := (implies #10 #35)
-#43 := (iff #38 #42)
-#44 := [rewrite]: #43
-#39 := (iff #15 #38)
-#36 := (iff #14 #35)
-#37 := [rewrite]: #36
-#40 := [monotonicity #37]: #39
-#46 := [trans #40 #44]: #45
-#49 := [monotonicity #46]: #48
-#98 := [trans #49 #96]: #97
-#33 := [asserted]: #16
-#99 := [mp #33 #98]: #94
-#102 := [not-or-elim #99]: #70
-#100 := [not-or-elim #99]: #51
-#101 := [not-or-elim #99]: #66
-[th-lemma #101 #100 #102]: false
-unsat
-4d6ae030a899d6a058af8429edba2402745a216b 210 0
+#60 := [quant-intro #57]: #59
+#53 := [asserted]: #19
+#63 := [mp #53 #60]: #58
+#79 := [mp~ #63 #88]: #58
+#577 := [mp #79 #576]: #572
+decl f5 :: S3
+#9 := f5
+decl f6 :: S4
+#10 := f6
+decl f4 :: S2
+#8 := f4
+#11 := (f3 f4 f5 f6 f5)
+#47 := (= f6 #11)
+#50 := (not #47)
+#12 := (= #11 f6)
+#13 := (not #12)
+#51 := (iff #13 #50)
+#48 := (iff #12 #47)
+#49 := [rewrite]: #48
+#52 := [monotonicity #49]: #51
+#46 := [asserted]: #13
+#55 := [mp #46 #52]: #50
+#154 := (not #572)
+#241 := (or #154 #47)
+#155 := [quant-inst]: #241
+[unit-resolution #155 #55 #577]: false
+unsat
+a158237dab9b8e1ca3aee50fa8555cfce1bec7cc 210 0
 #2 := false
 decl f11 :: S5
 #16 := f11
@@ -50229,77 +50350,93 @@
 #321 := [def-axiom]: #234
 [unit-resolution #321 #597 #608 #332]: false
 unsat
-ad850a4d677f642c1e98f0e5f3b7d3f84b6c874a 69 0
-#2 := false
-#44 := 0::real
-decl f5 :: real
-#11 := f5
-#42 := -1::real
-#51 := (* -1::real f5)
-decl f3 :: real
-#8 := f3
-#62 := (+ f3 #51)
-#63 := (<= #62 0::real)
-#64 := (not #63)
-decl f4 :: real
-#9 := f4
-#52 := (+ f4 #51)
-#50 := (>= #52 0::real)
-#53 := (not #50)
-#46 := (* -1::real f4)
-#47 := (+ f3 #46)
-#45 := (>= #47 0::real)
-#43 := (not #45)
-#56 := (and #43 #53)
-#59 := (not #56)
-#74 := (or #59 #63)
-#77 := (not #74)
-#14 := (< f5 f3)
-#15 := (not #14)
-#12 := (< f4 f5)
-#10 := (< f3 f4)
-#13 := (and #10 #12)
-#16 := (implies #13 #15)
-#17 := (not #16)
-#80 := (iff #17 #77)
-#35 := (not #13)
-#36 := (or #35 #15)
-#39 := (not #36)
-#78 := (iff #39 #77)
-#75 := (iff #36 #74)
-#72 := (iff #15 #63)
-#67 := (not #64)
-#70 := (iff #67 #63)
-#71 := [rewrite]: #70
-#68 := (iff #15 #67)
-#65 := (iff #14 #64)
-#66 := [rewrite]: #65
-#69 := [monotonicity #66]: #68
-#73 := [trans #69 #71]: #72
-#60 := (iff #35 #59)
-#57 := (iff #13 #56)
-#54 := (iff #12 #53)
-#55 := [rewrite]: #54
-#48 := (iff #10 #43)
-#49 := [rewrite]: #48
-#58 := [monotonicity #49 #55]: #57
-#61 := [monotonicity #58]: #60
-#76 := [monotonicity #61 #73]: #75
+9e71fbaeab4696b5dac5d3a07643d4cf5689f72a 85 0
+#2 := false
+decl f8 :: (-> S3 S2 S4)
+decl f4 :: S2
+#9 := f4
+decl f6 :: S3
+#12 := f6
+#15 := (f8 f6 f4)
+decl f5 :: (-> S3 S2 S4 S2 S4)
+decl f7 :: S4
+#13 := f7
+decl f3 :: S2
+#8 := f3
+#14 := (f5 f6 f3 f7 f4)
+#16 := (= #14 #15)
+#161 := (= f7 #14)
+#10 := (= f3 f4)
+#248 := (ite #10 #161 #16)
+#252 := (not #248)
+#59 := (not #16)
+#52 := (or #10 #16)
+#55 := (not #52)
+#11 := (not #10)
+#17 := (implies #11 #16)
+#18 := (not #17)
+#56 := (iff #18 #55)
+#53 := (iff #17 #52)
+#54 := [rewrite]: #53
+#57 := [monotonicity #54]: #56
+#51 := [asserted]: #18
+#60 := [mp #51 #57]: #55
+#61 := [not-or-elim #60]: #59
+#58 := [not-or-elim #60]: #11
+#254 := (or #252 #10 #16)
+#251 := [def-axiom]: #254
+#162 := [unit-resolution #251 #58 #61]: #252
+#28 := (:var 0 S2)
+#27 := (:var 1 S4)
+#26 := (:var 2 S2)
+#25 := (:var 3 S3)
+#29 := (f5 #25 #26 #27 #28)
+#586 := (pattern #29)
+#31 := (f8 #25 #28)
+#83 := (= #29 #31)
+#86 := (= #27 #29)
+#70 := (= #26 #28)
+#93 := (ite #70 #86 #83)
+#587 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4) (?v3 S2)) (:pat #586) #93)
+#100 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4) (?v3 S2)) #93)
+#590 := (iff #100 #587)
+#588 := (iff #93 #93)
+#589 := [refl]: #588
+#591 := [quant-intro #589]: #590
+#74 := (ite #70 #27 #31)
+#77 := (= #29 #74)
+#80 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4) (?v3 S2)) #77)
+#101 := (iff #80 #100)
+#94 := (iff #77 #93)
+#99 := [rewrite]: #94
+#102 := [quant-intro #99]: #101
+#91 := (~ #80 #80)
+#90 := (~ #77 #77)
+#87 := [refl]: #90
+#92 := [nnf-pos #87]: #91
+#30 := (= #28 #26)
+#32 := (ite #30 #27 #31)
+#33 := (= #29 #32)
+#34 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4) (?v3 S2)) #33)
+#81 := (iff #34 #80)
+#78 := (iff #33 #77)
+#75 := (= #32 #74)
+#72 := (iff #30 #70)
+#73 := [rewrite]: #72
+#76 := [monotonicity #73]: #75
 #79 := [monotonicity #76]: #78
-#40 := (iff #17 #39)
-#37 := (iff #16 #36)
-#38 := [rewrite]: #37
-#41 := [monotonicity #38]: #40
-#81 := [trans #41 #79]: #80
-#34 := [asserted]: #17
-#82 := [mp #34 #81]: #77
-#86 := [not-or-elim #82]: #64
-#83 := [not-or-elim #82]: #56
-#84 := [and-elim #83]: #43
-#85 := [and-elim #83]: #53
-[th-lemma #85 #84 #86]: false
-unsat
-003bb45597da3e4b1800d61bab0b4e1d95dbdf99 144 0
+#82 := [quant-intro #79]: #81
+#69 := [asserted]: #34
+#85 := [mp #69 #82]: #80
+#88 := [mp~ #85 #92]: #80
+#103 := [mp #88 #102]: #100
+#592 := [mp #103 #591]: #587
+#163 := (not #587)
+#250 := (or #163 #248)
+#241 := [quant-inst]: #250
+[unit-resolution #241 #592 #162]: false
+unsat
+acd9894f281a06eeaf416c1e8c82c6d84e7d6ad1 144 0
 #2 := false
 decl f11 :: S3
 #16 := f11
@@ -50444,393 +50581,7 @@
 #432 := [unit-resolution #232 #431]: #301
 [unit-resolution #432 #433]: false
 unsat
-6cc8ed53fe294f253a561b590f79ef0e0271d1c2 50 0
-#2 := false
-decl f3 :: (-> S2 S3 S4 S3 S4)
-#15 := (:var 1 S3)
-#16 := (:var 0 S4)
-#14 := (:var 2 S2)
-#17 := (f3 #14 #15 #16 #15)
-#571 := (pattern #17)
-#54 := (= #16 #17)
-#572 := (forall (vars (?v0 S2) (?v1 S3) (?v2 S4)) (:pat #571) #54)
-#58 := (forall (vars (?v0 S2) (?v1 S3) (?v2 S4)) #54)
-#575 := (iff #58 #572)
-#573 := (iff #54 #54)
-#574 := [refl]: #573
-#576 := [quant-intro #574]: #575
-#87 := (~ #58 #58)
-#85 := (~ #54 #54)
-#86 := [refl]: #85
-#88 := [nnf-pos #86]: #87
-#18 := (= #17 #16)
-#19 := (forall (vars (?v0 S2) (?v1 S3) (?v2 S4)) #18)
-#59 := (iff #19 #58)
-#56 := (iff #18 #54)
-#57 := [rewrite]: #56
-#60 := [quant-intro #57]: #59
-#53 := [asserted]: #19
-#63 := [mp #53 #60]: #58
-#79 := [mp~ #63 #88]: #58
-#577 := [mp #79 #576]: #572
-decl f5 :: S3
-#9 := f5
-decl f6 :: S4
-#10 := f6
-decl f4 :: S2
-#8 := f4
-#11 := (f3 f4 f5 f6 f5)
-#47 := (= f6 #11)
-#50 := (not #47)
-#12 := (= #11 f6)
-#13 := (not #12)
-#51 := (iff #13 #50)
-#48 := (iff #12 #47)
-#49 := [rewrite]: #48
-#52 := [monotonicity #49]: #51
-#46 := [asserted]: #13
-#55 := [mp #46 #52]: #50
-#154 := (not #572)
-#241 := (or #154 #47)
-#155 := [quant-inst]: #241
-[unit-resolution #155 #55 #577]: false
-unsat
-31b5dadcaa7e7a3e69848f4809b04b844a6e8b56 144 0
-#2 := false
-decl f12 :: S3
-#17 := f12
-decl f9 :: S3
-#10 := f9
-#23 := (= f9 f12)
-decl f3 :: (-> S2 S3)
-decl f4 :: (-> S4 S2)
-decl f5 :: (-> S5 S2 S4)
-decl f7 :: (-> S5 S3 S2)
-decl f11 :: S5
-#16 := f11
-#18 := (f7 f11 f12)
-decl f10 :: S5
-#15 := f10
-#19 := (f5 f10 #18)
-#20 := (f4 #19)
-#21 := (f3 #20)
-decl f8 :: S5
-#9 := f8
-#11 := (f7 f8 f9)
-decl f6 :: S5
-#8 := f6
-#12 := (f5 f6 #11)
-#13 := (f4 #12)
-#14 := (f3 #13)
-#22 := (= #14 #21)
-#24 := (iff #22 #23)
-#315 := (= #21 f12)
-#626 := (f3 #18)
-#312 := (= #626 f12)
-#627 := (= f12 #626)
-#27 := (:var 0 S3)
-#26 := (:var 1 S5)
-#28 := (f7 #26 #27)
-#630 := (pattern #28)
-#37 := (f3 #28)
-#92 := (= #27 #37)
-#644 := (forall (vars (?v0 S5) (?v1 S3)) (:pat #630) #92)
-#96 := (forall (vars (?v0 S5) (?v1 S3)) #92)
-#647 := (iff #96 #644)
-#645 := (iff #92 #92)
-#646 := [refl]: #645
-#648 := [quant-intro #646]: #647
-#131 := (~ #96 #96)
-#145 := (~ #92 #92)
-#146 := [refl]: #145
-#132 := [nnf-pos #146]: #131
-#38 := (= #37 #27)
-#39 := (forall (vars (?v0 S5) (?v1 S3)) #38)
-#97 := (iff #39 #96)
-#94 := (iff #38 #92)
-#95 := [rewrite]: #94
-#98 := [quant-intro #95]: #97
-#91 := [asserted]: #39
-#101 := [mp #91 #98]: #96
-#147 := [mp~ #101 #132]: #96
-#649 := [mp #147 #648]: #644
-#290 := (not #644)
-#277 := (or #290 #627)
-#282 := [quant-inst]: #277
-#323 := [unit-resolution #282 #649]: #627
-#313 := [symm #323]: #312
-#602 := (= #21 #626)
-#601 := (= #20 #18)
-#607 := (= #18 #20)
-#32 := (:var 0 S2)
-#33 := (f5 #26 #32)
-#637 := (pattern #33)
-#40 := (f4 #33)
-#100 := (= #32 #40)
-#650 := (forall (vars (?v0 S5) (?v1 S2)) (:pat #637) #100)
-#104 := (forall (vars (?v0 S5) (?v1 S2)) #100)
-#653 := (iff #104 #650)
-#651 := (iff #100 #100)
-#652 := [refl]: #651
-#654 := [quant-intro #652]: #653
-#133 := (~ #104 #104)
-#148 := (~ #100 #100)
-#149 := [refl]: #148
-#134 := [nnf-pos #149]: #133
-#41 := (= #40 #32)
-#42 := (forall (vars (?v0 S5) (?v1 S2)) #41)
-#105 := (iff #42 #104)
-#102 := (iff #41 #100)
-#103 := [rewrite]: #102
-#106 := [quant-intro #103]: #105
-#99 := [asserted]: #42
-#109 := [mp #99 #106]: #104
-#150 := [mp~ #109 #134]: #104
-#655 := [mp #150 #654]: #650
-#267 := (not #650)
-#606 := (or #267 #607)
-#612 := [quant-inst]: #606
-#597 := [unit-resolution #612 #655]: #607
-#598 := [symm #597]: #601
-#311 := [monotonicity #598]: #602
-#593 := [trans #311 #313]: #315
-#587 := (= #14 f9)
-#306 := (f3 #11)
-#585 := (= #306 f9)
-#285 := (= f9 #306)
-#291 := (or #290 #285)
-#625 := [quant-inst]: #291
-#594 := [unit-resolution #625 #649]: #285
-#586 := [symm #594]: #585
-#592 := (= #14 #306)
-#591 := (= #13 #11)
-#620 := (= #11 #13)
-#268 := (or #267 #620)
-#269 := [quant-inst]: #268
-#307 := [unit-resolution #269 #655]: #620
-#595 := [symm #307]: #591
-#596 := [monotonicity #595]: #592
-#582 := [trans #596 #586]: #587
-#583 := [monotonicity #582 #593]: #24
-#301 := (not #23)
-#71 := (not #22)
-#588 := (iff #71 #301)
-#589 := [monotonicity #583]: #588
-#220 := [hypothesis]: #71
-#584 := [mp #220 #589]: #301
-#300 := (or #23 #22)
-#72 := (iff #23 #71)
-#25 := (not #24)
-#73 := (iff #25 #72)
-#74 := [rewrite]: #73
-#70 := [asserted]: #25
-#77 := [mp #70 #74]: #72
-#212 := (not #72)
-#299 := (or #23 #22 #212)
-#213 := [def-axiom]: #299
-#214 := [unit-resolution #213 #77]: #300
-#599 := [unit-resolution #214 #220]: #23
-#590 := [unit-resolution #599 #584]: false
-#431 := [lemma #590]: #22
-#433 := [mp #431 #583]: #23
-#304 := (or #301 #71)
-#292 := (or #301 #71 #212)
-#303 := [def-axiom]: #292
-#232 := [unit-resolution #303 #77]: #304
-#432 := [unit-resolution #232 #431]: #301
-[unit-resolution #432 #433]: false
-unsat
-d2a264ef3e43d9b7d009fa11ec172212f0bd6279 85 0
-#2 := false
-decl f8 :: (-> S3 S2 S4)
-decl f4 :: S2
-#9 := f4
-decl f6 :: S3
-#12 := f6
-#15 := (f8 f6 f4)
-decl f5 :: (-> S3 S2 S4 S2 S4)
-decl f7 :: S4
-#13 := f7
-decl f3 :: S2
-#8 := f3
-#14 := (f5 f6 f3 f7 f4)
-#16 := (= #14 #15)
-#161 := (= f7 #14)
-#10 := (= f3 f4)
-#248 := (ite #10 #161 #16)
-#252 := (not #248)
-#59 := (not #16)
-#52 := (or #10 #16)
-#55 := (not #52)
-#11 := (not #10)
-#17 := (implies #11 #16)
-#18 := (not #17)
-#56 := (iff #18 #55)
-#53 := (iff #17 #52)
-#54 := [rewrite]: #53
-#57 := [monotonicity #54]: #56
-#51 := [asserted]: #18
-#60 := [mp #51 #57]: #55
-#61 := [not-or-elim #60]: #59
-#58 := [not-or-elim #60]: #11
-#254 := (or #252 #10 #16)
-#251 := [def-axiom]: #254
-#162 := [unit-resolution #251 #58 #61]: #252
-#28 := (:var 0 S2)
-#27 := (:var 1 S4)
-#26 := (:var 2 S2)
-#25 := (:var 3 S3)
-#29 := (f5 #25 #26 #27 #28)
-#586 := (pattern #29)
-#31 := (f8 #25 #28)
-#83 := (= #29 #31)
-#86 := (= #27 #29)
-#70 := (= #26 #28)
-#93 := (ite #70 #86 #83)
-#587 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4) (?v3 S2)) (:pat #586) #93)
-#100 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4) (?v3 S2)) #93)
-#590 := (iff #100 #587)
-#588 := (iff #93 #93)
-#589 := [refl]: #588
-#591 := [quant-intro #589]: #590
-#74 := (ite #70 #27 #31)
-#77 := (= #29 #74)
-#80 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4) (?v3 S2)) #77)
-#101 := (iff #80 #100)
-#94 := (iff #77 #93)
-#99 := [rewrite]: #94
-#102 := [quant-intro #99]: #101
-#91 := (~ #80 #80)
-#90 := (~ #77 #77)
-#87 := [refl]: #90
-#92 := [nnf-pos #87]: #91
-#30 := (= #28 #26)
-#32 := (ite #30 #27 #31)
-#33 := (= #29 #32)
-#34 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4) (?v3 S2)) #33)
-#81 := (iff #34 #80)
-#78 := (iff #33 #77)
-#75 := (= #32 #74)
-#72 := (iff #30 #70)
-#73 := [rewrite]: #72
-#76 := [monotonicity #73]: #75
-#79 := [monotonicity #76]: #78
-#82 := [quant-intro #79]: #81
-#69 := [asserted]: #34
-#85 := [mp #69 #82]: #80
-#88 := [mp~ #85 #92]: #80
-#103 := [mp #88 #102]: #100
-#592 := [mp #103 #591]: #587
-#163 := (not #587)
-#250 := (or #163 #248)
-#241 := [quant-inst]: #250
-[unit-resolution #241 #592 #162]: false
-unsat
-87752431ac232f724f4719a9dd746411dc8e0334 103 0
-#2 := false
-decl f6 :: S3
-#9 := f6
-decl f5 :: S3
-#8 := f5
-#14 := (= f5 f6)
-decl f7 :: (-> S2 S3)
-decl f4 :: (-> S3 S3 S2)
-#10 := (f4 f5 f6)
-#12 := (f7 #10)
-decl f3 :: (-> S2 S3)
-#11 := (f3 #10)
-#13 := (= #11 #12)
-#15 := (iff #13 #14)
-#558 := (iff #14 #13)
-#241 := (= f6 #12)
-#18 := (:var 0 S3)
-#17 := (:var 1 S3)
-#19 := (f4 #17 #18)
-#569 := (pattern #19)
-#23 := (f7 #19)
-#62 := (= #18 #23)
-#576 := (forall (vars (?v0 S3) (?v1 S3)) (:pat #569) #62)
-#66 := (forall (vars (?v0 S3) (?v1 S3)) #62)
-#579 := (iff #66 #576)
-#577 := (iff #62 #62)
-#578 := [refl]: #577
-#580 := [quant-intro #578]: #579
-#83 := (~ #66 #66)
-#82 := (~ #62 #62)
-#80 := [refl]: #82
-#84 := [nnf-pos #80]: #83
-#24 := (= #23 #18)
-#25 := (forall (vars (?v0 S3) (?v1 S3)) #24)
-#67 := (iff #25 #66)
-#64 := (iff #24 #62)
-#65 := [rewrite]: #64
-#68 := [quant-intro #65]: #67
-#61 := [asserted]: #25
-#71 := [mp #61 #68]: #66
-#77 := [mp~ #71 #84]: #66
-#581 := [mp #77 #580]: #576
-#350 := (not #576)
-#557 := (or #350 #241)
-#229 := [quant-inst]: #557
-#562 := [unit-resolution #229 #581]: #241
-#244 := (= f5 #11)
-#20 := (f3 #19)
-#54 := (= #17 #20)
-#570 := (forall (vars (?v0 S3) (?v1 S3)) (:pat #569) #54)
-#58 := (forall (vars (?v0 S3) (?v1 S3)) #54)
-#573 := (iff #58 #570)
-#571 := (iff #54 #54)
-#572 := [refl]: #571
-#574 := [quant-intro #572]: #573
-#91 := (~ #58 #58)
-#89 := (~ #54 #54)
-#90 := [refl]: #89
-#92 := [nnf-pos #90]: #91
-#21 := (= #20 #17)
-#22 := (forall (vars (?v0 S3) (?v1 S3)) #21)
-#59 := (iff #22 #58)
-#56 := (iff #21 #54)
-#57 := [rewrite]: #56
-#60 := [quant-intro #57]: #59
-#53 := [asserted]: #22
-#63 := [mp #53 #60]: #58
-#81 := [mp~ #63 #92]: #58
-#575 := [mp #81 #574]: #570
-#224 := (not #570)
-#561 := (or #224 #244)
-#563 := [quant-inst]: #561
-#568 := [unit-resolution #563 #575]: #244
-#216 := [monotonicity #568 #562]: #558
-#221 := [symm #216]: #15
-#240 := (not #14)
-#49 := (not #13)
-#559 := (iff #49 #240)
-#217 := [monotonicity #221]: #559
-#230 := [hypothesis]: #49
-#560 := [mp #230 #217]: #240
-#239 := (or #14 #13)
-#50 := (iff #14 #49)
-#16 := (not #15)
-#51 := (iff #16 #50)
-#52 := [rewrite]: #51
-#48 := [asserted]: #16
-#55 := [mp #48 #52]: #50
-#151 := (not #50)
-#238 := (or #14 #13 #151)
-#152 := [def-axiom]: #238
-#153 := [unit-resolution #152 #55]: #239
-#564 := [unit-resolution #153 #230]: #14
-#201 := [unit-resolution #564 #560]: false
-#544 := [lemma #201]: #13
-#206 := [mp #544 #221]: #14
-#243 := (or #240 #49)
-#231 := (or #240 #49 #151)
-#242 := [def-axiom]: #231
-#171 := [unit-resolution #242 #55]: #243
-#205 := [unit-resolution #171 #544]: #240
-[unit-resolution #205 #206]: false
-unsat
-13cd2a6082f8fe0947641619628aa7b793fa5eb0 158 0
+417188282427933be953d50eedb6f8d3636fdcb9 158 0
 #2 := false
 decl f5 :: (-> S3 S2 S4)
 decl f3 :: S2
@@ -50989,7 +50740,411 @@
 #73 := [not-or-elim #72]: #71
 [unit-resolution #73 #578]: false
 unsat
-de0be68d62a4eef58cc08ca9b43494f9219ad474 111 0
+866d440edf643384cbf5eede7548231cbd17d588 144 0
+#2 := false
+decl f12 :: S3
+#17 := f12
+decl f9 :: S3
+#10 := f9
+#23 := (= f9 f12)
+decl f3 :: (-> S2 S3)
+decl f4 :: (-> S4 S2)
+decl f5 :: (-> S5 S2 S4)
+decl f7 :: (-> S5 S3 S2)
+decl f11 :: S5
+#16 := f11
+#18 := (f7 f11 f12)
+decl f10 :: S5
+#15 := f10
+#19 := (f5 f10 #18)
+#20 := (f4 #19)
+#21 := (f3 #20)
+decl f8 :: S5
+#9 := f8
+#11 := (f7 f8 f9)
+decl f6 :: S5
+#8 := f6
+#12 := (f5 f6 #11)
+#13 := (f4 #12)
+#14 := (f3 #13)
+#22 := (= #14 #21)
+#24 := (iff #22 #23)
+#315 := (= #21 f12)
+#626 := (f3 #18)
+#312 := (= #626 f12)
+#627 := (= f12 #626)
+#27 := (:var 0 S3)
+#26 := (:var 1 S5)
+#28 := (f7 #26 #27)
+#630 := (pattern #28)
+#37 := (f3 #28)
+#92 := (= #27 #37)
+#644 := (forall (vars (?v0 S5) (?v1 S3)) (:pat #630) #92)
+#96 := (forall (vars (?v0 S5) (?v1 S3)) #92)
+#647 := (iff #96 #644)
+#645 := (iff #92 #92)
+#646 := [refl]: #645
+#648 := [quant-intro #646]: #647
+#131 := (~ #96 #96)
+#145 := (~ #92 #92)
+#146 := [refl]: #145
+#132 := [nnf-pos #146]: #131
+#38 := (= #37 #27)
+#39 := (forall (vars (?v0 S5) (?v1 S3)) #38)
+#97 := (iff #39 #96)
+#94 := (iff #38 #92)
+#95 := [rewrite]: #94
+#98 := [quant-intro #95]: #97
+#91 := [asserted]: #39
+#101 := [mp #91 #98]: #96
+#147 := [mp~ #101 #132]: #96
+#649 := [mp #147 #648]: #644
+#290 := (not #644)
+#277 := (or #290 #627)
+#282 := [quant-inst]: #277
+#323 := [unit-resolution #282 #649]: #627
+#313 := [symm #323]: #312
+#602 := (= #21 #626)
+#601 := (= #20 #18)
+#607 := (= #18 #20)
+#32 := (:var 0 S2)
+#33 := (f5 #26 #32)
+#637 := (pattern #33)
+#40 := (f4 #33)
+#100 := (= #32 #40)
+#650 := (forall (vars (?v0 S5) (?v1 S2)) (:pat #637) #100)
+#104 := (forall (vars (?v0 S5) (?v1 S2)) #100)
+#653 := (iff #104 #650)
+#651 := (iff #100 #100)
+#652 := [refl]: #651
+#654 := [quant-intro #652]: #653
+#133 := (~ #104 #104)
+#148 := (~ #100 #100)
+#149 := [refl]: #148
+#134 := [nnf-pos #149]: #133
+#41 := (= #40 #32)
+#42 := (forall (vars (?v0 S5) (?v1 S2)) #41)
+#105 := (iff #42 #104)
+#102 := (iff #41 #100)
+#103 := [rewrite]: #102
+#106 := [quant-intro #103]: #105
+#99 := [asserted]: #42
+#109 := [mp #99 #106]: #104
+#150 := [mp~ #109 #134]: #104
+#655 := [mp #150 #654]: #650
+#267 := (not #650)
+#606 := (or #267 #607)
+#612 := [quant-inst]: #606
+#597 := [unit-resolution #612 #655]: #607
+#598 := [symm #597]: #601
+#311 := [monotonicity #598]: #602
+#593 := [trans #311 #313]: #315
+#587 := (= #14 f9)
+#306 := (f3 #11)
+#585 := (= #306 f9)
+#285 := (= f9 #306)
+#291 := (or #290 #285)
+#625 := [quant-inst]: #291
+#594 := [unit-resolution #625 #649]: #285
+#586 := [symm #594]: #585
+#592 := (= #14 #306)
+#591 := (= #13 #11)
+#620 := (= #11 #13)
+#268 := (or #267 #620)
+#269 := [quant-inst]: #268
+#307 := [unit-resolution #269 #655]: #620
+#595 := [symm #307]: #591
+#596 := [monotonicity #595]: #592
+#582 := [trans #596 #586]: #587
+#583 := [monotonicity #582 #593]: #24
+#301 := (not #23)
+#71 := (not #22)
+#588 := (iff #71 #301)
+#589 := [monotonicity #583]: #588
+#220 := [hypothesis]: #71
+#584 := [mp #220 #589]: #301
+#300 := (or #23 #22)
+#72 := (iff #23 #71)
+#25 := (not #24)
+#73 := (iff #25 #72)
+#74 := [rewrite]: #73
+#70 := [asserted]: #25
+#77 := [mp #70 #74]: #72
+#212 := (not #72)
+#299 := (or #23 #22 #212)
+#213 := [def-axiom]: #299
+#214 := [unit-resolution #213 #77]: #300
+#599 := [unit-resolution #214 #220]: #23
+#590 := [unit-resolution #599 #584]: false
+#431 := [lemma #590]: #22
+#433 := [mp #431 #583]: #23
+#304 := (or #301 #71)
+#292 := (or #301 #71 #212)
+#303 := [def-axiom]: #292
+#232 := [unit-resolution #303 #77]: #304
+#432 := [unit-resolution #232 #431]: #301
+[unit-resolution #432 #433]: false
+unsat
+3e56e54d471720a3a5d996ce27f17fcb7694aeb0 72 0
+#2 := false
+decl f6 :: (-> S3 S2 S4 S3)
+#23 := (:var 0 S4)
+#22 := (:var 1 S2)
+#21 := (:var 2 S3)
+#24 := (f6 #21 #22 #23)
+#591 := (pattern #24)
+decl f5 :: (-> S3 S2 S4)
+#25 := (f5 #24 #22)
+#75 := (= #23 #25)
+#593 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) (:pat #591) #75)
+#78 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) #75)
+#592 := (iff #78 #593)
+#595 := (iff #593 #593)
+#596 := [rewrite]: #595
+#594 := [rewrite]: #592
+#597 := [trans #594 #596]: #592
+#109 := (~ #78 #78)
+#107 := (~ #75 #75)
+#108 := [refl]: #107
+#110 := [nnf-pos #108]: #109
+#26 := (= #25 #23)
+#27 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) #26)
+#79 := (iff #27 #78)
+#76 := (iff #26 #75)
+#77 := [rewrite]: #76
+#80 := [quant-intro #77]: #79
+#74 := [asserted]: #27
+#83 := [mp #74 #80]: #78
+#101 := [mp~ #83 #110]: #78
+#598 := [mp #101 #597]: #593
+decl f4 :: S2
+#9 := f4
+decl f9 :: S4
+#15 := f9
+decl f8 :: S4
+#13 := f8
+decl f3 :: S2
+#8 := f3
+decl f7 :: S3
+#12 := f7
+#14 := (f6 f7 f3 f8)
+#16 := (f6 #14 f4 f9)
+#17 := (f5 #16 f4)
+#56 := (= f9 #17)
+#71 := (not #56)
+#10 := (= f3 f4)
+#62 := (or #10 #56)
+#67 := (not #62)
+#18 := (= #17 f9)
+#11 := (not #10)
+#19 := (implies #11 #18)
+#20 := (not #19)
+#68 := (iff #20 #67)
+#65 := (iff #19 #62)
+#59 := (implies #11 #56)
+#63 := (iff #59 #62)
+#64 := [rewrite]: #63
+#60 := (iff #19 #59)
+#57 := (iff #18 #56)
+#58 := [rewrite]: #57
+#61 := [monotonicity #58]: #60
+#66 := [trans #61 #64]: #65
+#69 := [monotonicity #66]: #68
+#55 := [asserted]: #20
+#72 := [mp #55 #69]: #67
+#73 := [not-or-elim #72]: #71
+#175 := (not #593)
+#264 := (or #175 #56)
+#265 := [quant-inst]: #264
+[unit-resolution #265 #73 #598]: false
+unsat
+2ecc5cb618eddd0d10a797b2211747ef8a2776e2 103 0
+#2 := false
+decl f6 :: S3
+#9 := f6
+decl f5 :: S3
+#8 := f5
+#14 := (= f5 f6)
+decl f7 :: (-> S2 S3)
+decl f4 :: (-> S3 S3 S2)
+#10 := (f4 f5 f6)
+#12 := (f7 #10)
+decl f3 :: (-> S2 S3)
+#11 := (f3 #10)
+#13 := (= #11 #12)
+#15 := (iff #13 #14)
+#558 := (iff #14 #13)
+#241 := (= f6 #12)
+#18 := (:var 0 S3)
+#17 := (:var 1 S3)
+#19 := (f4 #17 #18)
+#569 := (pattern #19)
+#23 := (f7 #19)
+#62 := (= #18 #23)
+#576 := (forall (vars (?v0 S3) (?v1 S3)) (:pat #569) #62)
+#66 := (forall (vars (?v0 S3) (?v1 S3)) #62)
+#579 := (iff #66 #576)
+#577 := (iff #62 #62)
+#578 := [refl]: #577
+#580 := [quant-intro #578]: #579
+#83 := (~ #66 #66)
+#82 := (~ #62 #62)
+#80 := [refl]: #82
+#84 := [nnf-pos #80]: #83
+#24 := (= #23 #18)
+#25 := (forall (vars (?v0 S3) (?v1 S3)) #24)
+#67 := (iff #25 #66)
+#64 := (iff #24 #62)
+#65 := [rewrite]: #64
+#68 := [quant-intro #65]: #67
+#61 := [asserted]: #25
+#71 := [mp #61 #68]: #66
+#77 := [mp~ #71 #84]: #66
+#581 := [mp #77 #580]: #576
+#350 := (not #576)
+#557 := (or #350 #241)
+#229 := [quant-inst]: #557
+#562 := [unit-resolution #229 #581]: #241
+#244 := (= f5 #11)
+#20 := (f3 #19)
+#54 := (= #17 #20)
+#570 := (forall (vars (?v0 S3) (?v1 S3)) (:pat #569) #54)
+#58 := (forall (vars (?v0 S3) (?v1 S3)) #54)
+#573 := (iff #58 #570)
+#571 := (iff #54 #54)
+#572 := [refl]: #571
+#574 := [quant-intro #572]: #573
+#91 := (~ #58 #58)
+#89 := (~ #54 #54)
+#90 := [refl]: #89
+#92 := [nnf-pos #90]: #91
+#21 := (= #20 #17)
+#22 := (forall (vars (?v0 S3) (?v1 S3)) #21)
+#59 := (iff #22 #58)
+#56 := (iff #21 #54)
+#57 := [rewrite]: #56
+#60 := [quant-intro #57]: #59
+#53 := [asserted]: #22
+#63 := [mp #53 #60]: #58
+#81 := [mp~ #63 #92]: #58
+#575 := [mp #81 #574]: #570
+#224 := (not #570)
+#561 := (or #224 #244)
+#563 := [quant-inst]: #561
+#568 := [unit-resolution #563 #575]: #244
+#216 := [monotonicity #568 #562]: #558
+#221 := [symm #216]: #15
+#240 := (not #14)
+#49 := (not #13)
+#559 := (iff #49 #240)
+#217 := [monotonicity #221]: #559
+#230 := [hypothesis]: #49
+#560 := [mp #230 #217]: #240
+#239 := (or #14 #13)
+#50 := (iff #14 #49)
+#16 := (not #15)
+#51 := (iff #16 #50)
+#52 := [rewrite]: #51
+#48 := [asserted]: #16
+#55 := [mp #48 #52]: #50
+#151 := (not #50)
+#238 := (or #14 #13 #151)
+#152 := [def-axiom]: #238
+#153 := [unit-resolution #152 #55]: #239
+#564 := [unit-resolution #153 #230]: #14
+#201 := [unit-resolution #564 #560]: false
+#544 := [lemma #201]: #13
+#206 := [mp #544 #221]: #14
+#243 := (or #240 #49)
+#231 := (or #240 #49 #151)
+#242 := [def-axiom]: #231
+#171 := [unit-resolution #242 #55]: #243
+#205 := [unit-resolution #171 #544]: #240
+[unit-resolution #205 #206]: false
+unsat
+40581b0e6cc161d835ae1db56e86336b57a7ee1b 81 0
+#2 := false
+decl f5 :: (-> S3 S2 S4)
+decl f3 :: S2
+#8 := f3
+decl f6 :: (-> S3 S2 S4 S3)
+decl f9 :: S4
+#14 := f9
+decl f4 :: S2
+#9 := f4
+decl f8 :: S4
+#12 := f8
+decl f7 :: S3
+#11 := f7
+#13 := (f6 f7 f3 f8)
+#15 := (f6 #13 f4 f9)
+#16 := (f5 #15 f3)
+#55 := (= f9 #16)
+#261 := (f5 #15 f4)
+#228 := (= #261 #16)
+#566 := (= #16 #261)
+#10 := (= f3 f4)
+#61 := (not #10)
+#62 := (or #61 #55)
+#67 := (not #62)
+#17 := (= #16 f9)
+#18 := (implies #10 #17)
+#19 := (not #18)
+#68 := (iff #19 #67)
+#65 := (iff #18 #62)
+#58 := (implies #10 #55)
+#63 := (iff #58 #62)
+#64 := [rewrite]: #63
+#59 := (iff #18 #58)
+#56 := (iff #17 #55)
+#57 := [rewrite]: #56
+#60 := [monotonicity #57]: #59
+#66 := [trans #60 #64]: #65
+#69 := [monotonicity #66]: #68
+#54 := [asserted]: #19
+#72 := [mp #54 #69]: #67
+#70 := [not-or-elim #72]: #10
+#227 := [monotonicity #70]: #566
+#229 := [symm #227]: #228
+#175 := (= f9 #261)
+#22 := (:var 0 S4)
+#21 := (:var 1 S2)
+#20 := (:var 2 S3)
+#23 := (f6 #20 #21 #22)
+#591 := (pattern #23)
+#24 := (f5 #23 #21)
+#75 := (= #22 #24)
+#593 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) (:pat #591) #75)
+#78 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) #75)
+#592 := (iff #78 #593)
+#595 := (iff #593 #593)
+#596 := [rewrite]: #595
+#594 := [rewrite]: #592
+#597 := [trans #594 #596]: #592
+#109 := (~ #78 #78)
+#107 := (~ #75 #75)
+#108 := [refl]: #107
+#110 := [nnf-pos #108]: #109
+#25 := (= #24 #22)
+#26 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) #25)
+#79 := (iff #26 #78)
+#76 := (iff #25 #75)
+#77 := [rewrite]: #76
+#80 := [quant-intro #77]: #79
+#74 := [asserted]: #26
+#83 := [mp #74 #80]: #78
+#101 := [mp~ #83 #110]: #78
+#598 := [mp #101 #597]: #593
+#262 := (not #593)
+#266 := (or #262 #175)
+#263 := [quant-inst]: #266
+#223 := [unit-resolution #263 #598]: #175
+#230 := [trans #223 #229]: #55
+#71 := (not #55)
+#73 := [not-or-elim #72]: #71
+[unit-resolution #73 #230]: false
+unsat
+7886f0fda259625a913921a1bd89d90840edec3d 111 0
 #2 := false
 decl f9 :: (-> S2 S3)
 decl f7 :: S2
@@ -51101,280 +51256,7 @@
 #66 := [not-or-elim #63]: #65
 [unit-resolution #66 #563]: false
 unsat
-c3052f64b6a04dd1c8c5afaf04fa56dc411bc19c 72 0
-#2 := false
-decl f6 :: (-> S3 S2 S4 S3)
-#23 := (:var 0 S4)
-#22 := (:var 1 S2)
-#21 := (:var 2 S3)
-#24 := (f6 #21 #22 #23)
-#591 := (pattern #24)
-decl f5 :: (-> S3 S2 S4)
-#25 := (f5 #24 #22)
-#75 := (= #23 #25)
-#593 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) (:pat #591) #75)
-#78 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) #75)
-#592 := (iff #78 #593)
-#595 := (iff #593 #593)
-#596 := [rewrite]: #595
-#594 := [rewrite]: #592
-#597 := [trans #594 #596]: #592
-#109 := (~ #78 #78)
-#107 := (~ #75 #75)
-#108 := [refl]: #107
-#110 := [nnf-pos #108]: #109
-#26 := (= #25 #23)
-#27 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) #26)
-#79 := (iff #27 #78)
-#76 := (iff #26 #75)
-#77 := [rewrite]: #76
-#80 := [quant-intro #77]: #79
-#74 := [asserted]: #27
-#83 := [mp #74 #80]: #78
-#101 := [mp~ #83 #110]: #78
-#598 := [mp #101 #597]: #593
-decl f4 :: S2
-#9 := f4
-decl f9 :: S4
-#15 := f9
-decl f8 :: S4
-#13 := f8
-decl f3 :: S2
-#8 := f3
-decl f7 :: S3
-#12 := f7
-#14 := (f6 f7 f3 f8)
-#16 := (f6 #14 f4 f9)
-#17 := (f5 #16 f4)
-#56 := (= f9 #17)
-#71 := (not #56)
-#10 := (= f3 f4)
-#62 := (or #10 #56)
-#67 := (not #62)
-#18 := (= #17 f9)
-#11 := (not #10)
-#19 := (implies #11 #18)
-#20 := (not #19)
-#68 := (iff #20 #67)
-#65 := (iff #19 #62)
-#59 := (implies #11 #56)
-#63 := (iff #59 #62)
-#64 := [rewrite]: #63
-#60 := (iff #19 #59)
-#57 := (iff #18 #56)
-#58 := [rewrite]: #57
-#61 := [monotonicity #58]: #60
-#66 := [trans #61 #64]: #65
-#69 := [monotonicity #66]: #68
-#55 := [asserted]: #20
-#72 := [mp #55 #69]: #67
-#73 := [not-or-elim #72]: #71
-#175 := (not #593)
-#264 := (or #175 #56)
-#265 := [quant-inst]: #264
-[unit-resolution #265 #73 #598]: false
-unsat
-2dd7e2139c57ac13e3558d5a7c2ee7d6b5a8a254 81 0
-#2 := false
-decl f5 :: (-> S3 S2 S4)
-decl f3 :: S2
-#8 := f3
-decl f6 :: (-> S3 S2 S4 S3)
-decl f9 :: S4
-#14 := f9
-decl f4 :: S2
-#9 := f4
-decl f8 :: S4
-#12 := f8
-decl f7 :: S3
-#11 := f7
-#13 := (f6 f7 f3 f8)
-#15 := (f6 #13 f4 f9)
-#16 := (f5 #15 f3)
-#55 := (= f9 #16)
-#261 := (f5 #15 f4)
-#228 := (= #261 #16)
-#566 := (= #16 #261)
-#10 := (= f3 f4)
-#61 := (not #10)
-#62 := (or #61 #55)
-#67 := (not #62)
-#17 := (= #16 f9)
-#18 := (implies #10 #17)
-#19 := (not #18)
-#68 := (iff #19 #67)
-#65 := (iff #18 #62)
-#58 := (implies #10 #55)
-#63 := (iff #58 #62)
-#64 := [rewrite]: #63
-#59 := (iff #18 #58)
-#56 := (iff #17 #55)
-#57 := [rewrite]: #56
-#60 := [monotonicity #57]: #59
-#66 := [trans #60 #64]: #65
-#69 := [monotonicity #66]: #68
-#54 := [asserted]: #19
-#72 := [mp #54 #69]: #67
-#70 := [not-or-elim #72]: #10
-#227 := [monotonicity #70]: #566
-#229 := [symm #227]: #228
-#175 := (= f9 #261)
-#22 := (:var 0 S4)
-#21 := (:var 1 S2)
-#20 := (:var 2 S3)
-#23 := (f6 #20 #21 #22)
-#591 := (pattern #23)
-#24 := (f5 #23 #21)
-#75 := (= #22 #24)
-#593 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) (:pat #591) #75)
-#78 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) #75)
-#592 := (iff #78 #593)
-#595 := (iff #593 #593)
-#596 := [rewrite]: #595
-#594 := [rewrite]: #592
-#597 := [trans #594 #596]: #592
-#109 := (~ #78 #78)
-#107 := (~ #75 #75)
-#108 := [refl]: #107
-#110 := [nnf-pos #108]: #109
-#25 := (= #24 #22)
-#26 := (forall (vars (?v0 S3) (?v1 S2) (?v2 S4)) #25)
-#79 := (iff #26 #78)
-#76 := (iff #25 #75)
-#77 := [rewrite]: #76
-#80 := [quant-intro #77]: #79
-#74 := [asserted]: #26
-#83 := [mp #74 #80]: #78
-#101 := [mp~ #83 #110]: #78
-#598 := [mp #101 #597]: #593
-#262 := (not #593)
-#266 := (or #262 #175)
-#263 := [quant-inst]: #266
-#223 := [unit-resolution #263 #598]: #175
-#230 := [trans #223 #229]: #55
-#71 := (not #55)
-#73 := [not-or-elim #72]: #71
-[unit-resolution #73 #230]: false
-unsat
-c992b1f07c8690f317843ec597ee745825b8d2b2 117 0
-#2 := false
-decl f6 :: (-> S3 S3 S2)
-decl f3 :: (-> S2 S3)
-decl f4 :: S2
-#8 := f4
-#9 := (f3 f4)
-decl f5 :: (-> S2 S3)
-#10 := (f5 f4)
-#12 := (f6 #10 #9)
-#13 := (= f4 #12)
-#349 := (f6 #9 #10)
-#550 := (= #349 #12)
-#549 := (= #12 #349)
-#11 := (= #9 #10)
-#243 := (f3 #12)
-#543 := (= #243 #10)
-#240 := (= #10 #243)
-#17 := (:var 0 S3)
-#16 := (:var 1 S3)
-#18 := (f6 #16 #17)
-#568 := (pattern #18)
-#19 := (f3 #18)
-#53 := (= #16 #19)
-#569 := (forall (vars (?v0 S3) (?v1 S3)) (:pat #568) #53)
-#57 := (forall (vars (?v0 S3) (?v1 S3)) #53)
-#572 := (iff #57 #569)
-#570 := (iff #53 #53)
-#571 := [refl]: #570
-#573 := [quant-intro #571]: #572
-#90 := (~ #57 #57)
-#88 := (~ #53 #53)
-#89 := [refl]: #88
-#91 := [nnf-pos #89]: #90
-#20 := (= #19 #16)
-#21 := (forall (vars (?v0 S3) (?v1 S3)) #20)
-#58 := (iff #21 #57)
-#55 := (iff #20 #53)
-#56 := [rewrite]: #55
-#59 := [quant-intro #56]: #58
-#52 := [asserted]: #21
-#62 := [mp #52 #59]: #57
-#80 := [mp~ #62 #91]: #57
-#574 := [mp #80 #573]: #569
-#560 := (not #569)
-#562 := (or #560 #240)
-#217 := [quant-inst]: #562
-#220 := [unit-resolution #217 #574]: #240
-#204 := [symm #220]: #543
-#559 := (= #9 #243)
-#558 := (= #243 #9)
-#557 := (= #12 f4)
-#48 := (not #11)
-#564 := [hypothesis]: #48
-#238 := (or #13 #11)
-#49 := (iff #13 #48)
-#14 := (iff #11 #13)
-#15 := (not #14)
-#50 := (iff #15 #49)
-#51 := [rewrite]: #50
-#47 := [asserted]: #15
-#54 := [mp #47 #51]: #49
-#150 := (not #49)
-#237 := (or #13 #11 #150)
-#151 := [def-axiom]: #237
-#152 := [unit-resolution #151 #54]: #238
-#565 := [unit-resolution #152 #564]: #13
-#215 := [symm #565]: #557
-#216 := [monotonicity #215]: #558
-#200 := [symm #216]: #559
-#205 := [trans #200 #204]: #11
-#206 := [unit-resolution #564 #205]: false
-#207 := [lemma #206]: #11
-#546 := (= #10 #9)
-#547 := [symm #207]: #546
-#544 := [monotonicity #547 #207]: #549
-#186 := [symm #544]: #550
-#556 := (= f4 #349)
-#25 := (:var 0 S2)
-#27 := (f5 #25)
-#582 := (pattern #27)
-#26 := (f3 #25)
-#581 := (pattern #26)
-#28 := (f6 #26 #27)
-#69 := (= #25 #28)
-#583 := (forall (vars (?v0 S2)) (:pat #581 #582) #69)
-#73 := (forall (vars (?v0 S2)) #69)
-#586 := (iff #73 #583)
-#584 := (iff #69 #69)
-#585 := [refl]: #584
-#587 := [quant-intro #585]: #586
-#84 := (~ #73 #73)
-#92 := (~ #69 #69)
-#93 := [refl]: #92
-#85 := [nnf-pos #93]: #84
-#29 := (= #28 #25)
-#30 := (forall (vars (?v0 S2)) #29)
-#74 := (iff #30 #73)
-#71 := (iff #29 #69)
-#72 := [rewrite]: #71
-#75 := [quant-intro #72]: #74
-#68 := [asserted]: #30
-#78 := [mp #68 #75]: #73
-#94 := [mp~ #78 #85]: #73
-#588 := [mp #94 #587]: #583
-#566 := (not #583)
-#561 := (or #566 #556)
-#567 := [quant-inst]: #561
-#548 := [unit-resolution #567 #588]: #556
-#551 := [trans #548 #186]: #13
-#239 := (not #13)
-#242 := (or #239 #48)
-#230 := (or #239 #48 #150)
-#241 := [def-axiom]: #230
-#170 := [unit-resolution #241 #54]: #242
-#545 := [unit-resolution #170 #207]: #239
-[unit-resolution #545 #551]: false
-unsat
-d43a3750252b86094159a0508ea79def7392e6da 187 0
+8cd68e8e260f2f18965c0617f7c8e0414cba4ea7 187 0
 #2 := false
 decl f6 :: (-> S3 S2 S4)
 decl f5 :: S2
@@ -51562,7 +51444,125 @@
 #67 := [not-or-elim #66]: #65
 [unit-resolution #67 #496]: false
 unsat
-d9c2fc1edc378ccb88037e9ae16a84f1542acb6f 31 0
+11ff498c93ee1972d946dfaaf38aec4ff91ae83c 117 0
+#2 := false
+decl f6 :: (-> S3 S3 S2)
+decl f3 :: (-> S2 S3)
+decl f4 :: S2
+#8 := f4
+#9 := (f3 f4)
+decl f5 :: (-> S2 S3)
+#10 := (f5 f4)
+#12 := (f6 #10 #9)
+#13 := (= f4 #12)
+#349 := (f6 #9 #10)
+#550 := (= #349 #12)
+#549 := (= #12 #349)
+#11 := (= #9 #10)
+#243 := (f3 #12)
+#543 := (= #243 #10)
+#240 := (= #10 #243)
+#17 := (:var 0 S3)
+#16 := (:var 1 S3)
+#18 := (f6 #16 #17)
+#568 := (pattern #18)
+#19 := (f3 #18)
+#53 := (= #16 #19)
+#569 := (forall (vars (?v0 S3) (?v1 S3)) (:pat #568) #53)
+#57 := (forall (vars (?v0 S3) (?v1 S3)) #53)
+#572 := (iff #57 #569)
+#570 := (iff #53 #53)
+#571 := [refl]: #570
+#573 := [quant-intro #571]: #572
+#90 := (~ #57 #57)
+#88 := (~ #53 #53)
+#89 := [refl]: #88
+#91 := [nnf-pos #89]: #90
+#20 := (= #19 #16)
+#21 := (forall (vars (?v0 S3) (?v1 S3)) #20)
+#58 := (iff #21 #57)
+#55 := (iff #20 #53)
+#56 := [rewrite]: #55
+#59 := [quant-intro #56]: #58
+#52 := [asserted]: #21
+#62 := [mp #52 #59]: #57
+#80 := [mp~ #62 #91]: #57
+#574 := [mp #80 #573]: #569
+#560 := (not #569)
+#562 := (or #560 #240)
+#217 := [quant-inst]: #562
+#220 := [unit-resolution #217 #574]: #240
+#204 := [symm #220]: #543
+#559 := (= #9 #243)
+#558 := (= #243 #9)
+#557 := (= #12 f4)
+#48 := (not #11)
+#564 := [hypothesis]: #48
+#238 := (or #13 #11)
+#49 := (iff #13 #48)
+#14 := (iff #11 #13)
+#15 := (not #14)
+#50 := (iff #15 #49)
+#51 := [rewrite]: #50
+#47 := [asserted]: #15
+#54 := [mp #47 #51]: #49
+#150 := (not #49)
+#237 := (or #13 #11 #150)
+#151 := [def-axiom]: #237
+#152 := [unit-resolution #151 #54]: #238
+#565 := [unit-resolution #152 #564]: #13
+#215 := [symm #565]: #557
+#216 := [monotonicity #215]: #558
+#200 := [symm #216]: #559
+#205 := [trans #200 #204]: #11
+#206 := [unit-resolution #564 #205]: false
+#207 := [lemma #206]: #11
+#546 := (= #10 #9)
+#547 := [symm #207]: #546
+#544 := [monotonicity #547 #207]: #549
+#186 := [symm #544]: #550
+#556 := (= f4 #349)
+#25 := (:var 0 S2)
+#27 := (f5 #25)
+#582 := (pattern #27)
+#26 := (f3 #25)
+#581 := (pattern #26)
+#28 := (f6 #26 #27)
+#69 := (= #25 #28)
+#583 := (forall (vars (?v0 S2)) (:pat #581 #582) #69)
+#73 := (forall (vars (?v0 S2)) #69)
+#586 := (iff #73 #583)
+#584 := (iff #69 #69)
+#585 := [refl]: #584
+#587 := [quant-intro #585]: #586
+#84 := (~ #73 #73)
+#92 := (~ #69 #69)
+#93 := [refl]: #92
+#85 := [nnf-pos #93]: #84
+#29 := (= #28 #25)
+#30 := (forall (vars (?v0 S2)) #29)
+#74 := (iff #30 #73)
+#71 := (iff #29 #69)
+#72 := [rewrite]: #71
+#75 := [quant-intro #72]: #74
+#68 := [asserted]: #30
+#78 := [mp #68 #75]: #73
+#94 := [mp~ #78 #85]: #73
+#588 := [mp #94 #587]: #583
+#566 := (not #583)
+#561 := (or #566 #556)
+#567 := [quant-inst]: #561
+#548 := [unit-resolution #567 #588]: #556
+#551 := [trans #548 #186]: #13
+#239 := (not #13)
+#242 := (or #239 #48)
+#230 := (or #239 #48 #150)
+#241 := [def-axiom]: #230
+#170 := [unit-resolution #241 #54]: #242
+#545 := [unit-resolution #170 #207]: #239
+[unit-resolution #545 #551]: false
+unsat
+4cd366e11e92a3096da693a1c949e0a0235771e1 31 0
 #2 := false
 decl f1 :: S1
 #4 := f1
@@ -51594,7 +51594,7 @@
 #62 := [asserted]: #12
 [mp #62 #79]: false
 unsat
-3df517f77a8847ec580730167b0937b5bdc9f32c 58 0
+862ca11132e978d4725394191af361fe43022f5f 58 0
 #2 := false
 decl f3 :: (-> S2 S1)
 #13 := (:var 0 S2)
@@ -51653,7 +51653,7 @@
 #247 := [quant-inst]: #333
 [unit-resolution #247 #78 #667]: false
 unsat
-1b877eab526e97351cb862fc0b9910541c0a7e4b 46 0
+889c897f95d38c70626926b88d4e65240961bf38 46 0
 #2 := false
 decl f3 :: (-> S2 S1)
 #17 := (:var 0 S2)
@@ -51700,7 +51700,7 @@
 #239 := [quant-inst]: #325
 [unit-resolution #239 #70 #666]: false
 unsat
-9cf9419534c29ea2783ed62db9d7dac14034c845 119 0
+f03c0d076b09a28f063ddbca092a33b823afb804 119 0
 #2 := false
 decl f3 :: (-> S2 S2 S3 S1)
 decl f6 :: S3
@@ -51820,7 +51820,7 @@
 #320 := [unit-resolution #678 #329]: #319
 [unit-resolution #320 #318 #317]: false
 unsat
-db4d005483a981015636afecf4abdbe3eecdc540 154 0
+a6efe1b3687d3cc17ba5ea65fa9b7033b64122bf 154 0
 #2 := false
 decl f7 :: (-> S2 S3 S1)
 decl f6 :: S3
@@ -51975,7 +51975,7 @@
 #289 := [quant-inst]: #651
 [unit-resolution #289 #675 #294]: false
 unsat
-01e84163a16924ffd8e379badcb76f97c88eb8e1 128 0
+d1421e190f987aeaec441d0daf9b02a2f258566f 128 0
 #2 := false
 decl f8 :: (-> S2 S3 S1)
 decl f6 :: S3
@@ -52104,7 +52104,7 @@
 #630 := [quant-inst]: #635
 [unit-resolution #630 #667 #637]: false
 unsat
-db25ac5ac3d60bebb553d3f6b343562b94a56253 146 0
+db52b16fae67253deaefead0db41a82bcf2ebe59 146 0
 #2 := false
 decl f3 :: (-> S2 S2 S3 S1)
 decl f6 :: S3
@@ -52251,7 +52251,7 @@
 #632 := [unit-resolution #661 #642]: #635
 [unit-resolution #632 #631 #633]: false
 unsat
-9033d495190da4d9088c43145881d91ed9687495 121 0
+8f02554bbb40e6658b09b0c2823ecea18b08c91d 121 0
 #2 := false
 decl f3 :: (-> S2 S2 S3 S1)
 decl f5 :: S3
@@ -52373,7 +52373,7 @@
 #650 := [unit-resolution #323 #308]: #649
 [unit-resolution #650 #648 #647]: false
 unsat
-d24feed52b94afbe0c3926c41e67eb725f57798d 258 0
+2736190123a7d967c1298876eb9c2dad86e52b59 258 0
 #2 := false
 decl f3 :: (-> S2 S3 S1)
 decl f8 :: S3
@@ -52632,7 +52632,7 @@
 #585 := [def-axiom]: #575
 [unit-resolution #585 #539 #546 #581]: false
 unsat
-5b1f4025c8afe3b7c1a0fb50a6e0140ed51756ba 153 0
+eaeae96294c9f1d454cc1537d34925d3b42674d8 153 0
 #2 := false
 decl f7 :: (-> S2 S3 S1)
 decl f6 :: S3
@@ -52786,7 +52786,7 @@
 #339 := [unit-resolution #692 #689]: #338
 [unit-resolution #339 #337 #674]: false
 unsat
-14e5476f4f3857f931521140926538df69a7900f 141 0
+95f397b9920f2327707ec91629a09aa96ab88f3c 141 0
 #2 := false
 decl f7 :: (-> S2 S3 S1)
 decl f6 :: S3
@@ -52928,7 +52928,7 @@
 #312 := [quant-inst]: #652
 [unit-resolution #312 #668 #637]: false
 unsat
-17d0e6f19e122ea3db2aaeed6f9623f5ae4eb5b6 165 0
+7a53c3d1a097c7a7e4616fc3acc808abc59f3a4b 165 0
 #2 := false
 decl f7 :: (-> S2 S3 S1)
 decl f6 :: S3
@@ -53094,7 +53094,7 @@
 #665 := [def-axiom]: #664
 [unit-resolution #665 #655 #654]: false
 unsat
-8c5227e6af822f9c7c2a140803c4af49bcf24bcb 164 0
+f3ecd39108ba2067a1db25179cee7d64804b1fdb 164 0
 #2 := false
 decl f3 :: (-> S2 S2 S3 S1)
 decl f6 :: S3
@@ -53259,7 +53259,7 @@
 #626 := [unit-resolution #290 #354]: #625
 [unit-resolution #626 #636 #631]: false
 unsat
-8156155a61a8ea554dc6bef7e96703a3d13ceb5f 142 0
+f5598d5da2ef327dfa5f6213aebc49b5a19fb777 142 0
 #2 := false
 decl f3 :: (-> S2 S2 S3 S1)
 decl f5 :: S3
@@ -53402,7 +53402,7 @@
 #655 := [unit-resolution #309 #645]: #295
 [unit-resolution #655 #294 #654]: false
 unsat
-f0bdfff0ca207ce8dcf7aafa0f5fd49080a4003e 279 0
+11da52e001c270ce301b6d7c5a73bedb29349752 279 0
 #2 := false
 decl f3 :: (-> S2 S3 S1)
 decl f8 :: S3
@@ -53682,7 +53682,7 @@
 #580 := [def-axiom]: #579
 [unit-resolution #580 #526 #543 #572]: false
 unsat
-0166ab8a0d2c326b9fbcb4a04b09f2f360525618 18 0
+b948f53222b56a42099bea7be09fe4963a5cfdb3 18 0
 #2 := false
 decl f3 :: S2
 #8 := f3
--- a/src/HOL/SMT_Examples/SMT_Word_Examples.certs	Wed Nov 03 15:56:15 2010 +0100
+++ b/src/HOL/SMT_Examples/SMT_Word_Examples.certs	Wed Nov 03 17:11:40 2010 +0100
@@ -1,50 +1,50 @@
-46235d1f6a4388f12c18d3d18eaed2d6ab3523e2 1 0
+e1bd9b09ecc046c90fa67ab56ab4bc91c2137e7c 1 0
 unsat
-2989011a3b771bf7eab17217929d76db371db55a 1 0
+b0b514fa1c40f2df103dbe4bab9d6ee5e8e38622 1 0
 unsat
-4d462cfbec6db35b16a67293eb04373a3a11cb44 1 0
+4a2f9858de3b5f966f7cfe668d50b9fdbdccc28f 1 0
 unsat
-32e799a4f02a8bf85378e2558d647d6e6e7e4116 1 0
+b403fe5b6096d56ba2e1efb5889c116ad939fb9a 1 0
 unsat
-ea8ec671ee4ec9ca44eadb130212b55542ad3c72 1 0
+07197240befc69475d497a3deb0cd58a7dc5035a 1 0
 unsat
-0b22b7d406250c007b69daac26169211cece6e5e 1 0
+19797ddd09fac50784f91151252f6cbfe61e45fe 1 0
 unsat
-6f37bd70504a10f1a5bd56b5d3031a3658eef94d 1 0
+aae95453d4c2d67c25587bad0e870093008f21c8 1 0
 unsat
-12d0a7828bda723d340f377f770b153b4828c723 1 0
+586fe9c93d5a4634c21e336a3f011bf667295f8d 1 0
 unsat
-42a5347bcc64f0fc5e7773f929e8b7e6d96e73d0 1 0
+2de49ccadae9ad983581b90d74323c219d328a06 1 0
 unsat
-a42bcf18394af94f8cc8ab8ce877ec1e88c84c2b 1 0
+7c0a6866bb2417256d44d53c9d7cc8aa1afea73b 1 0
 unsat
-e3c0ae35ad656751b98714cf4a7bf8c152a73c5b 1 0
+00738aadb1b8c4a3738b0d9345151d9314628cdb 1 0
 unsat
-471cc482e74eb56062a56eeeedc0a1257f6bda33 1 0
+cfe59e32fdada7e2400e8a4a36a9a1c57b6e6943 1 0
 unsat
-122224697bc7ce7440727f7345bc6c4718983ebf 1 0
+0c1a115ce11f64d84848e4e43f8f568ca009da60 1 0
 unsat
-ff841f21b338943202778802235f8b185af9f926 1 0
+e6fc30fe7a455e14f6da307ba6450d7a3ee50441 1 0
 unsat
-d53ed3b2dea404bbf4cc3cdde4855f8f002b1ced 1 0
+94dd0007678a5ab7d0ca74a327a14670df6381ad 1 0
 unsat
-6f80ff315644370e76762c9594cc0408fb226af7 1 0
+6de5148ae90599cea51776126a320aa18e44b930 1 0
 unsat
-9354d8e43f3fcfb65d935d9c042aa4eb28fa8c7f 1 0
+7b557ca70d803069d3ec0841f7b2f90180f7632c 1 0
 unsat
-ea68ff6144ab104762c1ca59e4571d4c481712f2 1 0
+04ec8bbf4ad5ec6998df2648b8f7d5128b689a93 1 0
 unsat
-7ec887bf8cbac8fcbb5ed1a9fdcd99b2e709a6ec 1 0
+e82e83431339e5060426d14b5f9b33f0e35290ef 1 0
 unsat
-5005c7113901a2b2f31bdfbbc6192115a80e6a9f 1 0
+748ebe13985717efeb5cfe13eebe2535d37f2be9 1 0
 unsat
-9c31a94edb0c85615a8598ba1cd1036b5072b34f 1 0
+ba350e495fbbfb8ca8ba84ce8ea5cf5cfcb78c88 1 0
 unsat
-68c40f37bd410a9b4b24ab0f6e3e9dcc5159144c 1 0
+2e23d2adc09e970979a04c100cda2e246c4be751 1 0
 unsat
-833f259a7dd52b3dddfc285b647a432c0daf13c1 1 0
+13c805fce739c689f74923066ed5467cbe271049 1 0
 unsat
-7d5a71ba893f865044699426792a024fe1612235 1 0
+9272ca3409998794083865eb22a5af989a22bbdd 1 0
 unsat
-6adbd17723088c30f1d1f0f07e1e4df2076a51b2 1 0
+158ebeaaae2e81911b4f0b18392fa55af050541c 1 0
 unsat
--- a/src/HOL/Tools/SMT/smt_solver.ML	Wed Nov 03 15:56:15 2010 +0100
+++ b/src/HOL/Tools/SMT/smt_solver.ML	Wed Nov 03 17:11:40 2010 +0100
@@ -35,7 +35,7 @@
   val filter_only: bool Config.T
   val datatypes: bool Config.T
   val keep_assms: bool Config.T
-  val timeout: int Config.T
+  val timeout: real Config.T
   val with_timeout: Proof.context -> ('a -> 'b) -> 'a -> 'b
   val traceN: string
   val trace: bool Config.T
@@ -127,10 +127,10 @@
 val (keep_assms, setup_keep_assms) =
   Attrib.config_bool "smt_keep_assms" (K true)
 
-val (timeout, setup_timeout) = Attrib.config_int "smt_timeout" (K 30)
+val (timeout, setup_timeout) = Attrib.config_real "smt_timeout" (K 30.0)
 
 fun with_timeout ctxt f x =
-  TimeLimit.timeLimit (Time.fromSeconds (Config.get ctxt timeout)) f x
+  TimeLimit.timeLimit (seconds (Config.get ctxt timeout)) f x
   handle TimeLimit.TimeOut => raise SMT Time_Out
 
 val traceN = "smt_trace"
@@ -252,7 +252,7 @@
   let
     val args = more_opts @ options ctxt
     val comments = ("solver: " ^ name) ::
-      ("timeout: " ^ string_of_int (Config.get ctxt timeout)) ::
+      ("timeout: " ^ Time.toString (seconds (Config.get ctxt timeout))) ::
       "arguments:" :: args
   in
     irules
@@ -433,7 +433,7 @@
     val {facts, goal, ...} = Proof.goal st
     val ctxt =
       Proof.context_of st
-      |> Config.put timeout (Time.toSeconds time_limit)
+      |> Config.put timeout (Real.fromInt (Time.toSeconds time_limit))
       |> Config.put oracle false
       |> Config.put filter_only true
       |> Config.put keep_assms false
@@ -504,7 +504,7 @@
 
 fun print_setup context =
   let
-    val t = string_of_int (Config.get_generic context timeout)
+    val t = Time.toString (seconds (Config.get_generic context timeout))
     val names = sort_strings (all_solver_names_of context)
     val ns = if null names then [no_solver] else names
     val n = solver_name_of context