%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : SWW647_2 : TPTP v9.2.1. Released v6.1.0. % Transfm : none % Format : tptp:raw % Command : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM % Computer : n009.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:24 AM UTC 2026 % Result : Theorem 53.23s 53.46s % Output : Proof 53.23s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.13/0.13 % Problem : SWW647_2 : TPTP v9.2.1. Released v6.1.0. % 0.13/0.14 % Command : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM % 0.17/0.35 % Computer : n009.cluster.edu % 0.17/0.35 % Model : x86_64 x86_64 % 0.17/0.35 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.17/0.35 % Memory : 8042.1875MB % 0.17/0.35 % OS : Linux 3.10.0-693.el7.x86_64 % 0.17/0.35 % CPULimit : 300 % 0.17/0.35 % WCLimit : 300 % 0.17/0.35 % DateTime : Tue Jun 2 22:21:14 EDT 2026 % 0.17/0.35 % CPUTime : % 0.28/0.53 %----Proving TF0_ARI % 53.23/53.46 --- Run --finite-model-find --decision=internal at 45... % 53.23/53.46 --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 60... % 53.23/53.46 % SZS status Theorem % 53.23/53.46 % SZS output start Proof % 53.23/53.46 ( % 53.23/53.46 (declare-sort tptp.lpintcm_intcm_intrp 0) % 53.23/53.46 (declare-sort tptp.tuple02 0) % 53.23/53.46 (declare-sort tptp.bool1 0) % 53.23/53.46 (declare-sort tptp.ty 0) % 53.23/53.46 (declare-sort tptp.uni 0) % 53.23/53.46 (declare-const tptp.num_of_modc1 (-> tptp.lpintcm_intcm_intrp Int Int Int)) % 53.23/53.46 (declare-const tptp.solution1 (-> Int Int Int Int)) % 53.23/53.46 (declare-const tptp.t2tb1 (-> Int tptp.uni)) % 53.23/53.46 (declare-const tptp.tuple3_proj_11 (-> tptp.ty tptp.ty tptp.ty tptp.uni tptp.uni)) % 53.23/53.46 (declare-const tptp.tuple3 (-> tptp.ty tptp.ty tptp.ty tptp.ty)) % 53.23/53.46 (declare-const tptp.div2 (-> Int Int Int)) % 53.23/53.46 (declare-const tptp.int tptp.ty) % 53.23/53.46 (declare-const tptp.witness1 (-> tptp.ty tptp.uni)) % 53.23/53.46 (declare-const tptp.tb2t (-> tptp.uni tptp.lpintcm_intcm_intrp)) % 53.23/53.46 (declare-const tptp.tuple03 tptp.tuple02) % 53.23/53.46 (declare-const tptp.match_bool1 (-> tptp.ty tptp.bool1 tptp.uni tptp.uni tptp.uni)) % 53.23/53.46 (declare-const tptp.mod2 (-> Int Int Int)) % 53.23/53.46 (declare-const tptp.t2tb (-> tptp.lpintcm_intcm_intrp tptp.uni)) % 53.23/53.46 (declare-const tptp.mk_ref (-> tptp.ty tptp.uni tptp.uni)) % 53.23/53.46 (declare-const tptp.sort1 (-> tptp.ty tptp.uni Bool)) % 53.23/53.46 (declare-const tptp.abs1 (-> Int Int)) % 53.23/53.46 (declare-const tptp.true1 tptp.bool1) % 53.23/53.46 (declare-const tptp.sum_digits1 (-> Int Int)) % 53.23/53.46 (declare-const tptp.p1 (-> tptp.lpintcm_intcm_intrp Int Bool)) % 53.23/53.46 (declare-const tptp.tb2t1 (-> tptp.uni Int)) % 53.23/53.46 (declare-const tptp.tuple3_proj_21 (-> tptp.ty tptp.ty tptp.ty tptp.uni tptp.uni)) % 53.23/53.46 (declare-const tptp.ref (-> tptp.ty tptp.ty)) % 53.23/53.46 (declare-const tptp.num_of1 (-> tptp.lpintcm_intcm_intrp Int Int Int)) % 53.23/53.46 (declare-const tptp.tuple3_proj_31 (-> tptp.ty tptp.ty tptp.ty tptp.uni tptp.uni)) % 53.23/53.46 (declare-const tptp.contents (-> tptp.ty tptp.uni tptp.uni)) % 53.23/53.46 (declare-const tptp.power1 (-> Int Int Int)) % 53.23/53.46 (declare-const tptp.false1 tptp.bool1) % 53.23/53.46 (declare-const tptp.tuple31 (-> tptp.ty tptp.ty tptp.ty tptp.uni tptp.uni tptp.uni tptp.uni)) % 53.23/53.46 (define @t1 () (@var "A" tptp.ty)) % 53.23/53.46 (define @t2 () (@var "X2" tptp.uni)) % 53.23/53.46 (define @t3 () (@var "X1" tptp.uni)) % 53.23/53.46 (define @t4 () (@var "X" tptp.bool1)) % 53.23/53.46 (define @t5 () (@var "Z" tptp.uni)) % 53.23/53.46 (define @t6 () (@var "Z1" tptp.uni)) % 53.23/53.46 (define @t7 () (@list @t1 @t5 @t6)) % 53.23/53.46 (define @t8 () (@var "U" tptp.bool1)) % 53.23/53.46 (define @t9 () (@var "U" tptp.tuple02)) % 53.23/53.46 (define @t10 () (@var "Z" Int)) % 53.23/53.46 (define @t11 () (@var "Y" Int)) % 53.23/53.46 (define @t12 () (@var "X" Int)) % 53.23/53.46 (define @t13 () (<= 0 @t10)) % 53.23/53.46 (define @t14 () (<= @t12 @t11)) % 53.23/53.46 (define @t15 () (@list @t12 @t11 @t10)) % 53.23/53.46 (define @t16 () (@var "X" tptp.uni)) % 53.23/53.46 (define @t17 () (tptp.ref @t1)) % 53.23/53.46 (define @t18 () (@list @t1 @t16)) % 53.23/53.46 (define @t19 () (@var "U" tptp.uni)) % 53.23/53.46 (define @t20 () (@list @t1 @t19)) % 53.23/53.46 (define @t21 () (tptp.abs1 @t12)) % 53.23/53.46 (define @t22 () (<= 0 @t12)) % 53.23/53.46 (define @t23 () (@list @t12)) % 53.23/53.46 (define @t24 () (@list @t12 @t11)) % 53.23/53.46 (define @t25 () (to_real @t12)) % 53.23/53.46 (define @t26 () (to_real @t10)) % 53.23/53.46 (define @t27 () (/ @t26 @t25)) % 53.23/53.46 (define @t28 () (>= @t25 0/1)) % 53.23/53.46 (define @t29 () (ite @t28 (to_int @t27) (- (to_int (- @t27))))) % 53.23/53.46 (define @t30 () (* @t12 @t11)) % 53.23/53.46 (define @t31 () (+ @t30 @t10)) % 53.23/53.46 (define @t32 () (to_real @t31)) % 53.23/53.46 (define @t33 () (/ @t32 @t25)) % 53.23/53.46 (define @t34 () (ite @t28 (to_int @t33) (- (to_int (- @t33))))) % 53.23/53.46 (define @t35 () (< 0 @t12)) % 53.23/53.46 (define @t36 () (@var "N" Int)) % 53.23/53.46 (define @t37 () (tptp.power1 @t12 @t36)) % 53.23/53.46 (define @t38 () (<= 0 @t36)) % 53.23/53.46 (define @t39 () (@list @t12 @t36)) % 53.23/53.46 (define @t40 () (@var "M" Int)) % 53.23/53.46 (define @t41 () (<= 0 @t40)) % 53.23/53.46 (define @t42 () (@list @t12 @t36 @t40)) % 53.23/53.46 (define @t43 () (to_real 10)) % 53.23/53.46 (define @t44 () (to_real @t36)) % 53.23/53.46 (define @t45 () (/ @t44 @t43)) % 53.23/53.46 (define @t46 () (>= @t43 0/1)) % 53.23/53.46 (define @t47 () (ite @t46 (to_int @t45) (- (to_int (- @t45))))) % 53.23/53.46 (define @t48 () (to_int (- @t44 (* (to_real @t47) @t43)))) % 53.23/53.46 (define @t49 () (tptp.sum_digits1 @t36)) % 53.23/53.46 (define @t50 () (<= @t36 0)) % 53.23/53.46 (define @t51 () (@list @t36)) % 53.23/53.46 (define @t52 () (@var "A1" tptp.ty)) % 53.23/53.46 (define @t53 () (@var "A2" tptp.ty)) % 53.23/53.46 (define @t54 () (tptp.tuple3 @t53 @t52 @t1)) % 53.23/53.46 (define @t55 () (@list @t1 @t52 @t53 @t16)) % 53.23/53.46 (define @t56 () (@var "U2" tptp.uni)) % 53.23/53.46 (define @t57 () (@var "U1" tptp.uni)) % 53.23/53.46 (define @t58 () (tptp.tuple31 @t53 @t52 @t1 @t19 @t57 @t56)) % 53.23/53.46 (define @t59 () (@list @t1 @t52 @t53 @t19 @t57 @t56)) % 53.23/53.46 (define @t60 () (@var "X" tptp.lpintcm_intcm_intrp)) % 53.23/53.46 (define @t61 () (@var "I" tptp.lpintcm_intcm_intrp)) % 53.23/53.46 (define @t62 () (@var "J" tptp.uni)) % 53.23/53.46 (define @t63 () (@list @t62)) % 53.23/53.46 (define @t64 () (@var "I" Int)) % 53.23/53.46 (define @t65 () (@var "B" Int)) % 53.23/53.46 (define @t66 () (@var "A" Int)) % 53.23/53.46 (define @t67 () (@var "C" Int)) % 53.23/53.46 (define @t68 () (tptp.t2tb1 @t65)) % 53.23/53.46 (define @t69 () (tptp.t2tb1 @t66)) % 53.23/53.46 (define @t70 () (tptp.tb2t (tptp.tuple31 tptp.int tptp.int tptp.int @t69 @t68 (tptp.t2tb1 @t67)))) % 53.23/53.46 (define @t71 () (@var "P" tptp.lpintcm_intcm_intrp)) % 53.23/53.46 (define @t72 () (tptp.num_of1 @t71 @t66 @t65)) % 53.23/53.46 (define @t73 () (= @t72 0)) % 53.23/53.46 (define @t74 () (@list @t71 @t66 @t65)) % 53.23/53.46 (define @t75 () (- @t65 1)) % 53.23/53.46 (define @t76 () (tptp.num_of1 @t71 @t66 @t75)) % 53.23/53.46 (define @t77 () (tptp.p1 @t71 @t75)) % 53.23/53.46 (define @t78 () (< @t66 @t65)) % 53.23/53.46 (define @t79 () (- @t65 @t66)) % 53.23/53.46 (define @t80 () (<= @t66 @t65)) % 53.23/53.46 (define @t81 () (tptp.num_of1 @t71 (+ @t66 1) @t65)) % 53.23/53.46 (define @t82 () (tptp.p1 @t71 @t66)) % 53.23/53.46 (define @t83 () (tptp.p1 @t71 @t36)) % 53.23/53.46 (define @t84 () (and (<= @t66 @t36) (< @t36 @t65))) % 53.23/53.46 (define @t85 () (@var "K" Int)) % 53.23/53.46 (define @t86 () (@var "J" Int)) % 53.23/53.46 (define @t87 () (tptp.num_of1 @t71 @t64 @t86)) % 53.23/53.46 (define @t88 () (<= @t86 @t85)) % 53.23/53.46 (define @t89 () (<= @t64 @t86)) % 53.23/53.46 (define @t90 () (@var "L" Int)) % 53.23/53.46 (define @t91 () (@var "P2" tptp.lpintcm_intcm_intrp)) % 53.23/53.46 (define @t92 () (tptp.num_of1 @t91 @t66 @t65)) % 53.23/53.46 (define @t93 () (@var "P1" tptp.lpintcm_intcm_intrp)) % 53.23/53.46 (define @t94 () (tptp.num_of1 @t93 @t66 @t65)) % 53.23/53.46 (define @t95 () (forall (@list @t86) (=> (and (<= @t66 @t86) (< @t86 @t65)) (=> (tptp.p1 @t93 @t86) (tptp.p1 @t91 @t86))))) % 53.23/53.46 (define @t96 () (tptp.power1 10 @t40)) % 53.23/53.46 (define @t97 () (tptp.tb2t (tptp.tuple31 tptp.int tptp.int tptp.int @t69 @t68 (tptp.t2tb1 10)))) % 53.23/53.46 (define @t98 () (<= 0 @t66)) % 53.23/53.46 (define @t99 () (tptp.num_of_modc1 @t70 0 @t96)) % 53.23/53.46 (define @t100 () (- @t40 1)) % 53.23/53.46 (define @t101 () (* 137 @t67)) % 53.23/53.46 (define @t102 () (+ @t101 @t66)) % 53.23/53.46 (define @t103 () (to_real @t102)) % 53.23/53.46 (define @t104 () (/ @t103 @t43)) % 53.23/53.46 (define @t105 () (- @t104)) % 53.23/53.46 (define @t106 () (to_int @t105)) % 53.23/53.46 (define @t107 () (- @t106)) % 53.23/53.46 (define @t108 () (to_int @t104)) % 53.23/53.46 (define @t109 () (ite @t46 @t108 @t107)) % 53.23/53.46 (define @t110 () (to_real @t109)) % 53.23/53.46 (define @t111 () (* @t110 @t43)) % 53.23/53.46 (define @t112 () (- @t103 @t111)) % 53.23/53.46 (define @t113 () (to_int @t112)) % 53.23/53.46 (define @t114 () (+ @t113 @t65)) % 53.23/53.46 (define @t115 () (- @t114 @t67)) % 53.23/53.46 (define @t116 () (tptp.solution1 @t109 @t115 @t100)) % 53.23/53.46 (define @t117 () (= @t116 @t99)) % 53.23/53.46 (define @t118 () (=> (< 0 @t40) @t117)) % 53.23/53.46 (define @t119 () (<= 0 @t67)) % 53.23/53.46 (define @t120 () (and @t119 (< @t67 10))) % 53.23/53.46 (define @t121 () (=> @t120 @t118)) % 53.23/53.46 (define @t122 () (=> @t98 @t121)) % 53.23/53.46 (define @t123 () (@list @t66 @t65 @t67 @t40)) % 53.23/53.46 (define @t124 () (forall @t123 @t122)) % 53.23/53.46 (define @t125 () (tptp.mod2 @t12 @t11)) % 53.23/53.46 (define @t126 () (tptp.div2 @t12 @t11)) % 53.23/53.46 (define @t127 () (not (= @t11 0))) % 53.23/53.46 (define @t128 () (<= 0 @t126)) % 53.23/53.46 (define @t129 () (< 0 @t11)) % 53.23/53.46 (define @t130 () (and @t22 @t129)) % 53.23/53.46 (define @t131 () (tptp.abs1 @t11)) % 53.23/53.46 (define @t132 () (<= @t12 0)) % 53.23/53.46 (define @t133 () (and @t22 (< @t12 @t11))) % 53.23/53.46 (define @t134 () (and @t35 (<= 0 @t11) @t13)) % 53.23/53.46 (define @t135 () (@var "Sum" Int)) % 53.23/53.46 (define @t136 () (@var "Sum1" Int)) % 53.23/53.46 (define @t137 () (- @t136 @t135)) % 53.23/53.46 (define @t138 () (= @t137 @t99)) % 53.23/53.46 (define @t139 () (tptp.mod2 @t102 10)) % 53.23/53.46 (define @t140 () (= @t139 @t113)) % 53.23/53.46 (define @t141 () (=> @t140 @t138)) % 53.23/53.46 (define @t142 () (tptp.div2 @t102 10)) % 53.23/53.46 (define @t143 () (= @t142 @t109)) % 53.23/53.46 (define @t144 () (=> @t143 @t141)) % 53.23/53.46 (define @t145 () (+ @t139 @t65)) % 53.23/53.46 (define @t146 () (- @t145 @t67)) % 53.23/53.46 (define @t147 () (tptp.solution1 @t142 @t146 @t100)) % 53.23/53.46 (define @t148 () (+ @t135 @t147)) % 53.23/53.46 (define @t149 () (= @t136 @t148)) % 53.23/53.46 (define @t150 () (=> @t149 @t144)) % 53.23/53.46 (define @t151 () (@list @t136)) % 53.23/53.46 (define @t152 () (forall @t151 @t150)) % 53.23/53.46 (define @t153 () (<= 0 @t142)) % 53.23/53.46 (define @t154 () (<= 0 @t100)) % 53.23/53.46 (define @t155 () (and @t154 @t153)) % 53.23/53.46 (define @t156 () (=> @t155 @t152)) % 53.23/53.46 (define @t157 () (tptp.num_of1 @t70 0 @t96)) % 53.23/53.46 (define @t158 () (= @t135 @t157)) % 53.23/53.46 (define @t159 () (=> @t158 @t156)) % 53.23/53.46 (define @t160 () (and @t119 (<= @t67 9))) % 53.23/53.46 (define @t161 () (=> @t160 @t159)) % 53.23/53.46 (define @t162 () (@list @t135 @t67)) % 53.23/53.46 (define @t163 () (forall @t162 @t161)) % 53.23/53.46 (define @t164 () (<= 0 9)) % 53.23/53.46 (define @t165 () (=> @t164 @t163)) % 53.23/53.46 (define @t166 () (= @t40 0)) % 53.23/53.46 (define @t167 () (not @t166)) % 53.23/53.46 (define @t168 () (=> @t167 @t165)) % 53.23/53.46 (define @t169 () (and @t41 @t98)) % 53.23/53.46 (define @t170 () (=> @t169 @t168)) % 53.23/53.46 (define @t171 () (@list @t40 @t66 @t65)) % 53.23/53.46 (define @t172 () (forall @t171 @t170)) % 53.23/53.46 (define @t173 () (not @t172)) % 53.23/53.46 (define @t174 () (+ -1 @t40)) % 53.23/53.46 (define @t175 () (@var "BOUND_VARIABLE_9085" Int)) % 53.23/53.46 (define @t176 () (+ @t66 (* 137 @t175))) % 53.23/53.46 (define @t177 () (tptp.mod2 @t176 10)) % 53.23/53.46 (define @t178 () (tptp.div2 @t176 10)) % 53.23/53.46 (define @t179 () (= (tptp.num_of_modc1 (tptp.tb2t (tptp.tuple31 tptp.int tptp.int tptp.int @t69 @t68 (tptp.t2tb1 @t175))) 0 @t96) (tptp.solution1 @t178 (+ @t65 (* -1 @t175) @t177) @t174))) % 53.23/53.46 (define @t180 () (to_real @t66)) % 53.23/53.46 (define @t181 () (* 1/10 @t180)) % 53.23/53.46 (define @t182 () (to_int (+ @t181 (* 137/10 (to_real @t175))))) % 53.23/53.46 (define @t183 () (not (= @t66 (+ (* -137 @t175) (* 10 @t182) @t177)))) % 53.23/53.46 (define @t184 () (= @t178 @t182)) % 53.23/53.46 (define @t185 () (= @t182 @t178)) % 53.23/53.46 (define @t186 () (not @t185)) % 53.23/53.46 (define @t187 () (not (>= @t178 0))) % 53.23/53.46 (define @t188 () (>= @t175 10)) % 53.23/53.46 (define @t189 () (not (>= @t175 0))) % 53.23/53.46 (define @t190 () (>= @t40 1)) % 53.23/53.46 (define @t191 () (not @t190)) % 53.23/53.46 (define @t192 () (>= @t66 0)) % 53.23/53.46 (define @t193 () (not @t192)) % 53.23/53.46 (define @t194 () (>= @t40 0)) % 53.23/53.46 (define @t195 () (not @t194)) % 53.23/53.46 (define @t196 () (or @t195 @t193 @t166 @t191 @t189 @t188 @t187 @t186 @t183 @t179)) % 53.23/53.46 (define @t197 () (or @t189 @t188 @t187 @t186 @t183 @t179)) % 53.23/53.46 (define @t198 () (or @t195 @t193 @t166 @t191 @t197)) % 53.23/53.46 (define @t199 () (@list @t40 @t66 @t65 @t175)) % 53.23/53.46 (define @t200 () (forall @t199 @t198)) % 53.23/53.46 (define @t201 () (@list @t175)) % 53.23/53.46 (define @t202 () (forall @t201 @t198)) % 53.23/53.46 (define @t203 () (forall @t201 @t197)) % 53.23/53.46 (define @t204 () (or @t195 @t193 @t166 @t191 @t203)) % 53.23/53.46 (define @t205 () (+ @t66 @t101)) % 53.23/53.46 (define @t206 () (tptp.mod2 @t205 10)) % 53.23/53.46 (define @t207 () (* -1 @t67)) % 53.23/53.46 (define @t208 () (+ @t65 @t207 @t206)) % 53.23/53.46 (define @t209 () (tptp.div2 @t205 10)) % 53.23/53.46 (define @t210 () (tptp.solution1 @t209 @t208 @t174)) % 53.23/53.46 (define @t211 () (= @t99 @t210)) % 53.23/53.46 (define @t212 () (to_real @t67)) % 53.23/53.46 (define @t213 () (+ @t181 (* 137/10 @t212))) % 53.23/53.46 (define @t214 () (to_int @t213)) % 53.23/53.46 (define @t215 () (* 10 @t214)) % 53.23/53.46 (define @t216 () (+ (* -137 @t67) @t215 @t206)) % 53.23/53.46 (define @t217 () (= @t66 @t216)) % 53.23/53.46 (define @t218 () (not @t217)) % 53.23/53.46 (define @t219 () (= @t214 @t209)) % 53.23/53.46 (define @t220 () (not @t219)) % 53.23/53.46 (define @t221 () (>= @t209 0)) % 53.23/53.46 (define @t222 () (not @t221)) % 53.23/53.46 (define @t223 () (>= @t67 10)) % 53.23/53.46 (define @t224 () (>= @t67 0)) % 53.23/53.46 (define @t225 () (not @t224)) % 53.23/53.46 (define @t226 () (or @t225 @t223 @t222 @t220 @t218 @t211)) % 53.23/53.46 (define @t227 () (@list @t67)) % 53.23/53.46 (define @t228 () (forall @t227 @t226)) % 53.23/53.46 (define @t229 () (or @t195 @t193 @t166 @t191 @t228)) % 53.23/53.46 (define @t230 () (or @t166 @t191 @t228)) % 53.23/53.46 (define @t231 () (or @t191 @t228)) % 53.23/53.46 (define @t232 () (=> @t167 @t231)) % 53.23/53.46 (define @t233 () (and @t194 @t192)) % 53.23/53.46 (define @t234 () (not (= @t157 @t157))) % 53.23/53.46 (define @t235 () (or @t225 @t223 @t234 @t222 @t220 @t218 @t211)) % 53.23/53.46 (define @t236 () (not @t158)) % 53.23/53.46 (define @t237 () (or @t236 @t225 @t223 @t236 @t222 @t220 @t218 @t211)) % 53.23/53.46 (define @t238 () (@list @t135)) % 53.23/53.46 (define @t239 () (or @t225 @t223 @t236 @t222 @t220 @t218 @t211)) % 53.23/53.46 (define @t240 () (forall @t238 @t239)) % 53.23/53.46 (define @t241 () (forall @t227 @t240)) % 53.23/53.46 (define @t242 () (forall (@list @t67 @t135) @t239)) % 53.23/53.46 (define @t243 () (forall @t162 @t239)) % 53.23/53.46 (define @t244 () (or @t191 @t243)) % 53.23/53.46 (define @t245 () (or @t191 @t239)) % 53.23/53.46 (define @t246 () (or @t225 @t223 @t236 @t191 @t222 @t220 @t218 @t211)) % 53.23/53.46 (define @t247 () (or @t236 @t191 @t222 @t220 @t218 @t211)) % 53.23/53.46 (define @t248 () (or @t225 @t223)) % 53.23/53.46 (define @t249 () (or @t191 @t222 @t220 @t218 @t211)) % 53.23/53.46 (define @t250 () (or @t220 @t218 @t211)) % 53.23/53.46 (define @t251 () (and @t190 @t221)) % 53.23/53.46 (define @t252 () (=> @t251 @t250)) % 53.23/53.46 (define @t253 () (not @t223)) % 53.23/53.46 (define @t254 () (=> @t158 @t252)) % 53.23/53.46 (define @t255 () (and @t224 @t253)) % 53.23/53.46 (define @t256 () (not @t255)) % 53.23/53.46 (define @t257 () (* -1 @t99)) % 53.23/53.46 (define @t258 () (+ @t135 @t257 @t210)) % 53.23/53.46 (define @t259 () (+ @t210 @t257 @t135)) % 53.23/53.46 (define @t260 () (+ @t135 (* 1 @t210))) % 53.23/53.46 (define @t261 () (+ @t260 @t257)) % 53.23/53.46 (define @t262 () (= @t135 @t261)) % 53.23/53.46 (define @t263 () (* -1 @t210)) % 53.23/53.46 (define @t264 () (+ @t210 @t263 @t135)) % 53.23/53.46 (define @t265 () (+ @t260 @t263)) % 53.23/53.46 (define @t266 () (= @t135 @t265)) % 53.23/53.46 (define @t267 () (not @t266)) % 53.23/53.46 (define @t268 () (or @t267 @t262)) % 53.23/53.46 (define @t269 () (+ @t136 @t257)) % 53.23/53.46 (define @t270 () (= @t135 @t269)) % 53.23/53.46 (define @t271 () (+ @t136 @t263)) % 53.23/53.46 (define @t272 () (= @t135 @t271)) % 53.23/53.46 (define @t273 () (not @t272)) % 53.23/53.46 (define @t274 () (= @t136 @t260)) % 53.23/53.46 (define @t275 () (* -1 (- @t135 @t271))) % 53.23/53.46 (define @t276 () (or @t273 @t273 @t270)) % 53.23/53.46 (define @t277 () (or @t273 @t270)) % 53.23/53.46 (define @t278 () (forall @t151 @t277)) % 53.23/53.46 (define @t279 () (or @t220 @t218 @t278)) % 53.23/53.46 (define @t280 () (or @t220 @t218 @t277)) % 53.23/53.46 (define @t281 () (or @t273 @t220 @t218 @t270)) % 53.23/53.46 (define @t282 () (or @t220 @t218 @t270)) % 53.23/53.46 (define @t283 () (=> @t217 @t270)) % 53.23/53.46 (define @t284 () (=> @t219 @t283)) % 53.23/53.46 (define @t285 () (* -1 @t135)) % 53.23/53.46 (define @t286 () (+ @t285 @t136)) % 53.23/53.46 (define @t287 () (+ @t136 @t285)) % 53.23/53.46 (define @t288 () (* -10 @t214)) % 53.23/53.46 (define @t289 () (+ @t66 @t101 @t288)) % 53.23/53.46 (define @t290 () (to_real @t288)) % 53.23/53.46 (define @t291 () (to_real @t205)) % 53.23/53.46 (define @t292 () (to_real @t215)) % 53.23/53.46 (define @t293 () (+ (* -1/10 @t180) (* -137/10 @t212))) % 53.23/53.46 (define @t294 () (* @t103 1/10)) % 53.23/53.46 (define @t295 () (* -1/1 @t104)) % 53.23/53.46 (define @t296 () (* -1 @t106)) % 53.23/53.46 (define @t297 () (* -1/1 @t111)) % 53.23/53.46 (define @t298 () (+ @t103 @t297)) % 53.23/53.46 (define @t299 () (+ @t135 @t210)) % 53.23/53.46 (define @t300 () (* -1 1)) % 53.23/53.46 (define @t301 () (+ @t40 @t300)) % 53.23/53.46 (define @t302 () (+ @t207 @t139 @t65)) % 53.23/53.46 (define @t303 () (+ @t145 @t207)) % 53.23/53.46 (define @t304 () (+ 9 1)) % 53.23/53.46 (define @t305 () (>= @t67 @t304)) % 53.23/53.46 (define @t306 () (forall @t199 (or @t195 @t193 @t166 @t191 @t189 @t188 @t187 (not @t184) @t183 @t179))) % 53.23/53.46 (define @t307 () (@quantifiers_skolemize @t306 0)) % 53.23/53.46 (define @t308 () (+ -1 @t307)) % 53.23/53.46 (define @t309 () (@quantifiers_skolemize @t306 3)) % 53.23/53.46 (define @t310 () (@quantifiers_skolemize @t306 1)) % 53.23/53.46 (define @t311 () (+ @t310 (* 137 @t309))) % 53.23/53.46 (define @t312 () (tptp.mod2 @t311 10)) % 53.23/53.46 (define @t313 () (@quantifiers_skolemize @t306 2)) % 53.23/53.46 (define @t314 () (+ @t313 (* -1 @t309) @t312)) % 53.23/53.46 (define @t315 () (tptp.div2 @t311 10)) % 53.23/53.46 (define @t316 () (tptp.num_of_modc1 (tptp.tb2t (tptp.tuple31 tptp.int tptp.int tptp.int (tptp.t2tb1 @t310) (tptp.t2tb1 @t313) (tptp.t2tb1 @t309))) 0 (tptp.power1 10 @t307))) % 53.23/53.46 (define @t317 () (= @t316 (tptp.solution1 @t315 @t314 @t308))) % 53.23/53.46 (define @t318 () (to_int (+ (* 1/10 (to_real @t310)) (* 137/10 (to_real @t309))))) % 53.23/53.46 (define @t319 () (@purify @t318)) % 53.23/53.46 (define @t320 () (* -137 @t309)) % 53.23/53.46 (define @t321 () (+ @t320 (* 10 @t319) @t312)) % 53.23/53.46 (define @t322 () (= @t310 @t321)) % 53.23/53.46 (define @t323 () (not @t322)) % 53.23/53.46 (define @t324 () (= @t319 @t315)) % 53.23/53.46 (define @t325 () (not @t324)) % 53.23/53.46 (define @t326 () (not (>= @t315 0))) % 53.23/53.46 (define @t327 () (>= @t309 10)) % 53.23/53.46 (define @t328 () (>= @t309 0)) % 53.23/53.46 (define @t329 () (not @t328)) % 53.23/53.46 (define @t330 () (>= @t307 1)) % 53.23/53.46 (define @t331 () (not @t330)) % 53.23/53.46 (define @t332 () (= @t307 0)) % 53.23/53.46 (define @t333 () (>= @t310 0)) % 53.23/53.46 (define @t334 () (not @t333)) % 53.23/53.46 (define @t335 () (not (>= @t307 0))) % 53.23/53.46 (define @t336 () (or @t335 @t334 @t332 @t331 @t329 @t327 @t326 @t325 @t323 @t317)) % 53.23/53.46 (define @t337 () (not @t336)) % 53.23/53.46 (define @t338 () (not @t306)) % 53.23/53.46 (define @t339 () (* 10 @t318)) % 53.23/53.46 (define @t340 () (+ @t320 @t339 @t312)) % 53.23/53.46 (define @t341 () (= @t310 @t340)) % 53.23/53.46 (define @t342 () (not @t341)) % 53.23/53.46 (define @t343 () (= @t315 @t319)) % 53.23/53.46 (define @t344 () (= @t315 @t318)) % 53.23/53.46 (define @t345 () (not @t344)) % 53.23/53.46 (define @t346 () (or @t335 @t334 @t332 @t331 @t329 @t327 @t326 @t345 @t342 @t317)) % 53.23/53.46 (define @t347 () (not @t346)) % 53.23/53.46 (define @t348 () (@list true)) % 53.23/53.46 (define @t349 () (@list @t336)) % 53.23/53.46 (define @t350 () (+ @t66 @t65 (* 136 @t67) @t288)) % 53.23/53.46 (define @t351 () (tptp.solution1 @t214 @t350 @t174)) % 53.23/53.46 (define @t352 () (= @t99 @t351)) % 53.23/53.46 (define @t353 () (or @t193 @t225 @t223 @t191 @t352)) % 53.23/53.46 (define @t354 () (or @t225 @t223 @t191 @t352)) % 53.23/53.46 (define @t355 () (=> @t190 @t352)) % 53.23/53.46 (define @t356 () (=> @t255 @t355)) % 53.23/53.46 (define @t357 () (+ @t207 @t113 @t65)) % 53.23/53.46 (define @t358 () (+ @t114 @t207)) % 53.23/53.46 (define @t359 () (+ @t40 1)) % 53.23/53.46 (define @t360 () (>= 0 @t40)) % 53.23/53.46 (define @t361 () (* -10 @t318)) % 53.23/53.46 (define @t362 () (* 136 @t309)) % 53.23/53.46 (define @t363 () (+ @t310 @t313 @t362 @t361)) % 53.23/53.46 (define @t364 () (tptp.solution1 @t318 @t363 @t308)) % 53.23/53.46 (define @t365 () (= @t316 @t364)) % 53.23/53.46 (define @t366 () (or @t334 @t329 @t327 @t331 @t365)) % 53.23/53.46 (define @t367 () (forall @t123 @t353)) % 53.23/53.46 (define @t368 () (+ @t310 @t313 @t362 (* -10 @t319))) % 53.23/53.46 (define @t369 () (tptp.solution1 @t319 @t368 @t308)) % 53.23/53.46 (define @t370 () (= @t316 @t369)) % 53.23/53.46 (define @t371 () (or @t334 @t329 @t327 @t331 @t370)) % 53.23/53.46 (define @t372 () (= @t314 @t368)) % 53.23/53.46 (define @t373 () (= (* 137 (- @t314 @t368)) (* -137 (- @t310 @t321)))) % 53.23/53.46 (define @t374 () (= @t372 @t322)) % 53.23/53.46 (define @t375 () (and @t322 @t324 @t370)) % 53.23/53.46 (assume @p1 (forall (@list @t1) (tptp.sort1 @t1 (tptp.witness1 @t1)))) % 53.23/53.46 (assume @p2 (forall (@list @t1 @t4 @t3 @t2) (tptp.sort1 @t1 (tptp.match_bool1 @t1 @t4 @t3 @t2)))) % 53.23/53.46 (assume @p3 (forall @t7 (=> (tptp.sort1 @t1 @t5) (= (tptp.match_bool1 @t1 tptp.true1 @t5 @t6) @t5)))) % 53.23/53.46 (assume @p4 (forall @t7 (=> (tptp.sort1 @t1 @t6) (= (tptp.match_bool1 @t1 tptp.false1 @t5 @t6) @t6)))) % 53.23/53.46 (assume @p5 (not (= tptp.true1 tptp.false1))) % 53.23/53.46 (assume @p6 (forall (@list @t8) (or (= @t8 tptp.true1) (= @t8 tptp.false1)))) % 53.23/53.46 (assume @p7 (forall (@list @t9) (= @t9 tptp.tuple03))) % 53.23/53.46 (assume @p8 (forall @t15 (=> @t14 (=> @t13 (<= (* @t12 @t10) (* @t11 @t10)))))) % 53.23/53.46 (assume @p9 (forall @t18 (tptp.sort1 @t17 (tptp.mk_ref @t1 @t16)))) % 53.23/53.46 (assume @p10 (forall @t18 (tptp.sort1 @t1 (tptp.contents @t1 @t16)))) % 53.23/53.46 (assume @p11 (forall @t20 (=> (tptp.sort1 @t1 @t19) (= (tptp.contents @t1 (tptp.mk_ref @t1 @t19)) @t19)))) % 53.23/53.46 (assume @p12 (forall @t20 (=> (tptp.sort1 @t17 @t19) (= @t19 (tptp.mk_ref @t1 (tptp.contents @t1 @t19)))))) % 53.23/53.46 (assume @p13 (forall @t23 (and (=> @t22 (= @t21 @t12)) (=> (not @t22) (= @t21 (- @t12)))))) % 53.23/53.46 (assume @p14 (forall @t24 (= (<= @t21 @t11) (and (<= (- @t11) @t12) @t14)))) % 53.23/53.46 (assume @p15 (forall @t23 (<= 0 @t21))) % 53.23/53.46 (assume @p16 (forall @t15 (=> @t35 (= @t34 (+ @t11 @t29))))) % 53.23/53.46 (assume @p17 (forall @t15 (=> @t35 (= (to_int (- @t32 (* (to_real @t34) @t25))) (to_int (- @t26 (* (to_real @t29) @t25))))))) % 53.23/53.46 (assume @p18 (forall @t23 (= (tptp.power1 @t12 0) 1))) % 53.23/53.46 (assume @p19 (forall @t39 (=> @t38 (= (tptp.power1 @t12 (+ @t36 1)) (* @t12 @t37))))) % 53.23/53.46 (assume @p20 (forall @t39 (=> (< 0 @t36) (= @t37 (* @t12 (tptp.power1 @t12 (- @t36 1))))))) % 53.23/53.46 (assume @p21 (forall @t23 (= (tptp.power1 @t12 1) @t12))) % 53.23/53.46 (assume @p22 (forall @t42 (=> @t38 (=> @t41 (= (tptp.power1 @t12 (+ @t36 @t40)) (* @t37 (tptp.power1 @t12 @t40))))))) % 53.23/53.46 (assume @p23 (forall @t42 (=> @t38 (=> @t41 (= (tptp.power1 @t12 (* @t36 @t40)) (tptp.power1 @t37 @t40)))))) % 53.23/53.46 (assume @p24 (forall (@list @t12 @t11 @t36) (=> @t38 (= (tptp.power1 @t30 @t36) (* @t37 (tptp.power1 @t11 @t36)))))) % 53.23/53.46 (assume @p25 (forall @t51 (and (=> @t50 (= @t49 0)) (=> (not @t50) (= @t49 (+ (tptp.sum_digits1 @t47) @t48)))))) % 53.23/53.46 (assume @p26 (forall (@list @t1 @t52 @t53 @t16 @t3 @t2) (tptp.sort1 @t54 (tptp.tuple31 @t53 @t52 @t1 @t16 @t3 @t2)))) % 53.23/53.46 (assume @p27 (forall @t55 (tptp.sort1 @t53 (tptp.tuple3_proj_11 @t53 @t52 @t1 @t16)))) % 53.23/53.46 (assume @p28 (forall @t59 (=> (tptp.sort1 @t53 @t19) (= (tptp.tuple3_proj_11 @t53 @t52 @t1 @t58) @t19)))) % 53.23/53.46 (assume @p29 (forall @t55 (tptp.sort1 @t52 (tptp.tuple3_proj_21 @t53 @t52 @t1 @t16)))) % 53.23/53.46 (assume @p30 (forall @t59 (=> (tptp.sort1 @t52 @t57) (= (tptp.tuple3_proj_21 @t53 @t52 @t1 @t58) @t57)))) % 53.23/53.46 (assume @p31 (forall @t55 (tptp.sort1 @t1 (tptp.tuple3_proj_31 @t53 @t52 @t1 @t16)))) % 53.23/53.46 (assume @p32 (forall @t59 (=> (tptp.sort1 @t1 @t56) (= (tptp.tuple3_proj_31 @t53 @t52 @t1 @t58) @t56)))) % 53.23/53.46 (assume @p33 (forall (@list @t1 @t52 @t53 @t19) (=> (tptp.sort1 @t54 @t19) (= @t19 (tptp.tuple31 @t53 @t52 @t1 (tptp.tuple3_proj_11 @t53 @t52 @t1 @t19) (tptp.tuple3_proj_21 @t53 @t52 @t1 @t19) (tptp.tuple3_proj_31 @t53 @t52 @t1 @t19)))))) % 53.23/53.46 (assume @p34 (forall (@list @t60) (tptp.sort1 (tptp.tuple3 tptp.int tptp.int tptp.int) (tptp.t2tb @t60)))) % 53.23/53.46 (assume @p35 (forall (@list @t61) (= (tptp.tb2t (tptp.t2tb @t61)) @t61))) % 53.23/53.46 (assume @p36 (forall @t63 (= (tptp.t2tb (tptp.tb2t @t62)) @t62))) % 53.23/53.46 (assume @p37 (forall @t23 (tptp.sort1 tptp.int (tptp.t2tb1 @t12)))) % 53.23/53.46 (assume @p38 (forall (@list @t64) (= (tptp.tb2t1 (tptp.t2tb1 @t64)) @t64))) % 53.23/53.46 (assume @p39 (forall @t63 (= (tptp.t2tb1 (tptp.tb2t1 @t62)) @t62))) % 53.23/53.46 (assume @p40 (forall (@list @t36 @t66 @t65 @t67) (= (tptp.p1 @t70 @t36) (and (<= 0 @t48) (< @t48 @t67) (= @t49 (+ (tptp.sum_digits1 (+ (* 137 @t36) @t66)) @t65)))))) % 53.23/53.46 (assume @p41 (forall @t74 (=> (<= @t65 @t66) @t73))) % 53.23/53.46 (assume @p42 (forall @t74 (=> @t78 (=> (not @t77) (= @t72 @t76))))) % 53.23/53.46 (assume @p43 (forall @t74 (=> @t78 (=> @t77 (= @t72 (+ 1 @t76)))))) % 53.23/53.46 (assume @p44 (forall @t74 (=> @t78 (and (<= 0 @t72) (<= @t72 @t79))))) % 53.23/53.46 (assume @p45 (forall (@list @t71 @t66 @t65 @t67) (=> (and @t80 (<= @t65 @t67)) (= (tptp.num_of1 @t71 @t66 @t67) (+ @t72 (tptp.num_of1 @t71 @t65 @t67)))))) % 53.23/53.46 (assume @p46 (forall @t74 (=> @t78 (=> (not @t82) (= @t72 @t81))))) % 53.23/53.46 (assume @p47 (forall @t74 (=> @t78 (=> @t82 (= @t72 (+ 1 @t81)))))) % 53.23/53.46 (assume @p48 (forall @t74 (=> (forall @t51 (=> @t84 (not @t83))) @t73))) % 53.23/53.46 (assume @p49 (forall @t74 (=> @t80 (=> (forall @t51 (=> @t84 @t83)) (= @t72 @t79))))) % 53.23/53.46 (assume @p50 (forall (@list @t71 @t64 @t86 @t85) (=> (and @t89 @t88) (<= @t87 (tptp.num_of1 @t71 @t64 @t85))))) % 53.23/53.46 (assume @p51 (forall (@list @t71 @t64 @t86 @t85 @t90) (=> (and @t89 @t88 (< @t85 @t90)) (=> (tptp.p1 @t71 @t85) (< @t87 (tptp.num_of1 @t71 @t64 @t90)))))) % 53.23/53.46 (assume @p52 (forall (@list @t93 @t91 @t66 @t65) (=> @t95 (<= @t94 @t92)))) % 53.23/53.46 (assume @p53 (forall (@list @t93 @t91 @t66 @t65 @t64) (=> (and (<= @t66 @t64) (< @t64 @t65)) (=> @t95 (=> (not (tptp.p1 @t93 @t64)) (=> (tptp.p1 @t91 @t64) (< @t94 @t92))))))) % 53.23/53.46 (assume @p54 (forall (@list @t66 @t65 @t40) (= (tptp.solution1 @t66 @t65 @t40) (tptp.num_of1 @t97 0 @t96)))) % 53.23/53.46 (assume @p55 (forall (@list @t12 @t11 @t66 @t65 @t67) (= (tptp.num_of_modc1 @t70 @t12 @t11) (- (tptp.num_of1 (tptp.tb2t (tptp.tuple31 tptp.int tptp.int tptp.int @t69 @t68 (tptp.t2tb1 (+ @t67 1)))) @t12 @t11) (tptp.num_of1 @t70 @t12 @t11))))) % 53.23/53.46 (assume @p56 (forall (@list @t66 @t65) (=> @t98 (=> (= (+ (tptp.sum_digits1 @t66) @t65) 0) (tptp.p1 @t97 0))))) % 53.23/53.46 (assume @p57 (forall (@list @t66 @t65 @t12 @t11) (= (tptp.num_of1 (tptp.tb2t (tptp.tuple31 tptp.int tptp.int tptp.int @t69 @t68 (tptp.t2tb1 0))) @t12 @t11) 0))) % 53.23/53.46 (assume @p58 @t124) % 53.23/53.46 (assume @p59 (forall @t24 (=> @t127 (= @t12 (+ (* @t11 @t126) @t125))))) % 53.23/53.46 (assume @p60 (forall @t24 (=> @t130 (and @t128 (<= @t126 @t12))))) % 53.23/53.46 (assume @p61 (forall @t24 (=> @t127 (and (< (- @t131) @t125) (< @t125 @t131))))) % 53.23/53.46 (assume @p62 (forall @t24 (=> @t130 @t128))) % 53.23/53.46 (assume @p63 (forall @t24 (=> (and @t132 @t129) (<= @t126 0)))) % 53.23/53.46 (assume @p64 (forall @t24 (=> (and @t22 @t127) (<= 0 @t125)))) % 53.23/53.46 (assume @p65 (forall @t24 (=> (and @t132 @t127) (<= @t125 0)))) % 53.23/53.46 (assume @p66 (forall @t24 (=> @t127 (<= (tptp.abs1 (* @t126 @t11)) @t21)))) % 53.23/53.46 (assume @p67 (forall @t23 (= (tptp.div2 @t12 1) @t12))) % 53.23/53.46 (assume @p68 (forall @t23 (= (tptp.mod2 @t12 1) 0))) % 53.23/53.46 (assume @p69 (forall @t24 (=> @t133 (= @t126 0)))) % 53.23/53.46 (assume @p70 (forall @t24 (=> @t133 (= @t125 @t12)))) % 53.23/53.46 (assume @p71 (forall @t15 (=> @t134 (= (tptp.div2 @t31 @t12) (+ @t11 (tptp.div2 @t10 @t12)))))) % 53.23/53.46 (assume @p72 (forall @t15 (=> @t134 (= (tptp.mod2 @t31 @t12) (tptp.mod2 @t10 @t12))))) % 53.23/53.46 (assume @p73 @t173) % 53.23/53.46 (assume @p74 true) % 53.23/53.46 (step @p75 :rule refl :args (@t179)) % 53.23/53.46 (step @p76 :rule refl :args (@t183)) % 53.23/53.46 (step @p77 :rule arith_poly_norm :args ((= (* 1 (- @t182 @t178)) (* -1 (- @t178 @t182))))) % 53.23/53.46 (step @p78 :rule arith_poly_norm_rel :premises (@p77) :args ((= @t185 @t184))) % 53.23/53.46 (step @p79 :rule cong :premises (@p78) :args (@t186)) % 53.23/53.46 (step @p80 :rule refl :args (@t187)) % 53.23/53.46 (step @p81 :rule refl :args (@t188)) % 53.23/53.46 (step @p82 :rule refl :args (@t189)) % 53.23/53.46 (step @p83 :rule refl :args (@t191)) % 53.23/53.46 (step @p84 :rule refl :args (@t166)) % 53.23/53.46 (step @p85 :rule refl :args (@t193)) % 53.23/53.46 (step @p86 :rule refl :args (@t195)) % 53.23/53.46 (step @p87 :rule nary_cong :premises (@p86 @p85 @p84 @p83 @p82 @p81 @p80 @p79 @p76 @p75) :args (@t196)) % 53.23/53.46 (step @p88 :rule aci_norm :args ((= @t198 @t196))) % 53.23/53.46 (step @p89 :rule trans :premises (@p88 @p87)) % 53.23/53.46 (step @p90 :rule cong :premises (@p89) :args (@t200)) % 53.23/53.46 (step @p91 :rule quant-merge-prenex :args ((= (forall @t171 @t202) @t200))) % 53.23/53.46 (step @p92 :rule alpha_equiv :args (@t203 (@list @t175) (@list @t67))) % 53.23/53.46 (step @p93 :rule refl :args (@t191)) % 53.23/53.46 (step @p94 :rule refl :args (@t166)) % 53.23/53.46 (step @p95 :rule refl :args (@t193)) % 53.23/53.46 (step @p96 :rule refl :args (@t195)) % 53.23/53.46 (step @p97 :rule nary_cong :premises (@p96 @p95 @p94 @p93 @p92) :args (@t204)) % 53.23/53.46 (step @p98 :rule quant-miniscope-or :args ((= @t202 @t204))) % 53.23/53.46 (step @p99 :rule trans :premises (@p98 @p97)) % 53.23/53.46 (step @p100 :rule symm :premises (@p99)) % 53.23/53.46 (step @p101 :rule cong :premises (@p100) :args ((forall @t171 @t229))) % 53.23/53.46 (step @p102 :rule trans :premises (@p101 @p91)) % 53.23/53.46 (step @p103 :rule trans :premises (@p102 @p90)) % 53.23/53.46 (step @p104 :rule aci_norm :args ((= (or (or @t195 @t193) @t230) @t229))) % 53.23/53.46 (step @p105 :rule aci_norm :args ((= (or @t166 @t231) @t230))) % 53.23/53.46 (step @p106 :rule refl :args (@t231)) % 53.23/53.46 (step @p107 :rule bool-double-not-elim :args (@t166)) % 53.23/53.46 (step @p108 :rule nary_cong :premises (@p107 @p106) :args ((or (not @t167) @t231))) % 53.23/53.46 (step @p109 :rule bool-impl-elim :args (@t167 @t231)) % 53.23/53.46 (step @p110 :rule trans :premises (@p109 @p108)) % 53.23/53.46 (step @p111 :rule trans :premises (@p110 @p105)) % 53.23/53.46 (step @p112 :rule bool-and-de-morgan :args (@t194 @t192 true)) % 53.23/53.46 (step @p113 :rule nary_cong :premises (@p112 @p111) :args ((or (not @t233) @t232))) % 53.23/53.46 (step @p114 :rule trans :premises (@p113 @p104)) % 53.23/53.46 (step @p115 :rule bool-impl-elim :args (@t233 @t232)) % 53.23/53.46 (step @p116 :rule trans :premises (@p115 @p114)) % 53.23/53.46 (step @p117 :rule cong :premises (@p116) :args ((forall @t171 (=> @t233 @t232)))) % 53.23/53.46 (step @p118 :rule trans :premises (@p117 @p103)) % 53.23/53.46 (step @p119 :rule bool-impl-true2 :args (@t231)) % 53.23/53.46 (step @p120 :rule aci_norm :args ((= (or @t225 @t223 false @t222 @t220 @t218 @t211) @t226))) % 53.23/53.46 (step @p121 :rule refl :args (@t211)) % 53.23/53.46 (step @p122 :rule refl :args (@t218)) % 53.23/53.46 (step @p123 :rule refl :args (@t220)) % 53.23/53.46 (step @p124 :rule refl :args (@t222)) % 53.23/53.46 (step @p125 :rule evaluate :args ((not true))) % 53.23/53.46 (step @p126 :rule eq-refl :args (@t157)) % 53.23/53.46 (step @p127 :rule cong :premises (@p126) :args (@t234)) % 53.23/53.46 (step @p128 :rule trans :premises (@p127 @p125)) % 53.23/53.46 (step @p129 :rule refl :args (@t223)) % 53.23/53.46 (step @p130 :rule refl :args (@t225)) % 53.23/53.46 (step @p131 :rule nary_cong :premises (@p130 @p129 @p128 @p124 @p123 @p122 @p121) :args (@t235)) % 53.23/53.46 (step @p132 :rule trans :premises (@p131 @p120)) % 53.23/53.46 (step @p133 :rule cong :premises (@p132) :args ((forall @t227 @t235))) % 53.23/53.46 (step @p134 :rule quant-var-elim-eq :args ((= (forall @t238 @t237) @t235))) % 53.23/53.46 (step @p135 :rule aci_norm :args ((= @t239 @t237))) % 53.23/53.46 (step @p136 :rule cong :premises (@p135) :args (@t240)) % 53.23/53.46 (step @p137 :rule trans :premises (@p136 @p134)) % 53.23/53.46 (step @p138 :rule cong :premises (@p137) :args (@t241)) % 53.23/53.46 (step @p139 :rule quant-merge-prenex :args ((= @t241 @t242))) % 53.23/53.46 (step @p140 :rule symm :premises (@p139)) % 53.23/53.46 (step @p141 :rule quant_var_reordering :args ((= @t243 @t242))) % 53.23/53.46 (step @p142 :rule trans :premises (@p141 @p140 @p138)) % 53.23/53.46 (step @p143 :rule trans :premises (@p142 @p133)) % 53.23/53.46 (step @p144 :rule nary_cong :premises (@p83 @p143) :args (@t244)) % 53.23/53.46 (step @p145 :rule quant-miniscope-or :args ((= (forall @t162 @t245) @t244))) % 53.23/53.46 (step @p146 :rule aci_norm :args ((= @t246 @t245))) % 53.23/53.46 (step @p147 :rule cong :premises (@p146) :args ((forall @t162 @t246))) % 53.23/53.46 (step @p148 :rule trans :premises (@p147 @p145)) % 53.23/53.46 (step @p149 :rule trans :premises (@p148 @p144)) % 53.23/53.46 (step @p150 :rule aci_norm :args ((= (or @t248 @t247) @t246))) % 53.23/53.46 (step @p151 :rule aci_norm :args ((= (or @t236 @t249) @t247))) % 53.23/53.46 (step @p152 :rule aci_norm :args ((= (or (or @t191 @t222) @t250) @t249))) % 53.23/53.46 (step @p153 :rule refl :args (@t250)) % 53.23/53.46 (step @p154 :rule bool-and-de-morgan :args (@t190 @t221 true)) % 53.23/53.46 (step @p155 :rule nary_cong :premises (@p154 @p153) :args ((or (not @t251) @t250))) % 53.23/53.46 (step @p156 :rule trans :premises (@p155 @p152)) % 53.23/53.46 (step @p157 :rule bool-impl-elim :args (@t251 @t250)) % 53.23/53.46 (step @p158 :rule trans :premises (@p157 @p156)) % 53.23/53.46 (step @p159 :rule refl :args (@t236)) % 53.23/53.46 (step @p160 :rule nary_cong :premises (@p159 @p158) :args ((or @t236 @t252))) % 53.23/53.46 (step @p161 :rule trans :premises (@p160 @p151)) % 53.23/53.46 (step @p162 :rule bool-impl-elim :args (@t158 @t252)) % 53.23/53.46 (step @p163 :rule trans :premises (@p162 @p161)) % 53.23/53.46 (step @p164 :rule bool-double-not-elim :args (@t223)) % 53.23/53.46 (step @p165 :rule refl :args (@t225)) % 53.23/53.46 (step @p166 :rule nary_cong :premises (@p165 @p164) :args ((or @t225 (not @t253)))) % 53.23/53.46 (step @p167 :rule bool-and-de-morgan :args (@t224 @t253 true)) % 53.23/53.46 (step @p168 :rule trans :premises (@p167 @p166)) % 53.23/53.46 (step @p169 :rule nary_cong :premises (@p168 @p163) :args ((or @t256 @t254))) % 53.23/53.46 (step @p170 :rule trans :premises (@p169 @p150)) % 53.23/53.46 (step @p171 :rule bool-impl-elim :args (@t255 @t254)) % 53.23/53.46 (step @p172 :rule trans :premises (@p171 @p170)) % 53.23/53.46 (step @p173 :rule cong :premises (@p172) :args ((forall @t162 (=> @t255 @t254)))) % 53.23/53.46 (step @p174 :rule trans :premises (@p173 @p149)) % 53.23/53.46 (step @p175 :rule aci_norm :args ((= (or false @t211) @t211))) % 53.23/53.46 (step @p176 :rule arith_poly_norm :args ((= (* 1 (- @t135 @t258)) (* 1 (- @t99 @t210))))) % 53.23/53.46 (step @p177 :rule arith_poly_norm_rel :premises (@p176) :args ((= (= @t135 @t258) @t211))) % 53.23/53.46 (step @p178 :rule arith_poly_norm :args ((= @t259 @t258))) % 53.23/53.46 (step @p179 :rule arith_poly_norm :args ((= @t261 @t259))) % 53.23/53.46 (step @p180 :rule trans :premises (@p179 @p178)) % 53.23/53.46 (step @p181 :rule refl :args (@t135)) % 53.23/53.46 (step @p182 :rule cong :premises (@p181 @p180) :args (@t262)) % 53.23/53.46 (step @p183 :rule trans :premises (@p182 @p177)) % 53.23/53.46 (step @p184 :rule eq-refl :args (@t135)) % 53.23/53.46 (step @p185 :rule arith_poly_norm :args ((= @t264 @t135))) % 53.23/53.46 (step @p186 :rule arith_poly_norm :args ((= @t265 @t264))) % 53.23/53.46 (step @p187 :rule trans :premises (@p186 @p185)) % 53.23/53.46 (step @p188 :rule cong :premises (@p181 @p187) :args (@t266)) % 53.23/53.46 (step @p189 :rule trans :premises (@p188 @p184)) % 53.23/53.46 (step @p190 :rule cong :premises (@p189) :args (@t267)) % 53.23/53.46 (step @p191 :rule trans :premises (@p190 @p125)) % 53.23/53.46 (step @p192 :rule nary_cong :premises (@p191 @p183) :args (@t268)) % 53.23/53.46 (step @p193 :rule trans :premises (@p192 @p175)) % 53.23/53.46 (step @p194 :rule quant-var-elim-eq :args ((= (forall @t151 (or (not @t274) @t273 @t270)) @t268))) % 53.23/53.46 (step @p195 :rule refl :args (@t270)) % 53.23/53.46 (step @p196 :rule refl :args (@t273)) % 53.23/53.46 (step @p197 :rule arith_poly_norm :args ((= @t275 (* 1 (- @t136 @t260))))) % 53.23/53.46 (step @p198 :rule arith_poly_norm_rel :premises (@p197) :args ((= @t272 @t274))) % 53.23/53.46 (step @p199 :rule cong :premises (@p198) :args (@t273)) % 53.23/53.46 (step @p200 :rule nary_cong :premises (@p199 @p196 @p195) :args (@t276)) % 53.23/53.46 (step @p201 :rule aci_norm :args ((= @t277 @t276))) % 53.23/53.46 (step @p202 :rule trans :premises (@p201 @p200)) % 53.23/53.46 (step @p203 :rule cong :premises (@p202) :args (@t278)) % 53.23/53.46 (step @p204 :rule trans :premises (@p203 @p194)) % 53.23/53.46 (step @p205 :rule trans :premises (@p204 @p193)) % 53.23/53.46 (step @p206 :rule nary_cong :premises (@p123 @p122 @p205) :args (@t279)) % 53.23/53.46 (step @p207 :rule quant-miniscope-or :args ((= (forall @t151 @t280) @t279))) % 53.23/53.46 (step @p208 :rule aci_norm :args ((= @t281 @t280))) % 53.23/53.46 (step @p209 :rule cong :premises (@p208) :args ((forall @t151 @t281))) % 53.23/53.46 (step @p210 :rule trans :premises (@p209 @p207)) % 53.23/53.46 (step @p211 :rule trans :premises (@p210 @p206)) % 53.23/53.46 (step @p212 :rule aci_norm :args ((= (or @t273 @t282) @t281))) % 53.23/53.46 (step @p213 :rule aci_norm :args ((= (or @t220 (or @t218 @t270)) @t282))) % 53.23/53.46 (step @p214 :rule bool-impl-elim :args (@t217 @t270)) % 53.23/53.46 (step @p215 :rule refl :args (@t220)) % 53.23/53.46 (step @p216 :rule nary_cong :premises (@p215 @p214) :args ((or @t220 @t283))) % 53.23/53.46 (step @p217 :rule trans :premises (@p216 @p213)) % 53.23/53.46 (step @p218 :rule bool-impl-elim :args (@t219 @t283)) % 53.23/53.46 (step @p219 :rule trans :premises (@p218 @p217)) % 53.23/53.46 (step @p220 :rule nary_cong :premises (@p196 @p219) :args ((or @t273 @t284))) % 53.23/53.46 (step @p221 :rule trans :premises (@p220 @p212)) % 53.23/53.46 (step @p222 :rule bool-impl-elim :args (@t272 @t284)) % 53.23/53.46 (step @p223 :rule trans :premises (@p222 @p221)) % 53.23/53.46 (step @p224 :rule cong :premises (@p223) :args ((forall @t151 (=> @t272 @t284)))) % 53.23/53.46 (step @p225 :rule trans :premises (@p224 @p211)) % 53.23/53.46 (step @p226 :rule arith_poly_norm :args ((= (* 1 (- @t286 @t99)) (* -1 (- @t135 @t269))))) % 53.23/53.46 (step @p227 :rule arith_poly_norm_rel :premises (@p226) :args ((= (= @t286 @t99) @t270))) % 53.23/53.46 (step @p228 :rule refl :args (@t99)) % 53.23/53.46 (step @p229 :rule arith_poly_norm :args ((= @t287 @t286))) % 53.23/53.46 (step @p230 :rule arith_poly_norm :args ((= @t137 @t287))) % 53.23/53.46 (step @p231 :rule trans :premises (@p230 @p229)) % 53.23/53.46 (step @p232 :rule cong :premises (@p231 @p228) :args (@t138)) % 53.23/53.46 (step @p233 :rule trans :premises (@p232 @p227)) % 53.23/53.46 (step @p234 :rule arith_poly_norm :args ((= (* 1 (- @t206 @t289)) (* -1 (- @t66 @t216))))) % 53.23/53.46 (step @p235 :rule arith_poly_norm_rel :premises (@p234) :args ((= (= @t206 @t289) @t217))) % 53.23/53.46 (step @p236 :rule arith-to-int-elim-to-real :args (@t289)) % 53.23/53.46 (step @p237 :rule arith_poly_norm :args ((= (+ @t291 @t290) (to_real @t289)))) % 53.23/53.46 (step @p238 :rule arith_poly_norm :args ((= (* -1/1 @t292) @t290))) % 53.23/53.46 (step @p239 :rule arith_poly_norm :args ((= (* (to_real @t214) 10/1) @t292))) % 53.23/53.46 (step @p240 :rule evaluate :args (@t43)) % 53.23/53.46 (step @p241 :rule ite-true-cond :args (@t214 (* -1 (to_int @t293)))) % 53.23/53.46 (step @p242 :rule arith_poly_norm :args ((= (* -1/1 @t213) @t293))) % 53.23/53.46 (step @p243 :rule arith_poly_norm :args ((= (* @t291 1/10) @t213))) % 53.23/53.46 (step @p244 :rule refl :args (1/10)) % 53.23/53.46 (step @p245 :rule arith_poly_norm :args ((= @t102 @t205))) % 53.23/53.46 (step @p246 :rule cong :premises (@p245) :args (@t103)) % 53.23/53.46 (step @p247 :rule nary_cong :premises (@p246 @p244) :args (@t294)) % 53.23/53.46 (step @p248 :rule trans :premises (@p247 @p243)) % 53.23/53.46 ; WARNING: add trust step for TRUST_THEORY_REWRITE % 53.23/53.46 ; trust TRUST_THEORY_REWRITE % 53.23/53.46 (step @p249 :rule trust :premises () :args ((= @t104 @t294))) % 53.23/53.46 (step @p250 :rule trans :premises (@p249 @p248)) % 53.23/53.46 (step @p251 :rule refl :args (-1/1)) % 53.23/53.46 (step @p252 :rule nary_cong :premises (@p251 @p250) :args (@t295)) % 53.23/53.46 (step @p253 :rule trans :premises (@p252 @p242)) % 53.23/53.46 (step @p254 :rule arith_poly_norm :args ((= @t105 @t295))) % 53.23/53.46 (step @p255 :rule trans :premises (@p254 @p253)) % 53.23/53.46 (step @p256 :rule cong :premises (@p255) :args (@t106)) % 53.23/53.46 (step @p257 :rule refl :args (-1)) % 53.23/53.46 (step @p258 :rule nary_cong :premises (@p257 @p256) :args (@t296)) % 53.23/53.46 (step @p259 :rule arith_poly_norm :args ((= @t107 @t296))) % 53.23/53.46 (step @p260 :rule trans :premises (@p259 @p258)) % 53.23/53.46 (step @p261 :rule cong :premises (@p250) :args (@t108)) % 53.23/53.46 (step @p262 :rule evaluate :args ((>= 10/1 0/1))) % 53.23/53.46 (step @p263 :rule refl :args (0/1)) % 53.23/53.46 (step @p264 :rule cong :premises (@p240 @p263) :args (@t46)) % 53.23/53.46 (step @p265 :rule trans :premises (@p264 @p262)) % 53.23/53.46 (step @p266 :rule cong :premises (@p265 @p261 @p260) :args (@t109)) % 53.23/53.46 (step @p267 :rule trans :premises (@p266 @p241)) % 53.23/53.46 (step @p268 :rule cong :premises (@p267) :args (@t110)) % 53.23/53.46 (step @p269 :rule nary_cong :premises (@p268 @p240) :args (@t111)) % 53.23/53.46 (step @p270 :rule trans :premises (@p269 @p239)) % 53.23/53.46 (step @p271 :rule refl :args (-1/1)) % 53.23/53.46 (step @p272 :rule nary_cong :premises (@p271 @p270) :args (@t297)) % 53.23/53.46 (step @p273 :rule trans :premises (@p272 @p238)) % 53.23/53.46 (step @p274 :rule cong :premises (@p245) :args (@t103)) % 53.23/53.46 (step @p275 :rule nary_cong :premises (@p274 @p273) :args (@t298)) % 53.23/53.46 (step @p276 :rule trans :premises (@p275 @p237)) % 53.23/53.46 (step @p277 :rule arith_poly_norm :args ((= @t112 @t298))) % 53.23/53.46 (step @p278 :rule trans :premises (@p277 @p276)) % 53.23/53.46 (step @p279 :rule cong :premises (@p278) :args (@t113)) % 53.23/53.46 (step @p280 :rule trans :premises (@p279 @p236)) % 53.23/53.46 (step @p281 :rule refl :args (10)) % 53.23/53.46 (step @p282 :rule cong :premises (@p245 @p281) :args (@t139)) % 53.23/53.46 (step @p283 :rule cong :premises (@p282 @p280) :args (@t140)) % 53.23/53.46 (step @p284 :rule trans :premises (@p283 @p235)) % 53.23/53.46 (step @p285 :rule cong :premises (@p284 @p233) :args (@t141)) % 53.23/53.46 (step @p286 :rule arith_poly_norm :args ((= (* -1 (- @t209 @t214)) (* 1 (- @t214 @t209))))) % 53.23/53.46 (step @p287 :rule arith_poly_norm_rel :premises (@p286) :args ((= (= @t209 @t214) @t219))) % 53.23/53.46 (step @p288 :rule cong :premises (@p245 @p281) :args (@t142)) % 53.23/53.46 (step @p289 :rule cong :premises (@p288 @p267) :args (@t143)) % 53.23/53.46 (step @p290 :rule trans :premises (@p289 @p287)) % 53.23/53.46 (step @p291 :rule cong :premises (@p290 @p285) :args (@t144)) % 53.23/53.46 (step @p292 :rule arith_poly_norm :args ((= (* 1 (- @t136 @t299)) @t275))) % 53.23/53.46 (step @p293 :rule arith_poly_norm_rel :premises (@p292) :args ((= (= @t136 @t299) @t272))) % 53.23/53.46 (step @p294 :rule arith_poly_norm :args ((= (+ @t40 -1) @t174))) % 53.23/53.46 (step @p295 :rule evaluate :args (@t300)) % 53.23/53.46 (step @p296 :rule refl :args (@t40)) % 53.23/53.46 (step @p297 :rule nary_cong :premises (@p296 @p295) :args (@t301)) % 53.23/53.46 (step @p298 :rule trans :premises (@p297 @p294)) % 53.23/53.46 (step @p299 :rule arith_poly_norm :args ((= @t100 @t301))) % 53.23/53.46 (step @p300 :rule trans :premises (@p299 @p298)) % 53.23/53.46 (step @p301 :rule arith_poly_norm :args ((= (+ @t207 @t206 @t65) @t208))) % 53.23/53.46 (step @p302 :rule refl :args (@t65)) % 53.23/53.46 (step @p303 :rule refl :args (@t207)) % 53.23/53.46 (step @p304 :rule nary_cong :premises (@p303 @p282 @p302) :args (@t302)) % 53.23/53.46 (step @p305 :rule trans :premises (@p304 @p301)) % 53.23/53.46 (step @p306 :rule arith_poly_norm :args ((= @t303 @t302))) % 53.23/53.46 (step @p307 :rule trans :premises (@p306 @p305)) % 53.23/53.46 (step @p308 :rule arith_poly_norm :args ((= @t146 @t303))) % 53.23/53.46 (step @p309 :rule trans :premises (@p308 @p307)) % 53.23/53.46 (step @p310 :rule cong :premises (@p288 @p309 @p300) :args (@t147)) % 53.23/53.46 (step @p311 :rule nary_cong :premises (@p181 @p310) :args (@t148)) % 53.23/53.46 (step @p312 :rule refl :args (@t136)) % 53.23/53.46 (step @p313 :rule cong :premises (@p312 @p311) :args (@t149)) % 53.23/53.46 (step @p314 :rule trans :premises (@p313 @p293)) % 53.23/53.46 (step @p315 :rule cong :premises (@p314 @p291) :args (@t150)) % 53.23/53.46 (step @p316 :rule cong :premises (@p315) :args (@t152)) % 53.23/53.46 (step @p317 :rule trans :premises (@p316 @p225)) % 53.23/53.46 (step @p318 :rule arith-elim-leq :args (0 @t209)) % 53.23/53.46 (step @p319 :rule refl :args (0)) % 53.23/53.46 (step @p320 :rule cong :premises (@p319 @p288) :args (@t153)) % 53.23/53.46 (step @p321 :rule trans :premises (@p320 @p318)) % 53.23/53.46 (step @p322 :rule arith_poly_norm :args ((= (* -1 (- @t174 0)) (* -1 @t100)))) % 53.23/53.46 (step @p323 :rule arith_poly_norm_rel :premises (@p322) :args ((= (>= @t174 0) @t190))) % 53.23/53.46 (step @p324 :rule arith-elim-leq :args (0 @t174)) % 53.23/53.46 (step @p325 :rule trans :premises (@p324 @p323)) % 53.23/53.46 (step @p326 :rule cong :premises (@p319 @p300) :args (@t154)) % 53.23/53.46 (step @p327 :rule trans :premises (@p326 @p325)) % 53.23/53.46 (step @p328 :rule nary_cong :premises (@p327 @p321) :args (@t155)) % 53.23/53.46 (step @p329 :rule cong :premises (@p328 @p317) :args (@t156)) % 53.23/53.46 (step @p330 :rule refl :args (@t158)) % 53.23/53.46 (step @p331 :rule cong :premises (@p330 @p329) :args (@t159)) % 53.23/53.46 (step @p332 :rule evaluate :args (@t304)) % 53.23/53.46 (step @p333 :rule refl :args (@t67)) % 53.23/53.46 (step @p334 :rule cong :premises (@p333 @p332) :args (@t305)) % 53.23/53.46 (step @p335 :rule cong :premises (@p334) :args ((not @t305))) % 53.23/53.46 (step @p336 :rule arith-leq-norm :args (@t67 9)) % 53.23/53.46 (step @p337 :rule trans :premises (@p336 @p335)) % 53.23/53.46 (step @p338 :rule arith-elim-leq :args (0 @t67)) % 53.23/53.46 (step @p339 :rule nary_cong :premises (@p338 @p337) :args (@t160)) % 53.23/53.46 (step @p340 :rule cong :premises (@p339 @p331) :args (@t161)) % 53.23/53.46 (step @p341 :rule cong :premises (@p340) :args (@t163)) % 53.23/53.46 (step @p342 :rule trans :premises (@p341 @p174)) % 53.23/53.46 (step @p343 :rule evaluate :args (@t164)) % 53.23/53.46 (step @p344 :rule cong :premises (@p343 @p342) :args (@t165)) % 53.23/53.46 (step @p345 :rule trans :premises (@p344 @p119)) % 53.23/53.46 (step @p346 :rule refl :args (@t167)) % 53.23/53.46 (step @p347 :rule cong :premises (@p346 @p345) :args (@t168)) % 53.23/53.46 (step @p348 :rule arith-elim-leq :args (0 @t66)) % 53.23/53.46 (step @p349 :rule arith-elim-leq :args (0 @t40)) % 53.23/53.46 (step @p350 :rule nary_cong :premises (@p349 @p348) :args (@t169)) % 53.23/53.46 (step @p351 :rule cong :premises (@p350 @p347) :args (@t170)) % 53.23/53.46 (step @p352 :rule cong :premises (@p351) :args (@t172)) % 53.23/53.46 (step @p353 :rule trans :premises (@p352 @p118)) % 53.23/53.46 (step @p354 :rule cong :premises (@p353) :args (@t173)) % 53.23/53.46 (step @p355 :rule eq_resolve :premises (@p73 @p354)) % 53.23/53.46 (step @p356 :rule refl :args (@t337)) % 53.23/53.46 (step @p357 :rule bool-double-not-elim :args (@t306)) % 53.23/53.46 (step @p358 :rule nary_cong :premises (@p357 @p356) :args ((or (not @t338) @t337))) % 53.23/53.46 (step @p359 :rule refl :args (@t317)) % 53.23/53.46 (step @p360 :rule refl :args (@t312)) % 53.23/53.46 (step @p361 :rule arith_reduction :args (@t318)) % 53.23/53.46 (step @p362 :rule and_elim :premises (@p361) :args (0)) % 53.23/53.46 (step @p363 :rule nary_cong :premises (@p281 @p362) :args (@t339)) % 53.23/53.46 (step @p364 :rule refl :args (@t320)) % 53.23/53.46 (step @p365 :rule nary_cong :premises (@p364 @p363 @p360) :args (@t340)) % 53.23/53.46 (step @p366 :rule refl :args (@t310)) % 53.23/53.46 (step @p367 :rule cong :premises (@p366 @p365) :args (@t341)) % 53.23/53.46 (step @p368 :rule cong :premises (@p367) :args (@t342)) % 53.23/53.46 (step @p369 :rule arith_poly_norm :args ((= (* -1 (- @t315 @t319)) (* 1 (- @t319 @t315))))) % 53.23/53.46 (step @p370 :rule arith_poly_norm_rel :premises (@p369) :args ((= @t343 @t324))) % 53.23/53.46 (step @p371 :rule refl :args (@t315)) % 53.23/53.46 (step @p372 :rule cong :premises (@p371 @p362) :args (@t344)) % 53.23/53.46 (step @p373 :rule trans :premises (@p372 @p370)) % 53.23/53.46 (step @p374 :rule cong :premises (@p373) :args (@t345)) % 53.23/53.46 (step @p375 :rule refl :args (@t326)) % 53.23/53.46 (step @p376 :rule refl :args (@t327)) % 53.23/53.46 (step @p377 :rule refl :args (@t329)) % 53.23/53.46 (step @p378 :rule refl :args (@t331)) % 53.23/53.46 (step @p379 :rule refl :args (@t332)) % 53.23/53.46 (step @p380 :rule refl :args (@t334)) % 53.23/53.46 (step @p381 :rule refl :args (@t335)) % 53.23/53.46 (step @p382 :rule nary_cong :premises (@p381 @p380 @p379 @p378 @p377 @p376 @p375 @p374 @p368 @p359) :args (@t346)) % 53.23/53.46 (step @p383 :rule cong :premises (@p382) :args (@t347)) % 53.23/53.46 (step @p384 :rule refl :args (@t338)) % 53.23/53.46 (step @p385 :rule cong :premises (@p384 @p383) :args ((=> @t338 @t347))) % 53.23/53.46 (assume-push @p524 @t338) % 53.23/53.46 (step @p387 :rule skolemize :premises (@p355)) % 53.23/53.46 (step-pop @p525 :rule scope :premises (@p387)) % 53.23/53.46 (step @p388 :rule process_scope :premises (@p525) :args (@t347)) % 53.23/53.46 (step @p390 :rule eq_resolve :premises (@p388 @p385)) % 53.23/53.46 (step @p391 :rule implies_elim :premises (@p390)) % 53.23/53.46 (step @p392 :rule eq_resolve :premises (@p391 @p358)) % 53.23/53.46 (step @p393 :rule chain_m_resolution :premises (@p392 @p355) :args (@t337 @t348 (@list @t306))) % 53.23/53.46 (step @p394 :rule bool-double-not-elim :args (@t324)) % 53.23/53.46 (step @p395 :rule refl :args (@t336)) % 53.23/53.46 (step @p396 :rule nary_cong :premises (@p395 @p394) :args ((or @t336 (not @t325)))) % 53.23/53.46 (step @p397 :rule cnf_or_neg :args (@t336 7)) % 53.23/53.46 (step @p398 :rule eq_resolve :premises (@p397 @p396)) % 53.23/53.46 (step @p399 :rule reordering :premises (@p398) :args ((or @t324 @t336))) % 53.23/53.46 (step @p400 :rule chain_m_resolution :premises (@p399 @p393) :args (@t324 @t348 @t349)) % 53.23/53.46 (step @p401 :rule bool-double-not-elim :args (@t322)) % 53.23/53.46 (step @p402 :rule nary_cong :premises (@p395 @p401) :args ((or @t336 (not @t323)))) % 53.23/53.46 (step @p403 :rule cnf_or_neg :args (@t336 8)) % 53.23/53.46 (step @p404 :rule eq_resolve :premises (@p403 @p402)) % 53.23/53.46 (step @p405 :rule reordering :premises (@p404) :args ((or @t322 @t336))) % 53.23/53.46 (step @p406 :rule chain_m_resolution :premises (@p405 @p393) :args (@t322 @t348 @t349)) % 53.23/53.46 (step @p407 :rule cnf_or_neg :args (@t336 9)) % 53.23/53.46 (step @p408 :rule chain_m_resolution :premises (@p407 @p393) :args ((not @t317) @t348 @t349)) % 53.23/53.46 (step @p409 :rule aci_norm :args ((= (or @t193 @t354) @t353))) % 53.23/53.46 (step @p410 :rule aci_norm :args ((= (or @t248 (or @t191 @t352)) @t354))) % 53.23/53.46 (step @p411 :rule bool-impl-elim :args (@t190 @t352)) % 53.23/53.46 (step @p412 :rule nary_cong :premises (@p168 @p411) :args ((or @t256 @t355))) % 53.23/53.46 (step @p413 :rule trans :premises (@p412 @p410)) % 53.23/53.46 (step @p414 :rule bool-impl-elim :args (@t255 @t355)) % 53.23/53.46 (step @p415 :rule trans :premises (@p414 @p413)) % 53.23/53.46 (step @p416 :rule nary_cong :premises (@p95 @p415) :args ((or @t193 @t356))) % 53.23/53.46 (step @p417 :rule trans :premises (@p416 @p409)) % 53.23/53.46 (step @p418 :rule bool-impl-elim :args (@t192 @t356)) % 53.23/53.46 (step @p419 :rule trans :premises (@p418 @p417)) % 53.23/53.46 (step @p420 :rule cong :premises (@p419) :args ((forall @t123 (=> @t192 @t356)))) % 53.23/53.46 (step @p421 :rule arith_poly_norm :args ((= (* 1 (- @t351 @t99)) (* -1 (- @t99 @t351))))) % 53.23/53.46 (step @p422 :rule arith_poly_norm_rel :premises (@p421) :args ((= (= @t351 @t99) @t352))) % 53.23/53.46 (step @p423 :rule arith_poly_norm :args ((= (+ @t207 @t289 @t65) @t350))) % 53.23/53.46 (step @p424 :rule nary_cong :premises (@p303 @p280 @p302) :args (@t357)) % 53.23/53.46 (step @p425 :rule trans :premises (@p424 @p423)) % 53.23/53.46 (step @p426 :rule arith_poly_norm :args ((= @t358 @t357))) % 53.23/53.46 (step @p427 :rule trans :premises (@p426 @p425)) % 53.23/53.46 (step @p428 :rule arith_poly_norm :args ((= @t115 @t358))) % 53.23/53.46 (step @p429 :rule trans :premises (@p428 @p427)) % 53.23/53.46 (step @p430 :rule cong :premises (@p267 @p429 @p300) :args (@t116)) % 53.23/53.46 (step @p431 :rule cong :premises (@p430 @p228) :args (@t117)) % 53.23/53.46 (step @p432 :rule trans :premises (@p431 @p422)) % 53.23/53.46 (step @p433 :rule bool-double-not-elim :args (@t190)) % 53.23/53.46 (step @p434 :rule arith_poly_norm :args ((= (* -1 (- 1 @t359)) (* -1 (- 0 @t40))))) % 53.23/53.46 (step @p435 :rule arith_poly_norm_rel :premises (@p434) :args ((= (>= 1 @t359) @t360))) % 53.23/53.46 (step @p436 :rule arith-geq-tighten :args (@t40 1)) % 53.23/53.46 (step @p437 :rule trans :premises (@p436 @p435)) % 53.23/53.46 (step @p438 :rule symm :premises (@p437)) % 53.23/53.46 (step @p439 :rule cong :premises (@p438) :args ((not @t360))) % 53.23/53.46 (step @p440 :rule trans :premises (@p439 @p433)) % 53.23/53.46 (step @p441 :rule arith-elim-lt :args (0 @t40)) % 53.23/53.46 (step @p442 :rule trans :premises (@p441 @p440)) % 53.23/53.46 (step @p443 :rule cong :premises (@p442 @p432) :args (@t118)) % 53.23/53.46 (step @p444 :rule arith-elim-lt :args (@t67 10)) % 53.23/53.46 (step @p445 :rule nary_cong :premises (@p338 @p444) :args (@t120)) % 53.23/53.46 (step @p446 :rule cong :premises (@p445 @p443) :args (@t121)) % 53.23/53.46 (step @p447 :rule cong :premises (@p348 @p446) :args (@t122)) % 53.23/53.46 (step @p448 :rule cong :premises (@p447) :args (@t124)) % 53.23/53.46 (step @p449 :rule trans :premises (@p448 @p420)) % 53.23/53.46 (step @p450 :rule eq_resolve :premises (@p58 @p449)) % 53.23/53.46 (step @p451 :rule refl :args (@t308)) % 53.23/53.46 (step @p452 :rule refl :args (-10)) % 53.23/53.46 (step @p453 :rule nary_cong :premises (@p452 @p362) :args (@t361)) % 53.23/53.46 (step @p454 :rule refl :args (@t362)) % 53.23/53.46 (step @p455 :rule refl :args (@t313)) % 53.23/53.46 (step @p456 :rule nary_cong :premises (@p366 @p455 @p454 @p453) :args (@t363)) % 53.23/53.46 (step @p457 :rule cong :premises (@p362 @p456 @p451) :args (@t364)) % 53.23/53.46 (step @p458 :rule refl :args (@t316)) % 53.23/53.46 (step @p459 :rule cong :premises (@p458 @p457) :args (@t365)) % 53.23/53.46 (step @p460 :rule nary_cong :premises (@p380 @p377 @p376 @p378 @p459) :args (@t366)) % 53.23/53.46 (step @p461 :rule refl :args (@t367)) % 53.23/53.46 (step @p462 :rule cong :premises (@p461 @p460) :args ((=> @t367 @t366))) % 53.23/53.46 (assume-push @p526 @t367) % 53.23/53.46 (step @p464 :rule instantiate :premises (@p450) :args ((@list @t310 @t313 @t309 @t307))) % 53.23/53.46 (step-pop @p527 :rule scope :premises (@p464)) % 53.23/53.46 (step @p465 :rule process_scope :premises (@p527) :args (@t366)) % 53.23/53.46 (step @p467 :rule eq_resolve :premises (@p465 @p462)) % 53.23/53.46 (step @p468 :rule implies_elim :premises (@p467)) % 53.23/53.46 (step @p469 :rule chain_m_resolution :premises (@p468 @p450) :args (@t371 (@list false) (@list @t367))) % 53.23/53.46 (step @p470 :rule cnf_or_neg :args (@t336 5)) % 53.23/53.46 (step @p471 :rule chain_m_resolution :premises (@p470 @p393) :args ((not @t327) @t348 @t349)) % 53.23/53.46 (step @p472 :rule bool-double-not-elim :args (@t328)) % 53.23/53.46 (step @p473 :rule nary_cong :premises (@p395 @p472) :args ((or @t336 (not @t329)))) % 53.23/53.46 (step @p474 :rule cnf_or_neg :args (@t336 4)) % 53.23/53.46 (step @p475 :rule eq_resolve :premises (@p474 @p473)) % 53.23/53.46 (step @p476 :rule reordering :premises (@p475) :args ((or @t328 @t336))) % 53.23/53.46 (step @p477 :rule chain_m_resolution :premises (@p476 @p393) :args (@t328 @t348 @t349)) % 53.23/53.46 (step @p478 :rule bool-double-not-elim :args (@t330)) % 53.23/53.46 (step @p479 :rule nary_cong :premises (@p395 @p478) :args ((or @t336 (not @t331)))) % 53.23/53.46 (step @p480 :rule cnf_or_neg :args (@t336 3)) % 53.23/53.46 (step @p481 :rule eq_resolve :premises (@p480 @p479)) % 53.23/53.46 (step @p482 :rule reordering :premises (@p481) :args ((or @t330 @t336))) % 53.23/53.46 (step @p483 :rule chain_m_resolution :premises (@p482 @p393) :args (@t330 @t348 @t349)) % 53.23/53.46 (step @p484 :rule bool-double-not-elim :args (@t333)) % 53.23/53.46 (step @p485 :rule nary_cong :premises (@p395 @p484) :args ((or @t336 (not @t334)))) % 53.23/53.46 (step @p486 :rule cnf_or_neg :args (@t336 1)) % 53.23/53.46 (step @p487 :rule eq_resolve :premises (@p486 @p485)) % 53.23/53.46 (step @p488 :rule reordering :premises (@p487) :args ((or @t333 @t336))) % 53.23/53.46 (step @p489 :rule chain_m_resolution :premises (@p488 @p393) :args (@t333 @t348 @t349)) % 53.23/53.46 (step @p490 :rule cnf_or_pos :args (@t371)) % 53.23/53.46 (step @p491 :rule reordering :premises (@p490) :args ((or @t334 @t331 @t329 @t327 @t370 (not @t371)))) % 53.23/53.46 (step @p492 :rule chain_m_resolution :premises (@p491 @p489 @p483 @p477 @p471 @p469) :args (@t370 (@list false false false true false) (@list @t333 @t330 @t328 @t327 @t371))) % 53.23/53.46 (assume-push @p528 @t322) % 53.23/53.46 (assume-push @p529 @t324) % 53.23/53.46 (assume-push @p530 @t370) % 53.23/53.46 (assume-push @p531 @t343) % 53.23/53.46 (assume-push @p532 @t372) % 53.23/53.46 (assume-push @p533 @t370) % 53.23/53.46 (step @p499 :rule arith_poly_norm :args (@t373)) % 53.23/53.46 (step @p500 :rule arith_poly_norm_rel :premises (@p499) :args (@t374)) % 53.23/53.46 (step @p501 :rule symm :premises (@p500)) % 53.23/53.46 (step @p502 :rule chain_m_resolution :premises (@p405 @p393) :args (@t322 @t348 @t349)) % 53.23/53.46 (step @p503 :rule eq_resolve :premises (@p502 @p501)) % 53.23/53.46 (step @p504 :rule symm :premises (@p503)) % 53.23/53.46 (step @p505 :rule cong :premises (@p400 @p504 @p451) :args (@t369)) % 53.23/53.46 (step @p506 :rule trans :premises (@p492 @p505)) % 53.23/53.46 (step-pop @p534 :rule scope :premises (@p506)) % 53.23/53.46 (step-pop @p535 :rule scope :premises (@p534)) % 53.23/53.46 (step-pop @p536 :rule scope :premises (@p535)) % 53.23/53.46 (step @p507 :rule process_scope :premises (@p536) :args (@t317)) % 53.23/53.46 (step @p499 :rule arith_poly_norm :args (@t373)) % 53.23/53.46 (step @p500 :rule arith_poly_norm_rel :premises (@p499) :args (@t374)) % 53.23/53.46 (step @p501 :rule symm :premises (@p500)) % 53.23/53.46 (step @p511 :rule eq_resolve :premises (@p406 @p501)) % 53.23/53.46 (step @p512 :rule symm :premises (@p400)) % 53.23/53.46 (step @p513 :rule and_intro :premises (@p512 @p511 @p492)) % 53.23/53.46 (step @p514 :rule modus_ponens :premises (@p513 @p507)) % 53.23/53.46 (step-pop @p537 :rule scope :premises (@p514)) % 53.23/53.46 (step-pop @p538 :rule scope :premises (@p537)) % 53.23/53.46 (step-pop @p539 :rule scope :premises (@p538)) % 53.23/53.46 (step @p515 :rule process_scope :premises (@p539) :args (@t317)) % 53.23/53.46 (step @p519 :rule implies_elim :premises (@p515)) % 53.23/53.47 (step @p520 :rule cnf_and_neg :args (@t375)) % 53.23/53.47 (step @p521 :rule resolution :premises (@p520 @p519) :args (true @t375)) % 53.23/53.47 (step @p522 :rule reordering :premises (@p521) :args ((or @t317 @t323 @t325 (not @t370)))) % 53.23/53.47 (step @p523 false :rule chain_m_resolution :premises (@p522 @p492 @p408 @p406 @p400) :args (false (@list false true false false) (@list @t370 @t317 @t322 @t324))) % 53.23/53.47 ) % 53.23/53.47 % SZS output end Proof % 53.23/53.47 % cvc5 exiting %------------------------------------------------------------------------------