src/HOL/Boogie/Examples/cert/VCC_maximum
changeset 33893 24b648ea4834
parent 33663 a84fd6385832
child 34068 a78307d72e58
--- a/src/HOL/Boogie/Examples/cert/VCC_maximum	Tue Nov 24 18:36:18 2009 +0100
+++ b/src/HOL/Boogie/Examples/cert/VCC_maximum	Wed Nov 25 12:28:29 2009 +0100
@@ -41,7 +41,7 @@
   (uf_20 T4 T9)
   (uf_139 T3 Int)
   (uf_5 T3)
-  (uf_291 T1)
+  (uf_273 T1)
   (uf_79 Int Int)
   (uf_207 T4 T4 T5 T5 T2)
   (uf_259 T3 T3 T3)
@@ -50,7 +50,7 @@
   (uf_59 T4 T13)
   (uf_258 T3)
   (uf_240 T3)
-  (uf_284 T16)
+  (uf_282 T16)
   (uf_96 Int)
   (uf_93 Int)
   (uf_89 Int)
@@ -71,9 +71,9 @@
   (uf_15 T5 T6 T2)
   (uf_135 T14 T5)
   (uf_37 T3)
+  (uf_280 T1)
   (uf_279 T1)
-  (uf_281 T1)
-  (uf_287 T1)
+  (uf_277 T1)
   (uf_122 T2 T2)
   (uf_12 T3 T8)
   (uf_114 T4 T5 Int)
@@ -139,10 +139,10 @@
   (uf_192 T7 T6)
   (uf_219 T3)
   (uf_268 T3)
-  (uf_289 T1)
+  (uf_275 T1)
   (uf_132 T5 T3 Int T6)
   (uf_138 T5 T5 T2)
-  (uf_276 T19 Int)
+  (uf_289 T19 Int)
   (uf_130 T5 T6)
   (uf_44 T4 T2)
   (uf_261 T8)
@@ -176,7 +176,7 @@
   (uf_39 T11 Int)
   (uf_217 T11 Int)
   (uf_68 T4 T5 T2)
-  (uf_275 T1)
+  (uf_281 T1)
   (uf_134 T5 T3 Int T6)
   (uf_189 T5 T7)
   (uf_140 T5 T3 T5)
@@ -186,23 +186,23 @@
   (uf_162 T4 T5 T6)
   (uf_233 T18 Int)
   (uf_256 T3)
-  (uf_286 T1)
-  (uf_288 T1)
-  (uf_295 T1)
-  (uf_290 T1)
-  (uf_301 T1)
+  (uf_278 T1)
+  (uf_276 T1)
+  (uf_272 T1)
+  (uf_274 T1)
+  (uf_271 T1)
   (uf_243 T15 T15)
   (uf_244 T15 Int)
   (uf_45 T4 T5 T2)
   (uf_203 T4 T2)
   (uf_148 T5 T2)
-  (uf_283 Int T5 T2)
+  (uf_294 Int T5 T2)
   (uf_57 T3 T2)
   (uf_263 T8)
   (uf_14 T8)
   (uf_156 T6 T6 T6)
-  (uf_306 T1)
-  (uf_302 T1)
+  (uf_269 T1)
+  (uf_270 T1)
   (uf_178 T4 T4 T2)
   (uf_183 T10 T5 Int)
   (uf_62 Int Int)
@@ -245,7 +245,7 @@
   (uf_252 T3)
   (uf_64 Int Int T5)
   (uf_98 Int Int Int Int Int)
-  (uf_277 Int)
+  (uf_290 Int)
   (uf_164 T4 T2)
   (uf_21 T4 T4 T6 T2)
   (uf_115 T5 T5 Int)
@@ -267,25 +267,25 @@
   (uf_2 T1)
   (uf_190 T15 T2)
   (uf_194 T15 Int T3 T2)
