%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : SWW677_1 : TPTP v9.2.1. Released v6.4.0. % Transfm : none % Format : tptp:raw % Command : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM % Computer : n024.cluster.edu % Model : x86_64 x86_64 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz % Memory : 8042.1875MB % OS : Linux 3.10.0-693.el7.x86_64 % CPULimit : 300s % WCLimit : 300s % DateTime : Wed Jun 3 09:05:28 AM UTC 2026 % Result : Theorem 65.17s 65.41s % Output : Proof 65.17s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.06 % Problem : SWW677_1 : TPTP v9.2.1. Released v6.4.0. % 0.00/0.06 % Command : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM % 0.06/0.25 % Computer : n024.cluster.edu % 0.06/0.25 % Model : x86_64 x86_64 % 0.06/0.25 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.06/0.25 % Memory : 8042.1875MB % 0.06/0.25 % OS : Linux 3.10.0-693.el7.x86_64 % 0.06/0.25 % CPULimit : 300 % 0.06/0.25 % WCLimit : 300 % 0.06/0.25 % DateTime : Tue Jun 2 17:23:30 EDT 2026 % 0.06/0.25 % CPUTime : % 0.06/0.33 %----Proving TF0_ARI % 65.17/65.41 --- Run --finite-model-find --decision=internal at 45... % 65.17/65.41 --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 60... % 65.17/65.41 --- Run --no-e-matching --full-saturate-quant at 45... % 65.17/65.41 % SZS status Theorem % 65.17/65.41 % SZS output start Proof % 65.17/65.41 ( % 65.17/65.41 (declare-sort |tptp.'Array[Int,Int]'| 0) % 65.17/65.41 (declare-const tptp.sorted (-> |tptp.'Array[Int,Int]'| Int Int Bool)) % 65.17/65.41 (declare-const tptp.length (-> |tptp.'Array[Int,Int]'| Int)) % 65.17/65.41 (declare-const tptp.div2 (-> Int Int)) % 65.17/65.41 (declare-const |tptp.'const:(Int)>Array[Int,Int]'| (-> Int |tptp.'Array[Int,Int]'|)) % 65.17/65.41 (declare-const |tptp.'select:(Array[Int,Int]*Int)>Int'| (-> |tptp.'Array[Int,Int]'| Int Int)) % 65.17/65.41 (declare-const |tptp.'store:(Array[Int,Int]*Int*Int)>Array[Int,Int]'| (-> |tptp.'Array[Int,Int]'| Int Int |tptp.'Array[Int,Int]'|)) % 65.17/65.41 (define @t1 () (@var "E" Int)) % 65.17/65.41 (define @t2 () (@var "I" Int)) % 65.17/65.41 (define @t3 () (@var "A" |tptp.'Array[Int,Int]'|)) % 65.17/65.41 (define @t4 () (|tptp.'store:(Array[Int,Int]*Int*Int)>Array[Int,Int]'| @t3 @t2 @t1)) % 65.17/65.41 (define @t5 () (@var "J" Int)) % 65.17/65.41 (define @t6 () (|tptp.'select:(Array[Int,Int]*Int)>Int'| @t3 @t5)) % 65.17/65.41 (define @t7 () (@var "B" |tptp.'Array[Int,Int]'|)) % 65.17/65.41 (define @t8 () (|tptp.'select:(Array[Int,Int]*Int)>Int'| @t3 @t2)) % 65.17/65.41 (define @t9 () (@var "Res" Int)) % 65.17/65.41 (define @t10 () (@var "A" Int)) % 65.17/65.41 (define @t11 () (tptp.div2 @t10)) % 65.17/65.41 (define @t12 () (= @t11 @t9)) % 65.17/65.41 (define @t13 () (+ @t9 1)) % 65.17/65.41 (define @t14 () (* 2 @t13)) % 65.17/65.41 (define @t15 () (* 2 @t9)) % 65.17/65.41 (define @t16 () (and (<= @t15 @t10) (> @t14 @t10))) % 65.17/65.41 (define @t17 () (= @t16 @t12)) % 65.17/65.41 (define @t18 () (@list @t10 @t9)) % 65.17/65.41 (define @t19 () (forall @t18 @t17)) % 65.17/65.41 (define @t20 () (tptp.length @t3)) % 65.17/65.41 (define @t21 () (@var "U" Int)) % 65.17/65.41 (define @t22 () (@var "L" Int)) % 65.17/65.41 (define @t23 () (- @t20 1)) % 65.17/65.41 (define @t24 () (tptp.sorted @t3 0 @t23)) % 65.17/65.41 (define @t25 () (@var "U_3" Int)) % 65.17/65.41 (define @t26 () (<= 0 @t22)) % 65.17/65.41 (define @t27 () (@var "M_1" Int)) % 65.17/65.41 (define @t28 () (- @t27 1)) % 65.17/65.41 (define @t29 () (= @t25 @t28)) % 65.17/65.41 (define @t30 () (and @t29 @t26 (< @t25 @t20) @t24)) % 65.17/65.41 (define @t31 () (@list @t25)) % 65.17/65.41 (define @t32 () (exists @t31 @t30)) % 65.17/65.41 (define @t33 () (|tptp.'select:(Array[Int,Int]*Int)>Int'| @t3 @t27)) % 65.17/65.41 (define @t34 () (< @t33 @t1)) % 65.17/65.41 (define @t35 () (not @t34)) % 65.17/65.41 (define @t36 () (=> @t35 @t32)) % 65.17/65.41 (define @t37 () (< @t21 @t20)) % 65.17/65.41 (define @t38 () (@var "L_2" Int)) % 65.17/65.41 (define @t39 () (+ @t27 1)) % 65.17/65.41 (define @t40 () (= @t38 @t39)) % 65.17/65.41 (define @t41 () (and @t40 (<= 0 @t38) @t37 @t24)) % 65.17/65.41 (define @t42 () (@list @t38)) % 65.17/65.41 (define @t43 () (exists @t42 @t41)) % 65.17/65.41 (define @t44 () (=> @t34 @t43)) % 65.17/65.41 (define @t45 () (and @t44 @t36)) % 65.17/65.41 (define @t46 () (= @t33 @t1)) % 65.17/65.41 (define @t47 () (not @t46)) % 65.17/65.41 (define @t48 () (=> @t47 @t45)) % 65.17/65.41 (define @t49 () (tptp.div2 (+ @t22 @t21))) % 65.17/65.41 (define @t50 () (= @t27 @t49)) % 65.17/65.41 (define @t51 () (and @t50 (=> @t46 true) @t48)) % 65.17/65.41 (define @t52 () (@list @t27)) % 65.17/65.41 (define @t53 () (exists @t52 @t51)) % 65.17/65.41 (define @t54 () (> @t22 @t21)) % 65.17/65.41 (define @t55 () (not @t54)) % 65.17/65.41 (define @t56 () (=> @t55 @t53)) % 65.17/65.41 (define @t57 () (and (=> @t54 true) @t56)) % 65.17/65.41 (define @t58 () (and @t26 @t37 @t24)) % 65.17/65.41 (define @t59 () (=> @t58 @t57)) % 65.17/65.41 (define @t60 () (@list @t22 @t21 @t3 @t1)) % 65.17/65.41 (define @t61 () (forall @t60 @t59)) % 65.17/65.41 (define @t62 () (not @t61)) % 65.17/65.41 (define @t63 () (+ @t20 (* -1 @t49))) % 65.17/65.41 (define @t64 () (>= @t63 0)) % 65.17/65.41 (define @t65 () (+ -1 @t20)) % 65.17/65.41 (define @t66 () (tptp.sorted @t3 0 @t65)) % 65.17/65.41 (define @t67 () (>= @t22 0)) % 65.17/65.41 (define @t68 () (|tptp.'select:(Array[Int,Int]*Int)>Int'| @t3 @t49)) % 65.17/65.41 (define @t69 () (>= (+ @t1 (* -1 @t68)) 1)) % 65.17/65.41 (define @t70 () (>= @t49 -1)) % 65.17/65.41 (define @t71 () (* -1 @t20)) % 65.17/65.41 (define @t72 () (+ @t21 @t71)) % 65.17/65.41 (define @t73 () (>= @t72 0)) % 65.17/65.41 (define @t74 () (not @t73)) % 65.17/65.41 (define @t75 () (not @t69)) % 65.17/65.41 (define @t76 () (and (or @t75 (and @t74 @t66 @t70)) (or @t69 (and @t67 @t66 @t64)))) % 65.17/65.41 (define @t77 () (= @t1 @t68)) % 65.17/65.41 (define @t78 () (+ @t22 (* -1 @t21))) % 65.17/65.41 (define @t79 () (>= @t78 1)) % 65.17/65.41 (define @t80 () (not @t66)) % 65.17/65.41 (define @t81 () (not @t67)) % 65.17/65.41 (define @t82 () (or @t81 @t73 @t80 @t79 @t77 @t76)) % 65.17/65.41 (define @t83 () (or @t79 @t77 @t76)) % 65.17/65.41 (define @t84 () (not @t64)) % 65.17/65.41 (define @t85 () (not @t84)) % 65.17/65.41 (define @t86 () (not @t80)) % 65.17/65.41 (define @t87 () (not @t81)) % 65.17/65.41 (define @t88 () (and @t87 @t86 @t85)) % 65.17/65.41 (define @t89 () (or @t81 @t80 @t84)) % 65.17/65.41 (define @t90 () (not @t89)) % 65.17/65.41 (define @t91 () (not @t70)) % 65.17/65.41 (define @t92 () (not @t91)) % 65.17/65.41 (define @t93 () (and @t74 @t86 @t92)) % 65.17/65.41 (define @t94 () (or @t73 @t80 @t91)) % 65.17/65.41 (define @t95 () (and @t75 @t89)) % 65.17/65.41 (define @t96 () (and @t69 @t94)) % 65.17/65.41 (define @t97 () (or @t96 @t95)) % 65.17/65.41 (define @t98 () (not @t97)) % 65.17/65.41 (define @t99 () (not @t77)) % 65.17/65.41 (define @t100 () (and @t99 @t97)) % 65.17/65.41 (define @t101 () (not @t100)) % 65.17/65.41 (define @t102 () (not @t79)) % 65.17/65.41 (define @t103 () (not @t74)) % 65.17/65.41 (define @t104 () (or @t81 @t103 @t80)) % 65.17/65.41 (define @t105 () (or @t103 @t80)) % 65.17/65.41 (define @t106 () (not (and @t74 @t66))) % 65.17/65.41 (define @t107 () (=> @t102 @t101)) % 65.17/65.41 (define @t108 () (and @t67 @t74 @t66)) % 65.17/65.41 (define @t109 () (+ @t71 @t49)) % 65.17/65.41 (define @t110 () (+ @t63 1)) % 65.17/65.41 (define @t111 () (+ @t49 @t71)) % 65.17/65.41 (define @t112 () (>= @t111 1)) % 65.17/65.41 (define @t113 () (or @t81 @t80 @t112)) % 65.17/65.41 (define @t114 () (and @t75 @t113)) % 65.17/65.41 (define @t115 () (or @t96 @t114)) % 65.17/65.41 (define @t116 () (and @t99 @t115)) % 65.17/65.41 (define @t117 () (not (= @t49 @t49))) % 65.17/65.41 (define @t118 () (or @t117 @t116)) % 65.17/65.41 (define @t119 () (+ @t27 @t71)) % 65.17/65.41 (define @t120 () (>= @t119 1)) % 65.17/65.41 (define @t121 () (or @t81 @t80 @t120)) % 65.17/65.41 (define @t122 () (+ @t1 (* -1 @t33))) % 65.17/65.41 (define @t123 () (>= @t122 1)) % 65.17/65.41 (define @t124 () (not @t123)) % 65.17/65.41 (define @t125 () (>= @t27 -1)) % 65.17/65.41 (define @t126 () (not @t125)) % 65.17/65.41 (define @t127 () (or @t73 @t80 @t126)) % 65.17/65.41 (define @t128 () (= @t1 @t33)) % 65.17/65.41 (define @t129 () (not @t128)) % 65.17/65.41 (define @t130 () (and @t129 (or (and @t123 @t127) (and @t124 @t121)))) % 65.17/65.41 (define @t131 () (not @t50)) % 65.17/65.41 (define @t132 () (or @t131 @t131 @t130)) % 65.17/65.41 (define @t133 () (or @t131 @t130)) % 65.17/65.41 (define @t134 () (not @t121)) % 65.17/65.41 (define @t135 () (not @t127)) % 65.17/65.41 (define @t136 () (=> @t124 @t134)) % 65.17/65.41 (define @t137 () (=> @t123 @t135)) % 65.17/65.41 (define @t138 () (and @t137 @t136)) % 65.17/65.41 (define @t139 () (=> @t129 @t138)) % 65.17/65.41 (define @t140 () (and @t50 @t139)) % 65.17/65.41 (define @t141 () (forall @t52 (not @t140))) % 65.17/65.41 (define @t142 () (not @t141)) % 65.17/65.41 (define @t143 () (+ -1 @t27 @t71)) % 65.17/65.41 (define @t144 () (+ @t71 @t27 -1)) % 65.17/65.41 (define @t145 () (+ -1 @t27)) % 65.17/65.41 (define @t146 () (+ @t145 @t71)) % 65.17/65.41 (define @t147 () (>= @t146 0)) % 65.17/65.41 (define @t148 () (+ 1 @t145)) % 65.17/65.41 (define @t149 () (= @t27 @t148)) % 65.17/65.41 (define @t150 () (not @t149)) % 65.17/65.41 (define @t151 () (or @t150 @t147)) % 65.17/65.41 (define @t152 () (+ @t25 @t71)) % 65.17/65.41 (define @t153 () (>= @t152 0)) % 65.17/65.41 (define @t154 () (+ 1 @t25)) % 65.17/65.41 (define @t155 () (= @t27 @t154)) % 65.17/65.41 (define @t156 () (not @t155)) % 65.17/65.41 (define @t157 () (= @t25 @t145)) % 65.17/65.41 (define @t158 () (* -1 (- @t25 @t145))) % 65.17/65.41 (define @t159 () (* 1 (- @t27 @t154))) % 65.17/65.41 (define @t160 () (or @t156 @t156 @t153)) % 65.17/65.41 (define @t161 () (or @t156 @t153)) % 65.17/65.41 (define @t162 () (forall @t31 @t161)) % 65.17/65.41 (define @t163 () (or @t81 @t80 @t162)) % 65.17/65.41 (define @t164 () (or @t81 @t80 @t161)) % 65.17/65.41 (define @t165 () (or @t156 @t81 @t153 @t80)) % 65.17/65.41 (define @t166 () (not @t153)) % 65.17/65.41 (define @t167 () (not @t166)) % 65.17/65.41 (define @t168 () (or @t156 @t81 @t167 @t80)) % 65.17/65.41 (define @t169 () (and @t155 @t67 @t166 @t66)) % 65.17/65.41 (define @t170 () (forall @t31 (not @t169))) % 65.17/65.41 (define @t171 () (not @t170)) % 65.17/65.41 (define @t172 () (* -1 1)) % 65.17/65.41 (define @t173 () (+ @t20 @t172)) % 65.17/65.41 (define @t174 () (>= @t25 @t20)) % 65.17/65.41 (define @t175 () (+ @t27 @t172)) % 65.17/65.41 (define @t176 () (- @t33 @t1)) % 65.17/65.41 (define @t177 () (+ @t122 1)) % 65.17/65.41 (define @t178 () (>= @t33 @t1)) % 65.17/65.41 (define @t179 () (+ 1 @t27)) % 65.17/65.41 (define @t180 () (>= @t179 0)) % 65.17/65.41 (define @t181 () (not @t180)) % 65.17/65.41 (define @t182 () (+ -1 @t179)) % 65.17/65.41 (define @t183 () (= @t27 @t182)) % 65.17/65.41 (define @t184 () (not @t183)) % 65.17/65.41 (define @t185 () (or @t184 @t181)) % 65.17/65.41 (define @t186 () (>= @t38 0)) % 65.17/65.41 (define @t187 () (not @t186)) % 65.17/65.41 (define @t188 () (+ -1 @t38)) % 65.17/65.41 (define @t189 () (= @t27 @t188)) % 65.17/65.41 (define @t190 () (not @t189)) % 65.17/65.41 (define @t191 () (= @t38 @t179)) % 65.17/65.41 (define @t192 () (* 1 (- @t38 @t179))) % 65.17/65.41 (define @t193 () (* -1 (- @t27 @t188))) % 65.17/65.41 (define @t194 () (or @t190 @t190 @t187)) % 65.17/65.41 (define @t195 () (or @t190 @t187)) % 65.17/65.41 (define @t196 () (forall @t42 @t195)) % 65.17/65.41 (define @t197 () (or @t73 @t80 @t196)) % 65.17/65.41 (define @t198 () (or @t73 @t80 @t195)) % 65.17/65.41 (define @t199 () (or @t190 @t187 @t73 @t80)) % 65.17/65.41 (define @t200 () (or @t190 @t187 @t103 @t80)) % 65.17/65.41 (define @t201 () (and @t189 @t186 @t74 @t66)) % 65.17/65.41 (define @t202 () (forall @t42 (not @t201))) % 65.17/65.41 (define @t203 () (not @t202)) % 65.17/65.41 (define @t204 () (>= @t21 @t20)) % 65.17/65.41 (define @t205 () (+ @t21 1)) % 65.17/65.41 (define @t206 () (>= @t22 @t205)) % 65.17/65.41 (define @t207 () (forall @t60 @t82)) % 65.17/65.41 (define @t208 () (@quantifiers_skolemize @t207 1)) % 65.17/65.41 (define @t209 () (@quantifiers_skolemize @t207 0)) % 65.17/65.41 (define @t210 () (+ @t209 @t208)) % 65.17/65.41 (define @t211 () (tptp.div2 @t210)) % 65.17/65.41 (define @t212 () (* -1 @t211)) % 65.17/65.41 (define @t213 () (@quantifiers_skolemize @t207 2)) % 65.17/65.41 (define @t214 () (tptp.length @t213)) % 65.17/65.41 (define @t215 () (+ @t214 @t212)) % 65.17/65.41 (define @t216 () (>= @t215 0)) % 65.17/65.41 (define @t217 () (tptp.sorted @t213 0 (+ -1 @t214))) % 65.17/65.41 (define @t218 () (>= @t209 0)) % 65.17/65.41 (define @t219 () (and @t218 @t217 @t216)) % 65.17/65.41 (define @t220 () (|tptp.'select:(Array[Int,Int]*Int)>Int'| @t213 @t211)) % 65.17/65.41 (define @t221 () (@quantifiers_skolemize @t207 3)) % 65.17/65.41 (define @t222 () (>= (+ @t221 (* -1 @t220)) 1)) % 65.17/65.41 (define @t223 () (or @t222 @t219)) % 65.17/65.41 (define @t224 () (>= @t211 -1)) % 65.17/65.41 (define @t225 () (+ @t208 (* -1 @t214))) % 65.17/65.41 (define @t226 () (>= @t225 0)) % 65.17/65.41 (define @t227 () (not @t226)) % 65.17/65.41 (define @t228 () (and @t227 @t217 @t224)) % 65.17/65.41 (define @t229 () (or (not @t222) @t228)) % 65.17/65.41 (define @t230 () (and @t229 @t223)) % 65.17/65.41 (define @t231 () (* -1 @t208)) % 65.17/65.41 (define @t232 () (+ @t209 @t231)) % 65.17/65.41 (define @t233 () (>= @t232 1)) % 65.17/65.41 (define @t234 () (not @t217)) % 65.17/65.41 (define @t235 () (not @t218)) % 65.17/65.41 (define @t236 () (or @t235 @t226 @t234 @t233 (= @t221 @t220) @t230)) % 65.17/65.41 (define @t237 () (@list true)) % 65.17/65.41 (define @t238 () (@list @t236)) % 65.17/65.41 (define @t239 () (not @t233)) % 65.17/65.41 (define @t240 () (= @t9 @t11)) % 65.17/65.41 (define @t241 () (+ @t10 (* -2 @t9))) % 65.17/65.41 (define @t242 () (+ 2 @t15)) % 65.17/65.41 (define @t243 () (>= @t241 2)) % 65.17/65.41 (define @t244 () (+ 1 @t9)) % 65.17/65.41 (define @t245 () (<= @t14 @t10)) % 65.17/65.41 (define @t246 () (>= @t241 0)) % 65.17/65.41 (define @t247 () (* -2 @t211)) % 65.17/65.41 (define @t248 () (+ @t209 @t208 @t247)) % 65.17/65.41 (define @t249 () (>= @t248 2)) % 65.17/65.41 (define @t250 () (not @t249)) % 65.17/65.41 (define @t251 () (>= @t248 0)) % 65.17/65.41 (define @t252 () (and @t251 @t250)) % 65.17/65.41 (define @t253 () (+ @t247 @t208 @t209)) % 65.17/65.41 (define @t254 () (+ @t210 @t247)) % 65.17/65.41 (define @t255 () (>= @t254 2)) % 65.17/65.41 (define @t256 () (not @t255)) % 65.17/65.41 (define @t257 () (>= @t254 0)) % 65.17/65.41 (define @t258 () (and @t257 @t256)) % 65.17/65.41 (define @t259 () (= @t258 (= @t211 @t211))) % 65.17/65.41 (define @t260 () (forall @t18 (= (and @t246 (not @t243)) @t240))) % 65.17/65.41 (define @t261 () (@list false)) % 65.17/65.41 (define @t262 () (@list @t260)) % 65.17/65.41 (define @t263 () (not @t252)) % 65.17/65.41 (define @t264 () (@list @t252)) % 65.17/65.41 (define @t265 () (+ @t231 @t211)) % 65.17/65.41 (define @t266 () (= @t209 @t265)) % 65.17/65.41 (define @t267 () (not @t266)) % 65.17/65.41 (define @t268 () (not @t224)) % 65.17/65.41 (define @t269 () (not @t268)) % 65.17/65.41 (define @t270 () (not @t239)) % 65.17/65.41 (define @t271 () (+ @t209 @t208 @t212)) % 65.17/65.41 (define @t272 () (= @t271 0)) % 65.17/65.41 (define @t273 () (>= 0 0)) % 65.17/65.41 (define @t274 () (* -2 0)) % 65.17/65.41 (define @t275 () (+ 0 1 -1 @t274)) % 65.17/65.41 (define @t276 () (* 2 @t209)) % 65.17/65.41 (define @t277 () (* -2 @t209)) % 65.17/65.41 (define @t278 () (+ @t277 @t212 @t211 @t231 @t208 @t276)) % 65.17/65.41 (define @t279 () (+ @t271 @t232 @t211 @t277)) % 65.17/65.41 (define @t280 () (>= @t279 @t275)) % 65.17/65.41 (define @t281 () (< -2 0)) % 65.17/65.41 (define @t282 () (* 1 (- @t209 @t265))) % 65.17/65.41 (define @t283 () (and @t218 @t268 @t239 @t266)) % 65.17/65.41 (define @t284 () (= @t210 @t211)) % 65.17/65.41 (define @t285 () (>= @t210 -1)) % 65.17/65.41 (define @t286 () (* -1 @t209)) % 65.17/65.41 (define @t287 () (+ @t286 @t231)) % 65.17/65.41 (define @t288 () (+ @t210 1)) % 65.17/65.41 (define @t289 () (+ @t231 @t286)) % 65.17/65.41 (define @t290 () (+ @t210 (* -2 @t210))) % 65.17/65.41 (define @t291 () (>= @t290 2)) % 65.17/65.41 (define @t292 () (not @t291)) % 65.17/65.41 (define @t293 () (>= @t290 0)) % 65.17/65.41 (define @t294 () (and @t293 @t292)) % 65.17/65.41 (define @t295 () (= @t294 @t284)) % 65.17/65.41 (define @t296 () (>= @t210 1)) % 65.17/65.41 (define @t297 () (not @t296)) % 65.17/65.41 (define @t298 () (and @t297 @t285)) % 65.17/65.41 (define @t299 () (= @t298 @t266)) % 65.17/65.41 (define @t300 () (not @t285)) % 65.17/65.41 (define @t301 () (>= 0 -1)) % 65.17/65.41 (define @t302 () (+ -1 0 @t274)) % 65.17/65.41 (define @t303 () (+ @t277 @t231 @t208 @t276)) % 65.17/65.41 (define @t304 () (+ @t210 @t232 @t277)) % 65.17/65.41 (define @t305 () (>= @t304 @t302)) % 65.17/65.41 (define @t306 () (* 2 -1)) % 65.17/65.41 (define @t307 () (+ @t172 2 @t306)) % 65.17/65.41 (define @t308 () (* 2 @t211)) % 65.17/65.41 (define @t309 () (* 0 @t209)) % 65.17/65.41 (define @t310 () (= @t309 0)) % 65.17/65.41 (define @t311 () (* 0 @t208)) % 65.17/65.41 (define @t312 () (+ @t308 @t247 @t311 @t309)) % 65.17/65.41 (define @t313 () (+ (* -1 @t210) @t248 @t308)) % 65.17/65.41 (define @t314 () (>= @t313 @t307)) % 65.17/65.41 (define @t315 () (> 2 0)) % 65.17/65.41 (define @t316 () (< -1 0)) % 65.17/65.41 (define @t317 () (and @t268 @t250 @t296)) % 65.17/65.41 (define @t318 () (not @t227)) % 65.17/65.41 (define @t319 () (not @t216)) % 65.17/65.41 (define @t320 () (not @t251)) % 65.17/65.41 (define @t321 () (+ 0 1)) % 65.17/65.41 (define @t322 () (>= @t232 @t321)) % 65.17/65.41 (define @t323 () (<= @t232 0)) % 65.17/65.41 (define @t324 () (* -1 0)) % 65.17/65.41 (define @t325 () (* 2 0)) % 65.17/65.41 (define @t326 () (+ 0 @t325 @t325 @t324)) % 65.17/65.41 (define @t327 () (* 2 @t214)) % 65.17/65.41 (define @t328 () (* -2 @t214)) % 65.17/65.41 (define @t329 () (+ @t308 @t247 @t231 @t328 @t327 @t208 @t309)) % 65.17/65.41 (define @t330 () (+ @t232 (* 2 @t215) (* 2 @t225) (* -1 @t248))) % 65.17/65.41 (define @t331 () (>= @t330 @t326)) % 65.17/65.41 (define @t332 () (and @t251 @t227 @t319 @t239)) % 65.17/65.41 (assume @p1 (forall (@list @t3 @t2 @t1) (= (|tptp.'select:(Array[Int,Int]*Int)>Int'| @t4 @t2) @t1))) % 65.17/65.41 (assume @p2 (forall (@list @t3 @t2 @t5 @t1) (=> (not (= @t2 @t5)) (= (|tptp.'select:(Array[Int,Int]*Int)>Int'| @t4 @t5) @t6)))) % 65.17/65.41 (assume @p3 (forall (@list @t3 @t7) (=> (forall (@list @t2) (= @t8 (|tptp.'select:(Array[Int,Int]*Int)>Int'| @t7 @t2))) (= @t3 @t7)))) % 65.17/65.41 (assume @p4 (forall (@list @t2 @t1) (= (|tptp.'select:(Array[Int,Int]*Int)>Int'| (|tptp.'const:(Int)>Array[Int,Int]'| @t1) @t2) @t1))) % 65.17/65.41 (assume @p5 @t19) % 65.17/65.41 (assume @p6 (forall (@list @t3) (>= @t20 0))) % 65.17/65.41 (assume @p7 (forall (@list @t3 @t22 @t21) (= (tptp.sorted @t3 @t22 @t21) (forall (@list @t2 @t5) (=> (and (<= @t22 @t2) (< @t2 @t5) (<= @t5 @t21)) (<= @t8 @t6)))))) % 65.17/65.41 (assume @p8 @t62) % 65.17/65.41 (assume @p9 true) % 65.17/65.41 (step @p10 :rule aci_norm :args ((= (or (or @t81 @t73 @t80) @t83) @t82))) % 65.17/65.41 (step @p11 :rule aci_norm :args ((= (or @t79 (or @t77 @t76)) @t83))) % 65.17/65.41 (step @p12 :rule bool-double-not-elim :args (@t64)) % 65.17/65.41 (step @p13 :rule bool-double-not-elim :args (@t66)) % 65.17/65.41 (step @p14 :rule bool-double-not-elim :args (@t67)) % 65.17/65.41 (step @p15 :rule nary_cong :premises (@p14 @p13 @p12) :args (@t88)) % 65.17/65.41 (step @p16 :rule aci_norm :args ((= (and @t87 (and @t86 @t85)) @t88))) % 65.17/65.41 (step @p17 :rule trans :premises (@p16 @p15)) % 65.17/65.41 (step @p18 :rule bool-or-de-morgan :args (@t80 @t84 false)) % 65.17/65.41 (step @p19 :rule refl :args (@t87)) % 65.17/65.41 (step @p20 :rule nary_cong :premises (@p19 @p18) :args ((and @t87 (not (or @t80 @t84))))) % 65.17/65.41 (step @p21 :rule bool-or-de-morgan :args (@t81 @t80 (or @t84))) % 65.17/65.41 (step @p22 :rule trans :premises (@p21 @p20)) % 65.17/65.41 (step @p23 :rule trans :premises (@p22 @p17)) % 65.17/65.41 (step @p24 :rule refl :args (@t69)) % 65.17/65.41 (step @p25 :rule nary_cong :premises (@p24 @p23) :args ((or @t69 @t90))) % 65.17/65.41 (step @p26 :rule refl :args (@t90)) % 65.17/65.41 (step @p27 :rule bool-double-not-elim :args (@t69)) % 65.17/65.41 (step @p28 :rule nary_cong :premises (@p27 @p26) :args ((or (not @t75) @t90))) % 65.17/65.41 (step @p29 :rule bool-and-de-morgan :args (@t75 @t89 true)) % 65.17/65.41 (step @p30 :rule trans :premises (@p29 @p28)) % 65.17/65.41 (step @p31 :rule trans :premises (@p30 @p25)) % 65.17/65.41 (step @p32 :rule bool-double-not-elim :args (@t70)) % 65.17/65.41 (step @p33 :rule refl :args (@t74)) % 65.17/65.41 (step @p34 :rule nary_cong :premises (@p33 @p13 @p32) :args (@t93)) % 65.17/65.41 (step @p35 :rule aci_norm :args ((= (and @t74 (and @t86 @t92)) @t93))) % 65.17/65.41 (step @p36 :rule trans :premises (@p35 @p34)) % 65.17/65.41 (step @p37 :rule bool-or-de-morgan :args (@t80 @t91 false)) % 65.17/65.41 (step @p38 :rule nary_cong :premises (@p33 @p37) :args ((and @t74 (not (or @t80 @t91))))) % 65.17/65.41 (step @p39 :rule bool-or-de-morgan :args (@t73 @t80 (or @t91))) % 65.17/65.41 (step @p40 :rule trans :premises (@p39 @p38)) % 65.17/65.41 (step @p41 :rule trans :premises (@p40 @p36)) % 65.17/65.41 (step @p42 :rule refl :args (@t75)) % 65.17/65.41 (step @p43 :rule nary_cong :premises (@p42 @p41) :args ((or @t75 (not @t94)))) % 65.17/65.41 (step @p44 :rule bool-and-de-morgan :args (@t69 @t94 true)) % 65.17/65.41 (step @p45 :rule trans :premises (@p44 @p43)) % 65.17/65.41 (step @p46 :rule nary_cong :premises (@p45 @p31) :args ((and (not @t96) (not @t95)))) % 65.17/65.41 (step @p47 :rule bool-or-de-morgan :args (@t96 @t95 false)) % 65.17/65.41 (step @p48 :rule trans :premises (@p47 @p46)) % 65.17/65.41 (step @p49 :rule refl :args (@t77)) % 65.17/65.41 (step @p50 :rule nary_cong :premises (@p49 @p48) :args ((or @t77 @t98))) % 65.17/65.41 (step @p51 :rule refl :args (@t98)) % 65.17/65.41 (step @p52 :rule bool-double-not-elim :args (@t77)) % 65.17/65.41 (step @p53 :rule nary_cong :premises (@p52 @p51) :args ((or (not @t99) @t98))) % 65.17/65.41 (step @p54 :rule bool-and-de-morgan :args (@t99 @t97 true)) % 65.17/65.41 (step @p55 :rule trans :premises (@p54 @p53)) % 65.17/65.41 (step @p56 :rule trans :premises (@p55 @p50)) % 65.17/65.41 (step @p57 :rule refl :args (@t79)) % 65.17/65.41 (step @p58 :rule nary_cong :premises (@p57 @p56) :args ((or @t79 @t101))) % 65.17/65.41 (step @p59 :rule trans :premises (@p58 @p11)) % 65.17/65.41 (step @p60 :rule refl :args (@t101)) % 65.17/65.41 (step @p61 :rule bool-double-not-elim :args (@t79)) % 65.17/65.41 (step @p62 :rule nary_cong :premises (@p61 @p60) :args ((or (not @t102) @t101))) % 65.17/65.41 (step @p63 :rule bool-impl-elim :args (@t102 @t101)) % 65.17/65.41 (step @p64 :rule trans :premises (@p63 @p62)) % 65.17/65.41 (step @p65 :rule trans :premises (@p64 @p59)) % 65.17/65.41 (step @p66 :rule refl :args (@t80)) % 65.17/65.41 (step @p67 :rule bool-double-not-elim :args (@t73)) % 65.17/65.41 (step @p68 :rule refl :args (@t81)) % 65.17/65.41 (step @p69 :rule nary_cong :premises (@p68 @p67 @p66) :args (@t104)) % 65.17/65.41 (step @p70 :rule aci_norm :args ((= (or @t81 @t105) @t104))) % 65.17/65.41 (step @p71 :rule trans :premises (@p70 @p69)) % 65.17/65.41 (step @p72 :rule bool-and-de-morgan :args (@t74 @t66 true)) % 65.17/65.41 (step @p73 :rule nary_cong :premises (@p68 @p72) :args ((or @t81 @t106))) % 65.17/65.41 (step @p74 :rule bool-and-de-morgan :args (@t67 @t74 (and @t66))) % 65.17/65.41 (step @p75 :rule trans :premises (@p74 @p73)) % 65.17/65.41 (step @p76 :rule trans :premises (@p75 @p71)) % 65.17/65.41 (step @p77 :rule nary_cong :premises (@p76 @p65) :args ((or (not @t108) @t107))) % 65.17/65.41 (step @p78 :rule trans :premises (@p77 @p10)) % 65.17/65.41 (step @p79 :rule bool-impl-elim :args (@t108 @t107)) % 65.17/65.41 (step @p80 :rule trans :premises (@p79 @p78)) % 65.17/65.41 (step @p81 :rule cong :premises (@p80) :args ((forall @t60 (=> @t108 @t107)))) % 65.17/65.41 (step @p82 :rule aci_norm :args ((= (and true @t107) @t107))) % 65.17/65.41 (step @p83 :rule aci_norm :args ((= (or false @t100) @t100))) % 65.17/65.41 (step @p84 :rule arith_poly_norm :args ((= (* -1 (- 0 @t110)) (* -1 (- @t109 1))))) % 65.17/65.41 (step @p85 :rule arith_poly_norm_rel :premises (@p84) :args ((= (>= 0 @t110) (>= @t109 1)))) % 65.17/65.41 (step @p86 :rule arith-geq-tighten :args (@t63 0)) % 65.17/65.41 (step @p87 :rule trans :premises (@p86 @p85)) % 65.17/65.41 (step @p88 :rule symm :premises (@p87)) % 65.17/65.41 (step @p89 :rule refl :args (1)) % 65.17/65.41 (step @p90 :rule arith_poly_norm :args ((= @t111 @t109))) % 65.17/65.41 (step @p91 :rule cong :premises (@p90 @p89) :args (@t112)) % 65.17/65.41 (step @p92 :rule trans :premises (@p91 @p88)) % 65.17/65.41 (step @p93 :rule refl :args (@t80)) % 65.17/65.41 (step @p94 :rule refl :args (@t81)) % 65.17/65.41 (step @p95 :rule nary_cong :premises (@p94 @p93 @p92) :args (@t113)) % 65.17/65.41 (step @p96 :rule refl :args (@t75)) % 65.17/65.41 (step @p97 :rule nary_cong :premises (@p96 @p95) :args (@t114)) % 65.17/65.41 (step @p98 :rule refl :args (@t96)) % 65.17/65.41 (step @p99 :rule nary_cong :premises (@p98 @p97) :args (@t115)) % 65.17/65.41 (step @p100 :rule refl :args (@t99)) % 65.17/65.41 (step @p101 :rule nary_cong :premises (@p100 @p99) :args (@t116)) % 65.17/65.41 (step @p102 :rule evaluate :args ((not true))) % 65.17/65.41 (step @p103 :rule eq-refl :args (@t49)) % 65.17/65.41 (step @p104 :rule cong :premises (@p103) :args (@t117)) % 65.17/65.41 (step @p105 :rule trans :premises (@p104 @p102)) % 65.17/65.41 (step @p106 :rule nary_cong :premises (@p105 @p101) :args (@t118)) % 65.17/65.41 (step @p107 :rule trans :premises (@p106 @p83)) % 65.17/65.41 (step @p108 :rule quant-var-elim-eq :args ((= (forall @t52 @t132) @t118))) % 65.17/65.41 (step @p109 :rule aci_norm :args ((= @t133 @t132))) % 65.17/65.41 (step @p110 :rule cong :premises (@p109) :args ((forall @t52 @t133))) % 65.17/65.41 (step @p111 :rule trans :premises (@p110 @p108)) % 65.17/65.41 (step @p112 :rule trans :premises (@p111 @p107)) % 65.17/65.41 (step @p113 :rule bool-double-not-elim :args (@t121)) % 65.17/65.41 (step @p114 :rule refl :args (@t124)) % 65.17/65.41 (step @p115 :rule nary_cong :premises (@p114 @p113) :args ((and @t124 (not @t134)))) % 65.17/65.41 (step @p116 :rule bool-implies-de-morgan :args (@t124 @t134)) % 65.17/65.41 (step @p117 :rule trans :premises (@p116 @p115)) % 65.17/65.41 (step @p118 :rule bool-double-not-elim :args (@t127)) % 65.17/65.41 (step @p119 :rule refl :args (@t123)) % 65.17/65.41 (step @p120 :rule nary_cong :premises (@p119 @p118) :args ((and @t123 (not @t135)))) % 65.17/65.41 (step @p121 :rule bool-implies-de-morgan :args (@t123 @t135)) % 65.17/65.41 (step @p122 :rule trans :premises (@p121 @p120)) % 65.17/65.41 (step @p123 :rule nary_cong :premises (@p122 @p117) :args ((or (not @t137) (not @t136)))) % 65.17/65.41 (step @p124 :rule bool-and-de-morgan :args (@t137 @t136 true)) % 65.17/65.41 (step @p125 :rule trans :premises (@p124 @p123)) % 65.17/65.41 (step @p126 :rule refl :args (@t129)) % 65.17/65.41 (step @p127 :rule nary_cong :premises (@p126 @p125) :args ((and @t129 (not @t138)))) % 65.17/65.41 (step @p128 :rule bool-implies-de-morgan :args (@t129 @t138)) % 65.17/65.41 (step @p129 :rule trans :premises (@p128 @p127)) % 65.17/65.41 (step @p130 :rule refl :args (@t131)) % 65.17/65.41 (step @p131 :rule nary_cong :premises (@p130 @p129) :args ((or @t131 (not @t139)))) % 65.17/65.41 (step @p132 :rule bool-and-de-morgan :args (@t50 @t139 true)) % 65.17/65.41 (step @p133 :rule trans :premises (@p132 @p131)) % 65.17/65.41 (step @p134 :rule cong :premises (@p133) :args (@t141)) % 65.17/65.41 (step @p135 :rule trans :premises (@p134 @p112)) % 65.17/65.41 (step @p136 :rule cong :premises (@p135) :args (@t142)) % 65.17/65.41 (step @p137 :rule exists-elim :args ((= (exists @t52 @t140) @t142))) % 65.17/65.41 (step @p138 :rule trans :premises (@p137 @p136)) % 65.17/65.41 (step @p139 :rule aci_norm :args ((= (and @t50 true @t139) @t140))) % 65.17/65.41 (step @p140 :rule aci_norm :args ((= (or false @t120) @t120))) % 65.17/65.41 (step @p141 :rule arith_poly_norm :args ((= (* -1 (- @t143 0)) (* -1 (- @t119 1))))) % 65.17/65.41 (step @p142 :rule arith_poly_norm_rel :premises (@p141) :args ((= (>= @t143 0) @t120))) % 65.17/65.41 (step @p143 :rule refl :args (0)) % 65.17/65.41 (step @p144 :rule arith_poly_norm :args ((= @t144 @t143))) % 65.17/65.41 (step @p145 :rule arith_poly_norm :args ((= @t146 @t144))) % 65.17/65.41 (step @p146 :rule trans :premises (@p145 @p144)) % 65.17/65.41 (step @p147 :rule cong :premises (@p146 @p143) :args (@t147)) % 65.17/65.41 (step @p148 :rule trans :premises (@p147 @p142)) % 65.17/65.41 (step @p149 :rule eq-refl :args (@t27)) % 65.17/65.41 (step @p150 :rule arith_poly_norm :args ((= @t148 @t27))) % 65.17/65.41 (step @p151 :rule refl :args (@t27)) % 65.17/65.41 (step @p152 :rule cong :premises (@p151 @p150) :args (@t149)) % 65.17/65.41 (step @p153 :rule trans :premises (@p152 @p149)) % 65.17/65.41 (step @p154 :rule cong :premises (@p153) :args (@t150)) % 65.17/65.41 (step @p155 :rule trans :premises (@p154 @p102)) % 65.17/65.41 (step @p156 :rule nary_cong :premises (@p155 @p148) :args (@t151)) % 65.17/65.41 (step @p157 :rule trans :premises (@p156 @p140)) % 65.17/65.41 (step @p158 :rule quant-var-elim-eq :args ((= (forall @t31 (or (not @t157) @t156 @t153)) @t151))) % 65.17/65.41 (step @p159 :rule refl :args (@t153)) % 65.17/65.41 (step @p160 :rule refl :args (@t156)) % 65.17/65.41 (step @p161 :rule arith_poly_norm :args ((= @t159 @t158))) % 65.17/65.41 (step @p162 :rule arith_poly_norm_rel :premises (@p161) :args ((= @t155 @t157))) % 65.17/65.41 (step @p163 :rule cong :premises (@p162) :args (@t156)) % 65.17/65.41 (step @p164 :rule nary_cong :premises (@p163 @p160 @p159) :args (@t160)) % 65.17/65.41 (step @p165 :rule aci_norm :args ((= @t161 @t160))) % 65.17/65.41 (step @p166 :rule trans :premises (@p165 @p164)) % 65.17/65.41 (step @p167 :rule cong :premises (@p166) :args (@t162)) % 65.17/65.41 (step @p168 :rule trans :premises (@p167 @p158)) % 65.17/65.41 (step @p169 :rule trans :premises (@p168 @p157)) % 65.17/65.41 (step @p170 :rule nary_cong :premises (@p94 @p93 @p169) :args (@t163)) % 65.17/65.41 (step @p171 :rule quant-miniscope-or :args ((= (forall @t31 @t164) @t163))) % 65.17/65.41 (step @p172 :rule aci_norm :args ((= @t165 @t164))) % 65.17/65.41 (step @p173 :rule cong :premises (@p172) :args ((forall @t31 @t165))) % 65.17/65.41 (step @p174 :rule trans :premises (@p173 @p171)) % 65.17/65.41 (step @p175 :rule trans :premises (@p174 @p170)) % 65.17/65.41 (step @p176 :rule bool-double-not-elim :args (@t153)) % 65.17/65.41 (step @p177 :rule nary_cong :premises (@p160 @p68 @p176 @p66) :args (@t168)) % 65.17/65.41 (step @p178 :rule aci_norm :args ((= (or @t156 (or @t81 (or @t167 @t80))) @t168))) % 65.17/65.41 (step @p179 :rule trans :premises (@p178 @p177)) % 65.17/65.41 (step @p180 :rule bool-and-de-morgan :args (@t166 @t66 true)) % 65.17/65.41 (step @p181 :rule nary_cong :premises (@p68 @p180) :args ((or @t81 (not (and @t166 @t66))))) % 65.17/65.41 (step @p182 :rule bool-and-de-morgan :args (@t67 @t166 (and @t66))) % 65.17/65.41 (step @p183 :rule trans :premises (@p182 @p181)) % 65.17/65.41 (step @p184 :rule nary_cong :premises (@p160 @p183) :args ((or @t156 (not (and @t67 @t166 @t66))))) % 65.17/65.41 (step @p185 :rule bool-and-de-morgan :args (@t155 @t67 (and @t166 @t66))) % 65.17/65.41 (step @p186 :rule trans :premises (@p185 @p184)) % 65.17/65.41 (step @p187 :rule trans :premises (@p186 @p179)) % 65.17/65.41 (step @p188 :rule cong :premises (@p187) :args (@t170)) % 65.17/65.41 (step @p189 :rule trans :premises (@p188 @p175)) % 65.17/65.41 (step @p190 :rule cong :premises (@p189) :args (@t171)) % 65.17/65.41 (step @p191 :rule exists-elim :args ((= (exists @t31 @t169) @t171))) % 65.17/65.41 (step @p192 :rule trans :premises (@p191 @p190)) % 65.17/65.41 (step @p193 :rule arith_poly_norm :args ((= (+ @t20 -1) @t65))) % 65.17/65.41 (step @p194 :rule evaluate :args (@t172)) % 65.17/65.41 (step @p195 :rule refl :args (@t20)) % 65.17/65.41 (step @p196 :rule nary_cong :premises (@p195 @p194) :args (@t173)) % 65.17/65.41 (step @p197 :rule trans :premises (@p196 @p193)) % 65.17/65.41 (step @p198 :rule arith_poly_norm :args ((= @t23 @t173))) % 65.17/65.41 (step @p199 :rule trans :premises (@p198 @p197)) % 65.17/65.41 (step @p200 :rule refl :args (@t3)) % 65.17/65.41 (step @p201 :rule cong :premises (@p200 @p143 @p199) :args (@t24)) % 65.17/65.41 (step @p202 :rule arith_poly_norm :args ((= (* -1 (- @t25 @t20)) (* -1 (- @t152 0))))) % 65.17/65.41 (step @p203 :rule arith_poly_norm_rel :premises (@p202) :args ((= @t174 @t153))) % 65.17/65.41 (step @p204 :rule cong :premises (@p203) :args ((not @t174))) % 65.17/65.41 (step @p205 :rule arith-elim-lt :args (@t25 @t20)) % 65.17/65.41 (step @p206 :rule trans :premises (@p205 @p204)) % 65.17/65.41 (step @p207 :rule arith-elim-leq :args (0 @t22)) % 65.17/65.41 (step @p208 :rule arith_poly_norm :args ((= @t158 @t159))) % 65.17/65.41 (step @p209 :rule arith_poly_norm_rel :premises (@p208) :args ((= @t157 @t155))) % 65.17/65.41 (step @p210 :rule arith_poly_norm :args ((= (+ @t27 -1) @t145))) % 65.17/65.41 (step @p211 :rule nary_cong :premises (@p151 @p194) :args (@t175)) % 65.17/65.41 (step @p212 :rule trans :premises (@p211 @p210)) % 65.17/65.41 (step @p213 :rule arith_poly_norm :args ((= @t28 @t175))) % 65.17/65.41 (step @p214 :rule trans :premises (@p213 @p212)) % 65.17/65.41 (step @p215 :rule refl :args (@t25)) % 65.17/65.41 (step @p216 :rule cong :premises (@p215 @p214) :args (@t29)) % 65.17/65.41 (step @p217 :rule trans :premises (@p216 @p209)) % 65.17/65.41 (step @p218 :rule nary_cong :premises (@p217 @p207 @p206 @p201) :args (@t30)) % 65.17/65.41 (step @p219 :rule cong :premises (@p218) :args (@t32)) % 65.17/65.41 (step @p220 :rule trans :premises (@p219 @p192)) % 65.17/65.41 (step @p221 :rule bool-double-not-elim :args (@t123)) % 65.17/65.41 (step @p222 :rule arith_poly_norm :args ((= (* -1 (- 1 @t177)) (* -1 @t176)))) % 65.17/65.41 (step @p223 :rule arith_poly_norm_rel :premises (@p222) :args ((= (>= 1 @t177) @t178))) % 65.17/65.41 (step @p224 :rule arith-geq-tighten :args (@t122 1)) % 65.17/65.41 (step @p225 :rule trans :premises (@p224 @p223)) % 65.17/65.41 (step @p226 :rule symm :premises (@p225)) % 65.17/65.41 (step @p227 :rule cong :premises (@p226) :args ((not @t178))) % 65.17/65.41 (step @p228 :rule trans :premises (@p227 @p221)) % 65.17/65.41 (step @p229 :rule arith-elim-lt :args (@t33 @t1)) % 65.17/65.41 (step @p230 :rule trans :premises (@p229 @p228)) % 65.17/65.41 (step @p231 :rule cong :premises (@p230) :args (@t35)) % 65.17/65.41 (step @p232 :rule cong :premises (@p231 @p220) :args (@t36)) % 65.17/65.41 (step @p233 :rule aci_norm :args ((= (or false @t126) @t126))) % 65.17/65.41 (step @p234 :rule arith_poly_norm :args ((= (* 1 (- @t179 0)) (* 1 (- @t27 -1))))) % 65.17/65.41 (step @p235 :rule arith_poly_norm_rel :premises (@p234) :args ((= @t180 @t125))) % 65.17/65.41 (step @p236 :rule cong :premises (@p235) :args (@t181)) % 65.17/65.41 (step @p237 :rule arith_poly_norm :args ((= @t182 @t27))) % 65.17/65.41 (step @p238 :rule cong :premises (@p151 @p237) :args (@t183)) % 65.17/65.41 (step @p239 :rule trans :premises (@p238 @p149)) % 65.17/65.41 (step @p240 :rule cong :premises (@p239) :args (@t184)) % 65.17/65.41 (step @p241 :rule trans :premises (@p240 @p102)) % 65.17/65.41 (step @p242 :rule nary_cong :premises (@p241 @p236) :args (@t185)) % 65.17/65.41 (step @p243 :rule trans :premises (@p242 @p233)) % 65.17/65.41 (step @p244 :rule quant-var-elim-eq :args ((= (forall @t42 (or (not @t191) @t190 @t187)) @t185))) % 65.17/65.41 (step @p245 :rule refl :args (@t187)) % 65.17/65.41 (step @p246 :rule refl :args (@t190)) % 65.17/65.41 (step @p247 :rule arith_poly_norm :args ((= @t193 @t192))) % 65.17/65.41 (step @p248 :rule arith_poly_norm_rel :premises (@p247) :args ((= @t189 @t191))) % 65.17/65.41 (step @p249 :rule cong :premises (@p248) :args (@t190)) % 65.17/65.41 (step @p250 :rule nary_cong :premises (@p249 @p246 @p245) :args (@t194)) % 65.17/65.41 (step @p251 :rule aci_norm :args ((= @t195 @t194))) % 65.17/65.41 (step @p252 :rule trans :premises (@p251 @p250)) % 65.17/65.41 (step @p253 :rule cong :premises (@p252) :args (@t196)) % 65.17/65.41 (step @p254 :rule trans :premises (@p253 @p244)) % 65.17/65.41 (step @p255 :rule trans :premises (@p254 @p243)) % 65.17/65.41 (step @p256 :rule refl :args (@t73)) % 65.17/65.41 (step @p257 :rule nary_cong :premises (@p256 @p93 @p255) :args (@t197)) % 65.17/65.41 (step @p258 :rule quant-miniscope-or :args ((= (forall @t42 @t198) @t197))) % 65.17/65.41 (step @p259 :rule aci_norm :args ((= @t199 @t198))) % 65.17/65.41 (step @p260 :rule cong :premises (@p259) :args ((forall @t42 @t199))) % 65.17/65.41 (step @p261 :rule trans :premises (@p260 @p258)) % 65.17/65.41 (step @p262 :rule trans :premises (@p261 @p257)) % 65.17/65.41 (step @p263 :rule nary_cong :premises (@p246 @p245 @p67 @p66) :args (@t200)) % 65.17/65.41 (step @p264 :rule aci_norm :args ((= (or @t190 (or @t187 @t105)) @t200))) % 65.17/65.41 (step @p265 :rule trans :premises (@p264 @p263)) % 65.17/65.41 (step @p266 :rule nary_cong :premises (@p245 @p72) :args ((or @t187 @t106))) % 65.17/65.41 (step @p267 :rule bool-and-de-morgan :args (@t186 @t74 (and @t66))) % 65.17/65.41 (step @p268 :rule trans :premises (@p267 @p266)) % 65.17/65.41 (step @p269 :rule nary_cong :premises (@p246 @p268) :args ((or @t190 (not (and @t186 @t74 @t66))))) % 65.17/65.41 (step @p270 :rule bool-and-de-morgan :args (@t189 @t186 (and @t74 @t66))) % 65.17/65.41 (step @p271 :rule trans :premises (@p270 @p269)) % 65.17/65.41 (step @p272 :rule trans :premises (@p271 @p265)) % 65.17/65.41 (step @p273 :rule cong :premises (@p272) :args (@t202)) % 65.17/65.41 (step @p274 :rule trans :premises (@p273 @p262)) % 65.17/65.41 (step @p275 :rule cong :premises (@p274) :args (@t203)) % 65.17/65.41 (step @p276 :rule exists-elim :args ((= (exists @t42 @t201) @t203))) % 65.17/65.41 (step @p277 :rule trans :premises (@p276 @p275)) % 65.17/65.41 (step @p278 :rule arith_poly_norm :args ((= (* -1 (- @t21 @t20)) (* -1 (- @t72 0))))) % 65.17/65.41 (step @p279 :rule arith_poly_norm_rel :premises (@p278) :args ((= @t204 @t73))) % 65.17/65.41 (step @p280 :rule cong :premises (@p279) :args ((not @t204))) % 65.17/65.41 (step @p281 :rule arith-elim-lt :args (@t21 @t20)) % 65.17/65.41 (step @p282 :rule trans :premises (@p281 @p280)) % 65.17/65.41 (step @p283 :rule arith-elim-leq :args (0 @t38)) % 65.17/65.41 (step @p284 :rule arith_poly_norm :args ((= @t192 @t193))) % 65.17/65.41 (step @p285 :rule arith_poly_norm_rel :premises (@p284) :args ((= @t191 @t189))) % 65.17/65.41 (step @p286 :rule arith_poly_norm :args ((= @t39 @t179))) % 65.17/65.41 (step @p287 :rule refl :args (@t38)) % 65.17/65.41 (step @p288 :rule cong :premises (@p287 @p286) :args (@t40)) % 65.17/65.41 (step @p289 :rule trans :premises (@p288 @p285)) % 65.17/65.41 (step @p290 :rule nary_cong :premises (@p289 @p283 @p282 @p201) :args (@t41)) % 65.17/65.41 (step @p291 :rule cong :premises (@p290) :args (@t43)) % 65.17/65.41 (step @p292 :rule trans :premises (@p291 @p277)) % 65.17/65.41 (step @p293 :rule cong :premises (@p230 @p292) :args (@t44)) % 65.17/65.41 (step @p294 :rule nary_cong :premises (@p293 @p232) :args (@t45)) % 65.17/65.41 (step @p295 :rule arith_poly_norm :args ((= (* 1 @t176) (* -1 (- @t1 @t33))))) % 65.17/65.41 (step @p296 :rule arith_poly_norm_rel :premises (@p295) :args ((= @t46 @t128))) % 65.17/65.41 (step @p297 :rule cong :premises (@p296) :args (@t47)) % 65.17/65.41 (step @p298 :rule cong :premises (@p297 @p294) :args (@t48)) % 65.17/65.41 (step @p299 :rule bool-impl-true1 :args (@t46)) % 65.17/65.41 (step @p300 :rule refl :args (@t50)) % 65.17/65.41 (step @p301 :rule nary_cong :premises (@p300 @p299 @p298) :args (@t51)) % 65.17/65.41 (step @p302 :rule trans :premises (@p301 @p139)) % 65.17/65.41 (step @p303 :rule cong :premises (@p302) :args (@t53)) % 65.17/65.41 (step @p304 :rule trans :premises (@p303 @p138)) % 65.17/65.41 (step @p305 :rule arith_poly_norm :args ((= (* -1 (- @t22 @t205)) (* -1 (- @t78 1))))) % 65.17/65.41 (step @p306 :rule arith_poly_norm_rel :premises (@p305) :args ((= @t206 @t79))) % 65.17/65.41 (step @p307 :rule cong :premises (@p306) :args ((not @t206))) % 65.17/65.41 (step @p308 :rule arith-leq-norm :args (@t22 @t21)) % 65.17/65.41 (step @p309 :rule trans :premises (@p308 @p307)) % 65.17/65.41 (step @p310 :rule cong :premises (@p309) :args ((not (<= @t22 @t21)))) % 65.17/65.41 (step @p311 :rule trans :premises (@p310 @p61)) % 65.17/65.41 (step @p312 :rule arith-elim-leq :args (@t22 @t21)) % 65.17/65.41 (step @p313 :rule symm :premises (@p312)) % 65.17/65.41 (step @p314 :rule cong :premises (@p313) :args ((not (>= @t21 @t22)))) % 65.17/65.41 (step @p315 :rule arith-elim-gt :args (@t22 @t21)) % 65.17/65.41 (step @p316 :rule trans :premises (@p315 @p314)) % 65.17/65.41 (step @p317 :rule trans :premises (@p316 @p311)) % 65.17/65.41 (step @p318 :rule cong :premises (@p317) :args (@t55)) % 65.17/65.41 (step @p319 :rule cong :premises (@p318 @p304) :args (@t56)) % 65.17/65.41 (step @p320 :rule bool-impl-true1 :args (@t54)) % 65.17/65.41 (step @p321 :rule nary_cong :premises (@p320 @p319) :args (@t57)) % 65.17/65.41 (step @p322 :rule trans :premises (@p321 @p82)) % 65.17/65.41 (step @p323 :rule nary_cong :premises (@p207 @p282 @p201) :args (@t58)) % 65.17/65.41 (step @p324 :rule cong :premises (@p323 @p322) :args (@t59)) % 65.17/65.41 (step @p325 :rule cong :premises (@p324) :args (@t61)) % 65.17/65.41 (step @p326 :rule trans :premises (@p325 @p81)) % 65.17/65.41 (step @p327 :rule cong :premises (@p326) :args (@t62)) % 65.17/65.41 (step @p328 :rule eq_resolve :premises (@p8 @p327)) % 65.17/65.41 (step @p329 :rule skolemize :premises (@p328)) % 65.17/65.41 (step @p330 :rule cnf_or_neg :args (@t236 1)) % 65.17/65.41 (step @p331 :rule reordering :premises (@p330) :args ((or @t227 @t236))) % 65.17/65.41 (step @p332 :rule chain_m_resolution :premises (@p331 @p329) :args (@t227 @t237 @t238)) % 65.17/65.41 (step @p333 :rule cnf_or_neg :args (@t236 3)) % 65.17/65.41 (step @p334 :rule chain_m_resolution :premises (@p333 @p329) :args (@t239 @t237 @t238)) % 65.17/65.41 (step @p335 :rule arith_poly_norm :args ((= (* 1 (- @t11 @t9)) (* -1 (- @t9 @t11))))) % 65.17/65.41 (step @p336 :rule arith_poly_norm_rel :premises (@p335) :args ((= @t12 @t240))) % 65.17/65.41 (step @p337 :rule arith_poly_norm :args ((= (* -2 (- @t10 @t242)) (* -2 (- @t241 2))))) % 65.17/65.41 (step @p338 :rule arith_poly_norm_rel :premises (@p337) :args ((= (>= @t10 @t242) @t243))) % 65.17/65.41 (step @p339 :rule arith-elim-leq :args (@t242 @t10)) % 65.17/65.41 (step @p340 :rule trans :premises (@p339 @p338)) % 65.17/65.41 (step @p341 :rule refl :args (@t10)) % 65.17/65.41 (step @p342 :rule arith_poly_norm :args ((= (* 2 @t244) @t242))) % 65.17/65.41 (step @p343 :rule arith_poly_norm :args ((= @t13 @t244))) % 65.17/65.41 (step @p344 :rule refl :args (2)) % 65.17/65.41 (step @p345 :rule nary_cong :premises (@p344 @p343) :args (@t14)) % 65.17/65.41 (step @p346 :rule trans :premises (@p345 @p342)) % 65.17/65.41 (step @p347 :rule cong :premises (@p346 @p341) :args (@t245)) % 65.17/65.41 (step @p348 :rule trans :premises (@p347 @p340)) % 65.17/65.41 (step @p349 :rule cong :premises (@p348) :args ((not @t245))) % 65.17/65.41 (step @p350 :rule arith-elim-leq :args (@t14 @t10)) % 65.17/65.41 (step @p351 :rule symm :premises (@p350)) % 65.17/65.41 (step @p352 :rule cong :premises (@p351) :args ((not (>= @t10 @t14)))) % 65.17/65.41 (step @p353 :rule arith-elim-gt :args (@t14 @t10)) % 65.17/65.41 (step @p354 :rule trans :premises (@p353 @p352)) % 65.17/65.41 (step @p355 :rule trans :premises (@p354 @p349)) % 65.17/65.41 (step @p356 :rule arith_poly_norm :args ((= (* 1 (- @t10 @t15)) (* 1 (- @t241 0))))) % 65.17/65.41 (step @p357 :rule arith_poly_norm_rel :premises (@p356) :args ((= (>= @t10 @t15) @t246))) % 65.17/65.41 (step @p358 :rule arith-elim-leq :args (@t15 @t10)) % 65.17/65.41 (step @p359 :rule trans :premises (@p358 @p357)) % 65.17/65.41 (step @p360 :rule nary_cong :premises (@p359 @p355) :args (@t16)) % 65.17/65.41 (step @p361 :rule cong :premises (@p360 @p336) :args (@t17)) % 65.17/65.41 (step @p362 :rule cong :premises (@p361) :args (@t19)) % 65.17/65.41 (step @p363 :rule eq_resolve :premises (@p5 @p362)) % 65.17/65.41 (step @p364 :rule bool-eq-true :args (@t252)) % 65.17/65.41 (step @p365 :rule eq-refl :args (@t211)) % 65.17/65.41 (step @p366 :rule arith_poly_norm :args ((= @t253 @t248))) % 65.17/65.41 (step @p367 :rule arith_poly_norm :args ((= @t254 @t253))) % 65.17/65.41 (step @p368 :rule trans :premises (@p367 @p366)) % 65.17/65.41 (step @p369 :rule cong :premises (@p368 @p344) :args (@t255)) % 65.17/65.41 (step @p370 :rule cong :premises (@p369) :args (@t256)) % 65.17/65.41 (step @p371 :rule cong :premises (@p368 @p143) :args (@t257)) % 65.17/65.41 (step @p372 :rule nary_cong :premises (@p371 @p370) :args (@t258)) % 65.17/65.41 (step @p373 :rule cong :premises (@p372 @p365) :args (@t259)) % 65.17/65.41 (step @p374 :rule trans :premises (@p373 @p364)) % 65.17/65.41 (step @p375 :rule refl :args (@t260)) % 65.17/65.41 (step @p376 :rule cong :premises (@p375 @p374) :args ((=> @t260 @t259))) % 65.17/65.41 (assume-push @p711 @t260) % 65.17/65.41 (step @p378 :rule instantiate :premises (@p363) :args ((@list @t210 @t211))) % 65.17/65.41 (step-pop @p712 :rule scope :premises (@p378)) % 65.17/65.41 (step @p379 :rule process_scope :premises (@p712) :args (@t259)) % 65.17/65.41 (step @p381 :rule eq_resolve :premises (@p379 @p376)) % 65.17/65.41 (step @p382 :rule implies_elim :premises (@p381)) % 65.17/65.41 (step @p383 :rule chain_m_resolution :premises (@p382 @p363) :args (@t252 @t261 @t262)) % 65.17/65.41 (step @p384 :rule cnf_and_pos :args (@t252 0)) % 65.17/65.41 (step @p385 :rule reordering :premises (@p384) :args ((or @t251 @t263))) % 65.17/65.41 (step @p386 :rule chain_m_resolution :premises (@p385 @p383) :args (@t251 @t261 @t264)) % 65.17/65.41 (step @p387 :rule bool-double-not-elim :args (@t218)) % 65.17/65.41 (step @p388 :rule refl :args (@t236)) % 65.17/65.41 (step @p389 :rule nary_cong :premises (@p388 @p387) :args ((or @t236 (not @t235)))) % 65.17/65.41 (step @p390 :rule cnf_or_neg :args (@t236 0)) % 65.17/65.41 (step @p391 :rule eq_resolve :premises (@p390 @p389)) % 65.17/65.41 (step @p392 :rule reordering :premises (@p391) :args ((or @t218 @t236))) % 65.17/65.41 (step @p393 :rule chain_m_resolution :premises (@p392 @p329) :args (@t218 @t237 @t238)) % 65.17/65.41 (step @p394 :rule refl :args (@t267)) % 65.17/65.41 (step @p395 :rule bool-double-not-elim :args (@t224)) % 65.17/65.41 (step @p396 :rule bool-double-not-elim :args (@t233)) % 65.17/65.41 (step @p397 :rule refl :args (@t235)) % 65.17/65.41 (step @p398 :rule nary_cong :premises (@p397 @p396 @p395 @p394) :args ((or @t235 @t270 @t269 @t267))) % 65.17/65.41 (assume-push @p713 @t218) % 65.17/65.41 (assume-push @p714 @t268) % 65.17/65.41 (assume-push @p715 @t239) % 65.17/65.41 (assume-push @p716 @t266) % 65.17/65.41 (assume-push @p717 @t272) % 65.17/65.41 (step @p404 :rule evaluate :args (@t273)) % 65.17/65.41 (step @p405 :rule evaluate :args ((+ 0 1 -1 0))) % 65.17/65.41 (step @p406 :rule evaluate :args (@t274)) % 65.17/65.41 (step @p407 :rule refl :args (-1)) % 65.17/65.41 (step @p408 :rule nary_cong :premises (@p143 @p89 @p407 @p406) :args (@t275)) % 65.17/65.41 (step @p409 :rule trans :premises (@p408 @p405)) % 65.17/65.41 (step @p410 :rule arith_poly_norm :args ((= @t278 0))) % 65.17/65.41 (step @p411 :rule arith_poly_norm :args ((= @t279 @t278))) % 65.17/65.41 (step @p412 :rule trans :premises (@p411 @p410)) % 65.17/65.41 (step @p413 :rule cong :premises (@p412 @p409) :args (@t280)) % 65.17/65.41 (step @p414 :rule trans :premises (@p413 @p404)) % 65.17/65.41 (step @p415 :rule cong :premises (@p414) :args ((not @t280))) % 65.17/65.41 (step @p416 :rule trans :premises (@p415 @p102)) % 65.17/65.41 (step @p417 :rule arith-elim-lt :args (@t279 @t275)) % 65.17/65.41 (step @p418 :rule trans :premises (@p417 @p416)) % 65.17/65.41 (step @p419 :rule arith_mult_neg :args (-2 @t218)) % 65.17/65.41 (step @p420 :rule evaluate :args (@t281)) % 65.17/65.41 (step @p421 :rule true_elim :premises (@p420)) % 65.17/65.41 (step @p422 :rule and_intro :premises (@p421 @p393)) % 65.17/65.41 (step @p423 :rule modus_ponens :premises (@p422 @p419)) % 65.17/65.41 (step @p424 :rule arith-elim-lt :args (@t211 -1)) % 65.17/65.41 (step @p425 :rule symm :premises (@p424)) % 65.17/65.41 (step @p426 :rule eq_resolve :premises (@p714 @p425)) % 65.17/65.41 (step @p427 :rule arith-elim-lt :args (@t232 1)) % 65.17/65.41 (step @p428 :rule symm :premises (@p427)) % 65.17/65.41 (step @p429 :rule eq_resolve :premises (@p334 @p428)) % 65.17/65.41 (step @p430 :rule arith_sum_ub :premises (@p717 @p429 @p426 @p423)) % 65.17/65.41 (step @p431 false :rule eq_resolve :premises (@p430 @p418)) % 65.17/65.41 (step-pop @p718 :rule scope :premises (@p431)) % 65.17/65.41 (step @p432 :rule process_scope :premises (@p718) :args (false)) % 65.17/65.41 (step @p434 :rule arith_poly_norm :args ((= (* 1 (- @t271 0)) @t282))) % 65.17/65.41 (step @p435 :rule arith_poly_norm_rel :premises (@p434) :args ((= @t272 @t266))) % 65.17/65.41 (step @p436 :rule symm :premises (@p435)) % 65.17/65.41 (step @p437 :rule eq_resolve :premises (@p716 @p436)) % 65.17/65.41 (step @p438 false :rule contra :premises (@p437 @p432)) % 65.17/65.41 (step-pop @p719 :rule scope :premises (@p438)) % 65.17/65.41 (step-pop @p720 :rule scope :premises (@p719)) % 65.17/65.41 (step-pop @p721 :rule scope :premises (@p720)) % 65.17/65.41 (step-pop @p722 :rule scope :premises (@p721)) % 65.17/65.41 (step @p439 :rule process_scope :premises (@p722) :args (false)) % 65.17/65.41 (assume-push @p723 @t218) % 65.17/65.41 (assume-push @p724 @t239) % 65.17/65.41 (assume-push @p725 @t268) % 65.17/65.41 (assume-push @p726 @t266) % 65.17/65.41 (step @p448 :rule and_intro :premises (@p393 @p725 @p334 @p726)) % 65.17/65.41 (step-pop @p727 :rule scope :premises (@p448)) % 65.17/65.41 (step-pop @p728 :rule scope :premises (@p727)) % 65.17/65.41 (step-pop @p729 :rule scope :premises (@p728)) % 65.17/65.41 (step-pop @p730 :rule scope :premises (@p729)) % 65.17/65.41 (step @p449 :rule process_scope :premises (@p730) :args (@t283)) % 65.17/65.41 (step @p454 :rule implies_elim :premises (@p449)) % 65.17/65.41 (step @p455 :rule resolution :premises (@p454 @p439) :args (true @t283)) % 65.17/65.41 (step @p456 :rule not_and :premises (@p455)) % 65.17/65.41 (step @p457 :rule eq_resolve :premises (@p456 @p398)) % 65.17/65.41 (step @p458 :rule arith_poly_norm :args ((= (* 1 (- @t210 @t211)) @t282))) % 65.17/65.41 (step @p459 :rule arith_poly_norm_rel :premises (@p458) :args ((= @t284 @t266))) % 65.17/65.41 (step @p460 :rule bool-double-not-elim :args (@t285)) % 65.17/65.41 (step @p461 :rule arith_poly_norm :args ((= (* -2 (- -1 @t288)) (* -2 (- @t287 2))))) % 65.17/65.41 (step @p462 :rule arith_poly_norm_rel :premises (@p461) :args ((= (>= -1 @t288) (>= @t287 2)))) % 65.17/65.41 (step @p463 :rule arith-geq-tighten :args (@t210 -1)) % 65.17/65.41 (step @p464 :rule trans :premises (@p463 @p462)) % 65.17/65.41 (step @p465 :rule symm :premises (@p464)) % 65.17/65.41 (step @p466 :rule arith_poly_norm :args ((= @t289 @t287))) % 65.17/65.41 (step @p467 :rule arith_poly_norm :args ((= @t290 @t289))) % 65.17/65.41 (step @p468 :rule trans :premises (@p467 @p466)) % 65.17/65.41 (step @p469 :rule cong :premises (@p468 @p344) :args (@t291)) % 65.17/65.41 (step @p470 :rule trans :premises (@p469 @p465)) % 65.17/65.41 (step @p471 :rule cong :premises (@p470) :args (@t292)) % 65.17/65.41 (step @p472 :rule trans :premises (@p471 @p460)) % 65.17/65.41 (step @p473 :rule arith_poly_norm :args ((= (* -1 (- 1 @t288)) (* -1 (- @t287 0))))) % 65.17/65.41 (step @p474 :rule arith_poly_norm_rel :premises (@p473) :args ((= (>= 1 @t288) (>= @t287 0)))) % 65.17/65.41 (step @p475 :rule arith-geq-tighten :args (@t210 1)) % 65.17/65.41 (step @p476 :rule trans :premises (@p475 @p474)) % 65.17/65.41 (step @p477 :rule symm :premises (@p476)) % 65.17/65.41 (step @p478 :rule cong :premises (@p468 @p143) :args (@t293)) % 65.17/65.41 (step @p479 :rule trans :premises (@p478 @p477)) % 65.17/65.41 (step @p480 :rule nary_cong :premises (@p479 @p472) :args (@t294)) % 65.17/65.41 (step @p481 :rule cong :premises (@p480 @p459) :args (@t295)) % 65.17/65.41 (step @p482 :rule cong :premises (@p375 @p481) :args ((=> @t260 @t295))) % 65.17/65.41 (assume-push @p731 @t260) % 65.17/65.41 (step @p484 :rule instantiate :premises (@p363) :args ((@list @t210 @t210))) % 65.17/65.41 (step-pop @p732 :rule scope :premises (@p484)) % 65.17/65.41 (step @p485 :rule process_scope :premises (@p732) :args (@t295)) % 65.17/65.41 (step @p487 :rule eq_resolve :premises (@p485 @p482)) % 65.17/65.41 (step @p488 :rule implies_elim :premises (@p487)) % 65.17/65.41 (step @p489 :rule chain_m_resolution :premises (@p488 @p363) :args (@t299 @t261 @t262)) % 65.17/65.41 (step @p490 :rule cnf_equiv_pos1 :args (@t299)) % 65.17/65.41 (step @p491 :rule reordering :premises (@p490) :args ((or @t266 (not @t298) (not @t299)))) % 65.17/65.41 (step @p492 :rule nary_cong :premises (@p396 @p397 @p460) :args ((or @t270 @t235 (not @t300)))) % 65.17/65.41 (assume-push @p733 @t239) % 65.17/65.41 (assume-push @p734 @t218) % 65.17/65.41 (assume-push @p735 @t300) % 65.17/65.41 (step @p496 :rule evaluate :args (@t301)) % 65.17/65.41 (step @p497 :rule evaluate :args ((+ -1 0 0))) % 65.17/65.41 (step @p406 :rule evaluate :args (@t274)) % 65.17/65.41 (step @p407 :rule refl :args (-1)) % 65.17/65.41 (step @p498 :rule nary_cong :premises (@p407 @p143 @p406) :args (@t302)) % 65.17/65.41 (step @p499 :rule trans :premises (@p498 @p497)) % 65.17/65.41 (step @p500 :rule arith_poly_norm :args ((= @t303 0))) % 65.17/65.41 (step @p501 :rule arith_poly_norm :args ((= @t304 @t303))) % 65.17/65.41 (step @p502 :rule trans :premises (@p501 @p500)) % 65.17/65.41 (step @p503 :rule cong :premises (@p502 @p499) :args (@t305)) % 65.17/65.41 (step @p504 :rule trans :premises (@p503 @p496)) % 65.17/65.41 (step @p505 :rule cong :premises (@p504) :args ((not @t305))) % 65.17/65.41 (step @p506 :rule trans :premises (@p505 @p102)) % 65.17/65.41 (step @p507 :rule arith-elim-lt :args (@t304 @t302)) % 65.17/65.41 (step @p508 :rule trans :premises (@p507 @p506)) % 65.17/65.41 (step @p419 :rule arith_mult_neg :args (-2 @t218)) % 65.17/65.41 (step @p420 :rule evaluate :args (@t281)) % 65.17/65.41 (step @p421 :rule true_elim :premises (@p420)) % 65.17/65.41 (step @p422 :rule and_intro :premises (@p421 @p393)) % 65.17/65.41 (step @p423 :rule modus_ponens :premises (@p422 @p419)) % 65.17/65.41 (step @p427 :rule arith-elim-lt :args (@t232 1)) % 65.17/65.41 (step @p428 :rule symm :premises (@p427)) % 65.17/65.41 (step @p429 :rule eq_resolve :premises (@p334 @p428)) % 65.17/65.41 (step @p509 :rule int_tight_ub :premises (@p429)) % 65.17/65.41 (step @p510 :rule arith-elim-lt :args (@t210 -1)) % 65.17/65.41 (step @p511 :rule symm :premises (@p510)) % 65.17/65.41 (step @p512 :rule eq_resolve :premises (@p735 @p511)) % 65.17/65.41 (step @p513 :rule arith_sum_ub :premises (@p512 @p509 @p423)) % 65.17/65.41 (step @p514 false :rule eq_resolve :premises (@p513 @p508)) % 65.17/65.41 (step-pop @p736 :rule scope :premises (@p514)) % 65.17/65.41 (step-pop @p737 :rule scope :premises (@p736)) % 65.17/65.41 (step-pop @p738 :rule scope :premises (@p737)) % 65.17/65.41 (step @p515 :rule process_scope :premises (@p738) :args (false)) % 65.17/65.41 (step @p519 :rule not_and :premises (@p515)) % 65.17/65.41 (step @p520 :rule eq_resolve :premises (@p519 @p492)) % 65.17/65.41 (step @p521 :rule reordering :premises (@p520) :args ((or @t235 @t233 @t285))) % 65.17/65.41 (step @p522 :rule chain_m_resolution :premises (@p521 @p393 @p334) :args (@t285 (@list false true) (@list @t218 @t233))) % 65.17/65.41 (step @p523 :rule refl :args (@t300)) % 65.17/65.41 (step @p524 :rule bool-double-not-elim :args (@t296)) % 65.17/65.41 (step @p525 :rule refl :args (@t298)) % 65.17/65.41 (step @p526 :rule nary_cong :premises (@p525 @p524 @p523) :args ((or @t298 (not @t297) @t300))) % 65.17/65.41 (step @p527 :rule cnf_and_neg :args (@t298)) % 65.17/65.41 (step @p528 :rule eq_resolve :premises (@p527 @p526)) % 65.17/65.41 (step @p529 :rule reordering :premises (@p528) :args ((or @t296 @t300 @t298))) % 65.17/65.41 (step @p530 :rule cnf_and_pos :args (@t252 1)) % 65.17/65.41 (step @p531 :rule reordering :premises (@p530) :args ((or @t250 @t263))) % 65.17/65.41 (step @p532 :rule chain_m_resolution :premises (@p531 @p383) :args (@t250 @t261 @t264)) % 65.17/65.41 (step @p533 :rule bool-double-not-elim :args (@t249)) % 65.17/65.41 (step @p534 :rule refl :args (@t297)) % 65.17/65.41 (step @p535 :rule nary_cong :premises (@p395 @p534 @p533) :args ((or @t269 @t297 (not @t250)))) % 65.17/65.41 (assume-push @p739 @t268) % 65.17/65.41 (assume-push @p740 @t250) % 65.17/65.41 (assume-push @p741 @t296) % 65.17/65.41 (step @p539 :rule arith-elim-lt :args (@t210 1)) % 65.17/65.41 (step @p540 :rule symm :premises (@p539)) % 65.17/65.41 (assume-push @p742 @t296) % 65.17/65.41 (step @p496 :rule evaluate :args (@t301)) % 65.17/65.41 (step @p542 :rule evaluate :args ((+ -1 2 -2))) % 65.17/65.41 (step @p543 :rule evaluate :args (@t306)) % 65.17/65.41 (step @p544 :rule nary_cong :premises (@p194 @p344 @p543) :args (@t307)) % 65.17/65.41 (step @p545 :rule trans :premises (@p544 @p542)) % 65.17/65.41 (step @p546 :rule arith_poly_norm :args ((= (+ @t308 @t247 0 0) 0))) % 65.17/65.41 (step @p547 :rule arith_poly_norm :args (@t310)) % 65.17/65.41 (step @p548 :rule arith_poly_norm :args ((= @t311 0))) % 65.17/65.41 (step @p549 :rule refl :args (@t247)) % 65.17/65.41 (step @p550 :rule refl :args (@t308)) % 65.17/65.41 (step @p551 :rule nary_cong :premises (@p550 @p549 @p548 @p547) :args (@t312)) % 65.17/65.41 (step @p552 :rule trans :premises (@p551 @p546)) % 65.17/65.41 (step @p553 :rule arith_poly_norm :args ((= @t313 @t312))) % 65.17/65.41 (step @p554 :rule trans :premises (@p553 @p552)) % 65.17/65.41 (step @p555 :rule cong :premises (@p554 @p545) :args (@t314)) % 65.17/65.41 (step @p556 :rule trans :premises (@p555 @p496)) % 65.17/65.41 (step @p557 :rule cong :premises (@p556) :args ((not @t314))) % 65.17/65.41 (step @p558 :rule trans :premises (@p557 @p102)) % 65.17/65.41 (step @p559 :rule arith-elim-lt :args (@t313 @t307)) % 65.17/65.41 (step @p560 :rule trans :premises (@p559 @p558)) % 65.17/65.41 (step @p561 :rule arith_mult_pos :args (2 (< @t211 -1))) % 65.17/65.41 (step @p424 :rule arith-elim-lt :args (@t211 -1)) % 65.17/65.41 (step @p425 :rule symm :premises (@p424)) % 65.17/65.41 (step @p562 :rule eq_resolve :premises (@p739 @p425)) % 65.17/65.41 (step @p563 :rule evaluate :args (@t315)) % 65.17/65.41 (step @p564 :rule true_elim :premises (@p563)) % 65.17/65.41 (step @p565 :rule and_intro :premises (@p564 @p562)) % 65.17/65.41 (step @p566 :rule modus_ponens :premises (@p565 @p561)) % 65.17/65.41 (step @p567 :rule arith-elim-lt :args (@t248 2)) % 65.17/65.41 (step @p568 :rule symm :premises (@p567)) % 65.17/65.41 (step @p569 :rule eq_resolve :premises (@p532 @p568)) % 65.17/65.41 (step @p570 :rule arith_mult_neg :args (-1 @t296)) % 65.17/65.41 (step @p571 :rule evaluate :args (@t316)) % 65.17/65.41 (step @p572 :rule true_elim :premises (@p571)) % 65.17/65.41 (step @p573 :rule and_intro :premises (@p572 @p741)) % 65.17/65.41 (step @p574 :rule modus_ponens :premises (@p573 @p570)) % 65.17/65.41 (step @p575 :rule arith_sum_ub :premises (@p574 @p569 @p566)) % 65.17/65.41 (step @p576 false :rule eq_resolve :premises (@p575 @p560)) % 65.17/65.41 (step-pop @p743 :rule scope :premises (@p576)) % 65.17/65.41 (step @p577 :rule process_scope :premises (@p743) :args (false)) % 65.17/65.41 (step @p579 :rule eq_resolve :premises (@p577 @p540)) % 65.17/65.41 (step @p580 :rule eq_resolve :premises (@p579 @p539)) % 65.17/65.41 (step @p581 false :rule contra :premises (@p741 @p580)) % 65.17/65.41 (step-pop @p744 :rule scope :premises (@p581)) % 65.17/65.41 (step-pop @p745 :rule scope :premises (@p744)) % 65.17/65.41 (step-pop @p746 :rule scope :premises (@p745)) % 65.17/65.41 (step @p582 :rule process_scope :premises (@p746) :args (false)) % 65.17/65.41 (assume-push @p747 @t268) % 65.17/65.41 (assume-push @p748 @t296) % 65.17/65.41 (assume-push @p749 @t250) % 65.17/65.41 (step @p589 :rule and_intro :premises (@p747 @p532 @p748)) % 65.17/65.41 (step-pop @p750 :rule scope :premises (@p589)) % 65.17/65.41 (step-pop @p751 :rule scope :premises (@p750)) % 65.17/65.41 (step-pop @p752 :rule scope :premises (@p751)) % 65.17/65.41 (step @p590 :rule process_scope :premises (@p752) :args (@t317)) % 65.17/65.41 (step @p594 :rule implies_elim :premises (@p590)) % 65.17/65.41 (step @p595 :rule resolution :premises (@p594 @p582) :args (true @t317)) % 65.17/65.41 (step @p596 :rule not_and :premises (@p595)) % 65.17/65.41 (step @p597 :rule eq_resolve :premises (@p596 @p535)) % 65.17/65.41 (step @p598 :rule chain_m_resolution :premises (@p597 @p532 @p529 @p522 @p491 @p489 @p457 @p334 @p393) :args (@t224 (@list true false false true false true true false) (@list @t249 @t296 @t285 @t298 @t299 @t266 @t233 @t218))) % 65.17/65.41 (step @p599 :rule bool-double-not-elim :args (@t217)) % 65.17/65.41 (step @p600 :rule nary_cong :premises (@p388 @p599) :args ((or @t236 (not @t234)))) % 65.17/65.41 (step @p601 :rule cnf_or_neg :args (@t236 2)) % 65.17/65.41 (step @p602 :rule eq_resolve :premises (@p601 @p600)) % 65.17/65.41 (step @p603 :rule reordering :premises (@p602) :args ((or @t217 @t236))) % 65.17/65.41 (step @p604 :rule chain_m_resolution :premises (@p603 @p329) :args (@t217 @t237 @t238)) % 65.17/65.41 (step @p605 :rule refl :args (@t268)) % 65.17/65.41 (step @p606 :rule refl :args (@t234)) % 65.17/65.41 (step @p607 :rule bool-double-not-elim :args (@t226)) % 65.17/65.41 (step @p608 :rule refl :args (@t228)) % 65.17/65.41 (step @p609 :rule nary_cong :premises (@p608 @p607 @p606 @p605) :args ((or @t228 @t318 @t234 @t268))) % 65.17/65.41 (step @p610 :rule cnf_and_neg :args (@t228)) % 65.17/65.41 (step @p611 :rule eq_resolve :premises (@p610 @p609)) % 65.17/65.41 (step @p612 :rule reordering :premises (@p611) :args ((or @t226 @t234 @t228 @t268))) % 65.17/65.41 (step @p613 :rule chain_m_resolution :premises (@p612 @p332 @p604 @p598) :args (@t228 (@list true false false) (@list @t226 @t217 @t224))) % 65.17/65.41 (step @p614 :rule cnf_or_neg :args (@t229 1)) % 65.17/65.41 (step @p615 :rule chain_m_resolution :premises (@p614 @p613) :args (@t229 @t261 (@list @t228))) % 65.17/65.41 (step @p616 :rule cnf_or_neg :args (@t236 5)) % 65.17/65.41 (step @p617 :rule chain_m_resolution :premises (@p616 @p329) :args ((not @t230) @t237 @t238)) % 65.17/65.41 (step @p618 :rule cnf_and_neg :args (@t230)) % 65.17/65.41 (step @p619 :rule chain_m_resolution :premises (@p618 @p617 @p615) :args ((not @t223) (@list true false) (@list @t230 @t229))) % 65.17/65.41 (step @p620 :rule cnf_or_neg :args (@t223 1)) % 65.17/65.41 (step @p621 :rule chain_m_resolution :premises (@p620 @p619) :args ((not @t219) @t237 (@list @t223))) % 65.17/65.41 (step @p622 :rule cnf_and_neg :args (@t219)) % 65.17/65.41 (step @p623 :rule reordering :premises (@p622) :args ((or @t235 @t234 @t219 @t319))) % 65.17/65.41 (step @p624 :rule chain_m_resolution :premises (@p623 @p393 @p604 @p621) :args (@t319 (@list false false true) (@list @t218 @t217 @t219))) % 65.17/65.41 (step @p625 :rule refl :args (@t320)) % 65.17/65.41 (step @p626 :rule bool-double-not-elim :args (@t216)) % 65.17/65.41 (step @p627 :rule nary_cong :premises (@p607 @p396 @p626 @p625) :args ((or @t318 @t270 (not @t319) @t320))) % 65.17/65.41 (assume-push @p753 @t251) % 65.17/65.41 (assume-push @p754 @t227) % 65.17/65.41 (assume-push @p755 @t319) % 65.17/65.41 (assume-push @p756 @t239) % 65.17/65.41 (step @p632 :rule arith-elim-leq :args (@t232 0)) % 65.17/65.41 (step @p633 :rule symm :premises (@p632)) % 65.17/65.41 (step @p634 :rule cong :premises (@p633) :args ((not (>= 0 @t232)))) % 65.17/65.41 (step @p635 :rule arith-elim-gt :args (@t232 0)) % 65.17/65.41 (step @p636 :rule trans :premises (@p635 @p634)) % 65.17/65.41 (step @p637 :rule evaluate :args (@t321)) % 65.17/65.41 (step @p638 :rule refl :args (@t232)) % 65.17/65.41 (step @p639 :rule cong :premises (@p638 @p637) :args (@t322)) % 65.17/65.41 (step @p640 :rule cong :premises (@p639) :args ((not @t322))) % 65.17/65.41 (step @p641 :rule arith-leq-norm :args (@t232 0)) % 65.17/65.41 (step @p642 :rule trans :premises (@p641 @p640)) % 65.17/65.41 (step @p643 :rule cong :premises (@p642) :args ((not @t323))) % 65.17/65.41 (step @p644 :rule trans :premises (@p643 @p396)) % 65.17/65.41 (step @p645 :rule trans :premises (@p636 @p644)) % 65.17/65.41 (step @p646 :rule symm :premises (@p645)) % 65.17/65.41 (step @p647 :rule trans :premises (@p644 @p646)) % 65.17/65.41 (assume-push @p757 @t323) % 65.17/65.41 (step @p404 :rule evaluate :args (@t273)) % 65.17/65.41 (step @p649 :rule evaluate :args ((+ 0 0 0 0))) % 65.17/65.41 (step @p650 :rule evaluate :args (@t324)) % 65.17/65.41 (step @p651 :rule evaluate :args (@t325)) % 65.17/65.41 (step @p652 :rule nary_cong :premises (@p143 @p651 @p651 @p650) :args (@t326)) % 65.17/65.41 (step @p653 :rule trans :premises (@p652 @p649)) % 65.17/65.41 (step @p654 :rule arith_poly_norm :args ((= (+ @t308 @t247 @t231 @t328 @t327 @t208 0) 0))) % 65.17/65.41 (step @p547 :rule arith_poly_norm :args (@t310)) % 65.17/65.41 (step @p655 :rule refl :args (@t208)) % 65.17/65.41 (step @p656 :rule refl :args (@t327)) % 65.17/65.41 (step @p657 :rule refl :args (@t328)) % 65.17/65.41 (step @p658 :rule refl :args (@t231)) % 65.17/65.41 (step @p549 :rule refl :args (@t247)) % 65.17/65.41 (step @p550 :rule refl :args (@t308)) % 65.17/65.41 (step @p659 :rule nary_cong :premises (@p550 @p549 @p658 @p657 @p656 @p655 @p547) :args (@t329)) % 65.17/65.41 (step @p660 :rule trans :premises (@p659 @p654)) % 65.17/65.41 (step @p661 :rule arith_poly_norm :args ((= @t330 @t329))) % 65.17/65.41 (step @p662 :rule trans :premises (@p661 @p660)) % 65.17/65.41 (step @p663 :rule cong :premises (@p662 @p653) :args (@t331)) % 65.17/65.41 (step @p664 :rule trans :premises (@p663 @p404)) % 65.17/65.41 (step @p665 :rule cong :premises (@p664) :args ((not @t331))) % 65.17/65.41 (step @p666 :rule trans :premises (@p665 @p102)) % 65.17/65.41 (step @p667 :rule arith-elim-lt :args (@t330 @t326)) % 65.17/65.41 (step @p668 :rule trans :premises (@p667 @p666)) % 65.17/65.41 (step @p669 :rule arith_mult_neg :args (-1 @t251)) % 65.17/65.41 (step @p571 :rule evaluate :args (@t316)) % 65.17/65.41 (step @p572 :rule true_elim :premises (@p571)) % 65.17/65.41 (step @p670 :rule and_intro :premises (@p572 @p386)) % 65.17/65.41 (step @p671 :rule modus_ponens :premises (@p670 @p669)) % 65.17/65.41 (step @p672 :rule arith_mult_pos :args (2 (< @t225 0))) % 65.17/65.41 (step @p673 :rule arith-elim-lt :args (@t225 0)) % 65.17/65.41 (step @p674 :rule symm :premises (@p673)) % 65.17/65.41 (step @p675 :rule eq_resolve :premises (@p332 @p674)) % 65.17/65.41 (step @p563 :rule evaluate :args (@t315)) % 65.17/65.41 (step @p564 :rule true_elim :premises (@p563)) % 65.17/65.41 (step @p676 :rule and_intro :premises (@p564 @p675)) % 65.17/65.41 (step @p677 :rule modus_ponens :premises (@p676 @p672)) % 65.17/65.41 (step @p678 :rule arith_mult_pos :args (2 (< @t215 0))) % 65.17/65.41 (step @p679 :rule arith-elim-lt :args (@t215 0)) % 65.17/65.41 (step @p680 :rule symm :premises (@p679)) % 65.17/65.41 (step @p681 :rule eq_resolve :premises (@p755 @p680)) % 65.17/65.41 (step @p682 :rule and_intro :premises (@p564 @p681)) % 65.17/65.41 (step @p683 :rule modus_ponens :premises (@p682 @p678)) % 65.17/65.41 (step @p427 :rule arith-elim-lt :args (@t232 1)) % 65.17/65.41 (step @p428 :rule symm :premises (@p427)) % 65.17/65.41 (step @p429 :rule eq_resolve :premises (@p334 @p428)) % 65.17/65.41 (step @p509 :rule int_tight_ub :premises (@p429)) % 65.17/65.41 (step @p684 :rule arith_sum_ub :premises (@p509 @p683 @p677 @p671)) % 65.17/65.41 (step @p685 false :rule eq_resolve :premises (@p684 @p668)) % 65.17/65.41 (step-pop @p758 :rule scope :premises (@p685)) % 65.17/65.41 (step @p686 :rule process_scope :premises (@p758) :args (false)) % 65.17/65.41 (step @p688 :rule eq_resolve :premises (@p686 @p647)) % 65.17/65.41 (step @p689 :rule eq_resolve :premises (@p688 @p636)) % 65.17/65.41 (step @p427 :rule arith-elim-lt :args (@t232 1)) % 65.17/65.41 (step @p428 :rule symm :premises (@p427)) % 65.17/65.41 (step @p429 :rule eq_resolve :premises (@p334 @p428)) % 65.17/65.41 (step @p509 :rule int_tight_ub :premises (@p429)) % 65.17/65.41 (step @p690 false :rule contra :premises (@p509 @p689)) % 65.17/65.41 (step-pop @p759 :rule scope :premises (@p690)) % 65.17/65.41 (step-pop @p760 :rule scope :premises (@p759)) % 65.17/65.41 (step-pop @p761 :rule scope :premises (@p760)) % 65.17/65.41 (step-pop @p762 :rule scope :premises (@p761)) % 65.17/65.41 (step @p691 :rule process_scope :premises (@p762) :args (false)) % 65.17/65.41 (assume-push @p763 @t227) % 65.17/65.41 (assume-push @p764 @t239) % 65.17/65.41 (assume-push @p765 @t319) % 65.17/65.41 (assume-push @p766 @t251) % 65.17/65.41 (step @p700 :rule and_intro :premises (@p386 @p332 @p765 @p334)) % 65.17/65.41 (step-pop @p767 :rule scope :premises (@p700)) % 65.17/65.41 (step-pop @p768 :rule scope :premises (@p767)) % 65.17/65.41 (step-pop @p769 :rule scope :premises (@p768)) % 65.17/65.41 (step-pop @p770 :rule scope :premises (@p769)) % 65.17/65.41 (step @p701 :rule process_scope :premises (@p770) :args (@t332)) % 65.17/65.41 (step @p706 :rule implies_elim :premises (@p701)) % 65.17/65.41 (step @p707 :rule resolution :premises (@p706 @p691) :args (true @t332)) % 65.17/65.41 (step @p708 :rule not_and :premises (@p707)) % 65.17/65.41 (step @p709 :rule eq_resolve :premises (@p708 @p627)) % 65.17/65.41 (step @p710 false :rule chain_m_resolution :premises (@p709 @p624 @p386 @p334 @p332) :args (false (@list true false true true) (@list @t216 @t251 @t233 @t226))) % 65.17/65.41 ) % 65.17/65.41 % SZS output end Proof % 65.17/65.41 % cvc5 exiting %------------------------------------------------------------------------------