-  (uf_273 T4)
-  (uf_270 Int)
-  (uf_294 Int)
-  (uf_305 Int)
-  (uf_297 Int)
-  (uf_269 Int)
-  (uf_274 Int)
-  (uf_272 Int)
+  (uf_287 T4)
+  (uf_284 Int)
+  (uf_298 Int)
+  (uf_306 Int)
+  (uf_300 Int)
+  (uf_283 Int)
+  (uf_288 Int)
+  (uf_286 Int)
+  (uf_295 Int)
+  (uf_296 Int)
+  (uf_303 Int)
+  (uf_304 Int)
+  (uf_299 Int)
+  (uf_302 Int)
   (uf_285 Int)
-  (uf_292 Int)
-  (uf_300 Int)
-  (uf_303 Int)
-  (uf_296 Int)
-  (uf_299 Int)
-  (uf_271 Int)
-  (uf_282 Int)
   (uf_293 Int)
-  (uf_304 Int)
-  (uf_298 Int)
+  (uf_297 Int)
+  (uf_305 Int)
+  (uf_301 Int)
  )
 :extrapreds (
   (up_199 T4 T5 T16)
@@ -302,10 +302,10 @@
   (up_242 T15)
   (up_216)
   (up_193 T2)
-  (up_278 T4 T1 T1 Int T3)
+  (up_291 T4 T1 T1 Int T3)
   (up_52 T6)
   (up_67 T14)
-  (up_280 T4 T1 T1 T5 T3)
+  (up_292 T4 T1 T1 T5 T3)
   (up_197 T3)
   (up_165 T4)
   (up_205 T4 T4 T5 T3)
@@ -682,6 +682,11 @@
 :assumption (= (uf_139 uf_87) 4)
 :assumption (= (uf_139 uf_90) 2)
 :assumption (= (uf_139 uf_94) 1)
-:assumption (not (implies true (implies (and (<= 0 uf_269) (<= uf_269 uf_78)) (implies (and (<= 0 uf_270) (<= uf_270 uf_76)) (implies (and (<= 0 uf_271) (<= uf_271 uf_76)) (implies (< uf_272 1099511627776) (implies (< 0 uf_272) (implies (and (= (uf_27 uf_273 (uf_43 (uf_124 uf_7 uf_272) (uf_116 (uf_43 uf_7 uf_274)))) uf_9) (and (= (uf_25 uf_273 (uf_43 (uf_124 uf_7 uf_272) (uf_116 (uf_43 uf_7 uf_274)))) uf_26) (and (= (uf_48 (uf_43 (uf_124 uf_7 uf_272) (uf_116 (uf_43 uf_7 uf_274))) (uf_124 uf_7 uf_272)) uf_9) (and (= (uf_24 uf_273 (uf_43 (uf_124 uf_7 uf_272) (uf_116 (uf_43 uf_7 uf_274)))) uf_9) (and (not (= (uf_12 (uf_124 uf_7 uf_272)) uf_14)) (= (uf_23 (uf_124 uf_7 uf_272)) uf_9)))))) (implies true (implies (= (uf_203 uf_273) uf_9) (implies (and (= (uf_202 uf_275 uf_273) uf_9) (= (uf_55 uf_273) uf_9)) (implies (forall (?x771 T19) (< (uf_276 ?x771) uf_277) :pat { (uf_276 ?x771) }) (implies (and (up_278 uf_273 uf_275 uf_279 (uf_29 (uf_43 uf_7 uf_274)) (uf_6 uf_7)) (up_280 uf_273 uf_275 uf_279 (uf_43 uf_7 uf_274) (uf_6 uf_7))) (implies (up_278 uf_273 uf_275 uf_281 uf_272 uf_4) (implies (= uf_282 (uf_173 uf_273)) (implies (forall (?x772 T5) (iff (= (uf_283 uf_282 ?x772) uf_9) false) :pat { (uf_283 uf_282 ?x772) }) (implies (and (<= 0 uf_272) (<= uf_272 uf_76)) (and (= (uf_200 uf_273 (uf_43 (uf_124 uf_7 uf_272) (uf_116 (uf_43 uf_7 uf_274))) (uf_43 (uf_124 uf_7 uf_272) (uf_116 (uf_43 uf_7 uf_274))) uf_284) uf_9) (implies (= (uf_200 uf_273 (uf_43 (uf_124 uf_7 uf_272) (uf_116 (uf_43 uf_7 uf_274))) (uf_43 (uf_124 uf_7 uf_272) (uf_116 (uf_43 uf_7 uf_274))) uf_284) uf_9) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) 0 uf_7) uf_7) uf_9) (= (uf_24 uf_273 (uf_66 (uf_43 uf_7 uf_274) 0 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) 0 uf_7) uf_7) uf_9) (= (uf_24 uf_273 (uf_66 (uf_43 uf_7 uf_274) 0 uf_7)) uf_9)) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) 0 uf_7) uf_7) uf_9) (= (uf_68 uf_273 (uf_66 (uf_43 uf_7 uf_274) 0 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) 0 uf_7) uf_7) uf_9) (= (uf_68 uf_273 (uf_66 (uf_43 uf_7 uf_274) 0 uf_7)) uf_9)) (implies (= uf_285 (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) 0 uf_7))) (implies (up_278 uf_273 uf_286 uf_287 uf_285 uf_7) (implies (up_278 uf_273 uf_288 uf_289 0 uf_4) (implies (up_278 uf_273 uf_290 uf_291 1 uf_4) (implies (and (<= 1 1) (and (<= 1 1) (and (<= 0 0) (<= 0 0)))) (and (<= 1 uf_272) (implies (<= 1 uf_272) (and (forall (?x773 Int) (implies (and (<= 0 ?x773) (<= ?x773 uf_76)) (implies (< ?x773 1) (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x773 uf_7)) uf_285)))) (implies (forall (?x774 Int) (implies (and (<= 0 ?x774) (<= ?x774 uf_76)) (implies (< ?x774 1) (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x774 uf_7)) uf_285)))) (and (and (< 0 uf_272) (= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) 0 uf_7)) uf_285)) (implies (and (< 0 uf_272) (= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) 0 uf_7)) uf_285)) (implies true (implies (and (<= 0 uf_292) (<= uf_292 uf_78)) (implies (and (<= 0 uf_293) (<= uf_293 uf_76)) (implies (and (<= 0 uf_294) (<= uf_294 uf_76)) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (<= uf_294 uf_272) (implies (forall (?x775 Int) (implies (and (<= 0 ?x775) (<= ?x775 uf_76)) (implies (< ?x775 uf_294) (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x775 uf_7)) uf_292)))) (implies (and (< uf_293 uf_272) (= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_293 uf_7)) uf_292)) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (and (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (not true) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (and (= (uf_202 uf_295 uf_273) uf_9) (= (uf_55 uf_273) uf_9)) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (and up_216 (implies up_216 (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (= uf_296 uf_292) (implies (= uf_297 uf_294) (implies (= uf_298 uf_293) (implies (= uf_299 uf_292) (implies true (and (forall (?x776 Int) (implies (and (<= 0 ?x776) (<= ?x776 uf_76)) (implies (< ?x776 uf_272) (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x776 uf_7)) uf_299)))) (implies (forall (?x777 Int) (implies (and (<= 0 ?x777) (<= ?x777 uf_76)) (implies (< ?x777 uf_272) (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x777 uf_7)) uf_299)))) (and (exists (?x778 Int) (and (<= 0 ?x778) (and (<= ?x778 uf_76) (and (< ?x778 uf_272) (= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x778 uf_7)) uf_299))))) (implies (exists (?x779 Int) (and (<= 0 ?x779) (and (<= ?x779 uf_76) (and (< ?x779 uf_272) (= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x779 uf_7)) uf_299))))) true)))))))))))))))))))))))))) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (and (forall (?x780 T5) (implies (not (= (uf_12 (uf_13 (uf_25 uf_273 ?x780))) uf_261)) (not (= (uf_12 (uf_13 (uf_25 uf_273 ?x780))) uf_261))) :pat { (uf_40 (uf_41 uf_273) ?x780) }) (and (forall (?x781 T5) (implies (= (uf_68 uf_273 ?x781) uf_9) (and (= (uf_19 (uf_20 uf_273) ?x781) (uf_19 (uf_20 uf_273) ?x781)) (= (uf_68 uf_273 ?x781) uf_9))) :pat { (uf_19 (uf_20 uf_273) ?x781) }) (and (forall (?x782 T5) (implies (= (uf_68 uf_273 ?x782) uf_9) (and (= (uf_40 (uf_41 uf_273) ?x782) (uf_40 (uf_41 uf_273) ?x782)) (= (uf_68 uf_273 ?x782) uf_9))) :pat { (uf_40 (uf_41 uf_273) ?x782) }) (and (forall (?x783 T5) (implies (= (uf_68 uf_273 ?x783) uf_9) (and (= (uf_58 (uf_59 uf_273) ?x783) (uf_58 (uf_59 uf_273) ?x783)) (= (uf_68 uf_273 ?x783) uf_9))) :pat { (uf_58 (uf_59 uf_273) ?x783) }) (and (<= (uf_173 uf_273) (uf_173 uf_273)) (and (forall (?x784 T5) (<= (uf_172 uf_273 ?x784) (uf_172 uf_273 ?x784)) :pat { (uf_172 uf_273 ?x784) }) (= (uf_178 uf_273 uf_273) uf_9))))))) (implies (and (<= (uf_173 uf_273) (uf_173 uf_273)) (and (forall (?x785 T5) (<= (uf_172 uf_273 ?x785) (uf_172 uf_273 ?x785)) :pat { (uf_172 uf_273 ?x785) }) (= (uf_178 uf_273 uf_273) uf_9))) (implies (and (= (uf_202 uf_295 uf_273) uf_9) (= (uf_55 uf_273) uf_9)) (implies (up_278 uf_273 uf_295 uf_291 uf_294 uf_4) (implies (up_278 uf_273 uf_295 uf_289 uf_293 uf_4) (implies (up_278 uf_273 uf_295 uf_287 uf_292 uf_7) (implies (up_278 uf_273 uf_295 uf_281 uf_272 uf_4) (implies (and (up_278 uf_273 uf_295 uf_279 (uf_29 (uf_43 uf_7 uf_274)) (uf_6 uf_7)) (up_280 uf_273 uf_295 uf_279 (uf_43 uf_7 uf_274) (uf_6 uf_7))) (implies (and (= (uf_59 uf_273) (uf_59 uf_273)) (= (uf_41 uf_273) (uf_41 uf_273))) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (and (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (< uf_294 uf_272) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7) uf_7) uf_9) (= (uf_24 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7) uf_7) uf_9) (= (uf_24 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7)) uf_9)) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7) uf_7) uf_9) (= (uf_68 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7) uf_7) uf_9) (= (uf_68 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7)) uf_9)) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (and (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (< uf_292 (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7))) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7) uf_7) uf_9) (= (uf_24 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7) uf_7) uf_9) (= (uf_24 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7)) uf_9)) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7) uf_7) uf_9) (= (uf_68 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7) uf_7) uf_9) (= (uf_68 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7)) uf_9)) (implies (= uf_300 (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7))) (implies (up_278 uf_273 uf_301 uf_287 uf_300 uf_7) (implies (up_278 uf_273 uf_302 uf_289 uf_294 uf_4) (implies (and (<= 1 uf_294) (<= 1 uf_294)) (implies true (implies (= uf_303 uf_300) (implies (= uf_304 uf_294) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_304)) (and (and (<= 0 (+ uf_294 1)) (<= (+ uf_294 1) uf_76)) (implies (and (<= 0 (+ uf_294 1)) (<= (+ uf_294 1) uf_76)) (implies (= uf_305 (+ uf_294 1)) (implies (up_278 uf_273 uf_306 uf_291 uf_305 uf_4) (implies (and (<= 2 uf_305) (<= 0 uf_304)) (implies true (and (<= uf_305 uf_272) (implies (<= uf_305 uf_272) (and (forall (?x786 Int) (implies (and (<= 0 ?x786) (<= ?x786 uf_76)) (implies (< ?x786 uf_305) (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x786 uf_7)) uf_303)))) (implies (forall (?x787 Int) (implies (and (<= 0 ?x787) (<= ?x787 uf_76)) (implies (< ?x787 uf_305) (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x787 uf_7)) uf_303)))) (and (and (< uf_304 uf_272) (= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_304 uf_7)) uf_303)) (implies (and (< uf_304 uf_272) (= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_304 uf_7)) uf_303)) (implies false true)))))))))))))))))))))))))))))))) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_294 uf_7)) uf_292) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (= uf_303 uf_292) (implies (= uf_304 uf_293) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_304)) (and (and (<= 0 (+ uf_294 1)) (<= (+ uf_294 1) uf_76)) (implies (and (<= 0 (+ uf_294 1)) (<= (+ uf_294 1) uf_76)) (implies (= uf_305 (+ uf_294 1)) (implies (up_278 uf_273 uf_306 uf_291 uf_305 uf_4) (implies (and (<= 2 uf_305) (<= 0 uf_304)) (implies true (and (<= uf_305 uf_272) (implies (<= uf_305 uf_272) (and (forall (?x788 Int) (implies (and (<= 0 ?x788) (<= ?x788 uf_76)) (implies (< ?x788 uf_305) (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x788 uf_7)) uf_303)))) (implies (forall (?x789 Int) (implies (and (<= 0 ?x789) (<= ?x789 uf_76)) (implies (< ?x789 uf_305) (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x789 uf_7)) uf_303)))) (and (and (< uf_304 uf_272) (= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_304 uf_7)) uf_303)) (implies (and (< uf_304 uf_272) (= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) uf_304 uf_7)) uf_303)) (implies false true))))))))))))))))))))))))))))))))))))) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (<= uf_272 uf_294) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (and up_216 (implies up_216 (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies (and (<= 1 uf_294) (<= 0 uf_293)) (implies true (implies (= uf_296 uf_292) (implies (= uf_297 uf_294) (implies (= uf_298 uf_293) (implies (= uf_299 uf_292) (implies true (and (forall (?x790 Int) (implies (and (<= 0 ?x790) (<= ?x790 uf_76)) (implies (< ?x790 uf_272) (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x790 uf_7)) uf_299)))) (implies (forall (?x791 Int) (implies (and (<= 0 ?x791) (<= ?x791 uf_76)) (implies (< ?x791 uf_272) (<= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x791 uf_7)) uf_299)))) (and (exists (?x792 Int) (and (<= 0 ?x792) (and (<= ?x792 uf_76) (and (< ?x792 uf_272) (= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x792 uf_7)) uf_299))))) (implies (exists (?x793 Int) (and (<= 0 ?x793) (and (<= ?x793 uf_76) (and (< ?x793 uf_272) (= (uf_110 uf_273 (uf_66 (uf_43 uf_7 uf_274) ?x793 uf_7)) uf_299))))) true))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
+:assumption (distinct uf_269 uf_270 uf_271 uf_272 uf_273 uf_274 uf_275 uf_276 uf_277 uf_278 uf_279 uf_280 uf_281 uf_2)
+:assumption (distinct uf_94 uf_90 uf_87 uf_83 uf_7 uf_91 uf_4 uf_84 uf_240 uf_258 uf_255 uf_254 uf_37 uf_267 uf_257 uf_252 uf_219 uf_256 uf_268 uf_166 uf_5)
+:assumption (distinct uf_282)
+:assumption (distinct uf_42)
+:assumption (distinct uf_263 uf_14 uf_262 uf_261)
+:assumption (not (implies true (implies (and (<= 0 uf_283) (<= uf_283 uf_78)) (implies (and (<= 0 uf_284) (<= uf_284 uf_76)) (implies (and (<= 0 uf_285) (<= uf_285 uf_76)) (implies (< uf_286 1099511627776) (implies (< 0 uf_286) (implies (and (= (uf_27 uf_287 (uf_43 (uf_124 uf_7 uf_286) (uf_116 (uf_43 uf_7 uf_288)))) uf_9) (and (= (uf_25 uf_287 (uf_43 (uf_124 uf_7 uf_286) (uf_116 (uf_43 uf_7 uf_288)))) uf_26) (and (= (uf_48 (uf_43 (uf_124 uf_7 uf_286) (uf_116 (uf_43 uf_7 uf_288))) (uf_124 uf_7 uf_286)) uf_9) (and (= (uf_24 uf_287 (uf_43 (uf_124 uf_7 uf_286) (uf_116 (uf_43 uf_7 uf_288)))) uf_9) (and (not (= (uf_12 (uf_124 uf_7 uf_286)) uf_14)) (= (uf_23 (uf_124 uf_7 uf_286)) uf_9)))))) (implies true (implies (= (uf_203 uf_287) uf_9) (implies (and (= (uf_202 uf_281 uf_287) uf_9) (= (uf_55 uf_287) uf_9)) (implies (forall (?x771 T19) (< (uf_289 ?x771) uf_290) :pat { (uf_289 ?x771) }) (implies (and (up_291 uf_287 uf_281 uf_280 (uf_29 (uf_43 uf_7 uf_288)) (uf_6 uf_7)) (up_292 uf_287 uf_281 uf_280 (uf_43 uf_7 uf_288) (uf_6 uf_7))) (implies (up_291 uf_287 uf_281 uf_279 uf_286 uf_4) (implies (= uf_293 (uf_173 uf_287)) (implies (forall (?x772 T5) (iff (= (uf_294 uf_293 ?x772) uf_9) false) :pat { (uf_294 uf_293 ?x772) }) (implies (and (<= 0 uf_286) (<= uf_286 uf_76)) (and (= (uf_200 uf_287 (uf_43 (uf_124 uf_7 uf_286) (uf_116 (uf_43 uf_7 uf_288))) (uf_43 (uf_124 uf_7 uf_286) (uf_116 (uf_43 uf_7 uf_288))) uf_282) uf_9) (implies (= (uf_200 uf_287 (uf_43 (uf_124 uf_7 uf_286) (uf_116 (uf_43 uf_7 uf_288))) (uf_43 (uf_124 uf_7 uf_286) (uf_116 (uf_43 uf_7 uf_288))) uf_282) uf_9) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) 0 uf_7) uf_7) uf_9) (= (uf_24 uf_287 (uf_66 (uf_43 uf_7 uf_288) 0 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) 0 uf_7) uf_7) uf_9) (= (uf_24 uf_287 (uf_66 (uf_43 uf_7 uf_288) 0 uf_7)) uf_9)) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) 0 uf_7) uf_7) uf_9) (= (uf_68 uf_287 (uf_66 (uf_43 uf_7 uf_288) 0 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) 0 uf_7) uf_7) uf_9) (= (uf_68 uf_287 (uf_66 (uf_43 uf_7 uf_288) 0 uf_7)) uf_9)) (implies (= uf_295 (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) 0 uf_7))) (implies (up_291 uf_287 uf_278 uf_277 uf_295 uf_7) (implies (up_291 uf_287 uf_276 uf_275 0 uf_4) (implies (up_291 uf_287 uf_274 uf_273 1 uf_4) (implies (and (<= 1 1) (and (<= 1 1) (and (<= 0 0) (<= 0 0)))) (and (<= 1 uf_286) (implies (<= 1 uf_286) (and (forall (?x773 Int) (implies (and (<= 0 ?x773) (<= ?x773 uf_76)) (implies (< ?x773 1) (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x773 uf_7)) uf_295)))) (implies (forall (?x774 Int) (implies (and (<= 0 ?x774) (<= ?x774 uf_76)) (implies (< ?x774 1) (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x774 uf_7)) uf_295)))) (and (and (< 0 uf_286) (= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) 0 uf_7)) uf_295)) (implies (and (< 0 uf_286) (= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) 0 uf_7)) uf_295)) (implies true (implies (and (<= 0 uf_296) (<= uf_296 uf_78)) (implies (and (<= 0 uf_297) (<= uf_297 uf_76)) (implies (and (<= 0 uf_298) (<= uf_298 uf_76)) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (<= uf_298 uf_286) (implies (forall (?x775 Int) (implies (and (<= 0 ?x775) (<= ?x775 uf_76)) (implies (< ?x775 uf_298) (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x775 uf_7)) uf_296)))) (implies (and (< uf_297 uf_286) (= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_297 uf_7)) uf_296)) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (and (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (not true) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (and (= (uf_202 uf_272 uf_287) uf_9) (= (uf_55 uf_287) uf_9)) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (and up_216 (implies up_216 (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (= uf_299 uf_296) (implies (= uf_300 uf_298) (implies (= uf_301 uf_297) (implies (= uf_302 uf_296) (implies true (and (forall (?x776 Int) (implies (and (<= 0 ?x776) (<= ?x776 uf_76)) (implies (< ?x776 uf_286) (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x776 uf_7)) uf_302)))) (implies (forall (?x777 Int) (implies (and (<= 0 ?x777) (<= ?x777 uf_76)) (implies (< ?x777 uf_286) (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x777 uf_7)) uf_302)))) (and (exists (?x778 Int) (and (<= 0 ?x778) (and (<= ?x778 uf_76) (and (< ?x778 uf_286) (= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x778 uf_7)) uf_302))))) (implies (exists (?x779 Int) (and (<= 0 ?x779) (and (<= ?x779 uf_76) (and (< ?x779 uf_286) (= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x779 uf_7)) uf_302))))) true)))))))))))))))))))))))))) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (and (forall (?x780 T5) (implies (not (= (uf_12 (uf_13 (uf_25 uf_287 ?x780))) uf_261)) (not (= (uf_12 (uf_13 (uf_25 uf_287 ?x780))) uf_261))) :pat { (uf_40 (uf_41 uf_287) ?x780) }) (and (forall (?x781 T5) (implies (= (uf_68 uf_287 ?x781) uf_9) (and (= (uf_19 (uf_20 uf_287) ?x781) (uf_19 (uf_20 uf_287) ?x781)) (= (uf_68 uf_287 ?x781) uf_9))) :pat { (uf_19 (uf_20 uf_287) ?x781) }) (and (forall (?x782 T5) (implies (= (uf_68 uf_287 ?x782) uf_9) (and (= (uf_40 (uf_41 uf_287) ?x782) (uf_40 (uf_41 uf_287) ?x782)) (= (uf_68 uf_287 ?x782) uf_9))) :pat { (uf_40 (uf_41 uf_287) ?x782) }) (and (forall (?x783 T5) (implies (= (uf_68 uf_287 ?x783) uf_9) (and (= (uf_58 (uf_59 uf_287) ?x783) (uf_58 (uf_59 uf_287) ?x783)) (= (uf_68 uf_287 ?x783) uf_9))) :pat { (uf_58 (uf_59 uf_287) ?x783) }) (and (<= (uf_173 uf_287) (uf_173 uf_287)) (and (forall (?x784 T5) (<= (uf_172 uf_287 ?x784) (uf_172 uf_287 ?x784)) :pat { (uf_172 uf_287 ?x784) }) (= (uf_178 uf_287 uf_287) uf_9))))))) (implies (and (<= (uf_173 uf_287) (uf_173 uf_287)) (and (forall (?x785 T5) (<= (uf_172 uf_287 ?x785) (uf_172 uf_287 ?x785)) :pat { (uf_172 uf_287 ?x785) }) (= (uf_178 uf_287 uf_287) uf_9))) (implies (and (= (uf_202 uf_272 uf_287) uf_9) (= (uf_55 uf_287) uf_9)) (implies (up_291 uf_287 uf_272 uf_273 uf_298 uf_4) (implies (up_291 uf_287 uf_272 uf_275 uf_297 uf_4) (implies (up_291 uf_287 uf_272 uf_277 uf_296 uf_7) (implies (up_291 uf_287 uf_272 uf_279 uf_286 uf_4) (implies (and (up_291 uf_287 uf_272 uf_280 (uf_29 (uf_43 uf_7 uf_288)) (uf_6 uf_7)) (up_292 uf_287 uf_272 uf_280 (uf_43 uf_7 uf_288) (uf_6 uf_7))) (implies (and (= (uf_59 uf_287) (uf_59 uf_287)) (= (uf_41 uf_287) (uf_41 uf_287))) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (and (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (< uf_298 uf_286) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7) uf_7) uf_9) (= (uf_24 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7) uf_7) uf_9) (= (uf_24 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7)) uf_9)) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7) uf_7) uf_9) (= (uf_68 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7) uf_7) uf_9) (= (uf_68 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7)) uf_9)) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (and (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (< uf_296 (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7))) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7) uf_7) uf_9) (= (uf_24 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7) uf_7) uf_9) (= (uf_24 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7)) uf_9)) (and (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7) uf_7) uf_9) (= (uf_68 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7)) uf_9)) (implies (and (= (uf_48 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7) uf_7) uf_9) (= (uf_68 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7)) uf_9)) (implies (= uf_303 (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7))) (implies (up_291 uf_287 uf_271 uf_277 uf_303 uf_7) (implies (up_291 uf_287 uf_270 uf_275 uf_298 uf_4) (implies (and (<= 1 uf_298) (<= 1 uf_298)) (implies true (implies (= uf_304 uf_303) (implies (= uf_305 uf_298) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_305)) (and (and (<= 0 (+ uf_298 1)) (<= (+ uf_298 1) uf_76)) (implies (and (<= 0 (+ uf_298 1)) (<= (+ uf_298 1) uf_76)) (implies (= uf_306 (+ uf_298 1)) (implies (up_291 uf_287 uf_269 uf_273 uf_306 uf_4) (implies (and (<= 2 uf_306) (<= 0 uf_305)) (implies true (and (<= uf_306 uf_286) (implies (<= uf_306 uf_286) (and (forall (?x786 Int) (implies (and (<= 0 ?x786) (<= ?x786 uf_76)) (implies (< ?x786 uf_306) (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x786 uf_7)) uf_304)))) (implies (forall (?x787 Int) (implies (and (<= 0 ?x787) (<= ?x787 uf_76)) (implies (< ?x787 uf_306) (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x787 uf_7)) uf_304)))) (and (and (< uf_305 uf_286) (= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_305 uf_7)) uf_304)) (implies (and (< uf_305 uf_286) (= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_305 uf_7)) uf_304)) (implies false true)))))))))))))))))))))))))))))))) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_298 uf_7)) uf_296) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (= uf_304 uf_296) (implies (= uf_305 uf_297) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_305)) (and (and (<= 0 (+ uf_298 1)) (<= (+ uf_298 1) uf_76)) (implies (and (<= 0 (+ uf_298 1)) (<= (+ uf_298 1) uf_76)) (implies (= uf_306 (+ uf_298 1)) (implies (up_291 uf_287 uf_269 uf_273 uf_306 uf_4) (implies (and (<= 2 uf_306) (<= 0 uf_305)) (implies true (and (<= uf_306 uf_286) (implies (<= uf_306 uf_286) (and (forall (?x788 Int) (implies (and (<= 0 ?x788) (<= ?x788 uf_76)) (implies (< ?x788 uf_306) (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x788 uf_7)) uf_304)))) (implies (forall (?x789 Int) (implies (and (<= 0 ?x789) (<= ?x789 uf_76)) (implies (< ?x789 uf_306) (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x789 uf_7)) uf_304)))) (and (and (< uf_305 uf_286) (= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_305 uf_7)) uf_304)) (implies (and (< uf_305 uf_286) (= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) uf_305 uf_7)) uf_304)) (implies false true))))))))))))))))))))))))))))))))))))) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (<= uf_286 uf_298) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (and up_216 (implies up_216 (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies (and (<= 1 uf_298) (<= 0 uf_297)) (implies true (implies (= uf_299 uf_296) (implies (= uf_300 uf_298) (implies (= uf_301 uf_297) (implies (= uf_302 uf_296) (implies true (and (forall (?x790 Int) (implies (and (<= 0 ?x790) (<= ?x790 uf_76)) (implies (< ?x790 uf_286) (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x790 uf_7)) uf_302)))) (implies (forall (?x791 Int) (implies (and (<= 0 ?x791) (<= ?x791 uf_76)) (implies (< ?x791 uf_286) (<= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x791 uf_7)) uf_302)))) (and (exists (?x792 Int) (and (<= 0 ?x792) (and (<= ?x792 uf_76) (and (< ?x792 uf_286) (= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x792 uf_7)) uf_302))))) (implies (exists (?x793 Int) (and (<= 0 ?x793) (and (<= ?x793 uf_76) (and (< ?x793 uf_286) (= (uf_110 uf_287 (uf_66 (uf_43 uf_7 uf_288) ?x793 uf_7)) uf_302))))) true))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
 :formula true
 )