%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : DAT071_1 : 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 : n010.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 08:14:27 AM UTC 2026 % Result : Theorem 45.50s 45.72s % Output : Proof 45.50s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : DAT071_1 : TPTP v9.2.1. Released v6.1.0. % 0.12/0.13 % Command : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM % 0.16/0.34 % Computer : n010.cluster.edu % 0.16/0.34 % Model : x86_64 x86_64 % 0.16/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.16/0.34 % Memory : 8042.1875MB % 0.16/0.34 % OS : Linux 3.10.0-693.el7.x86_64 % 0.16/0.34 % CPULimit : 300 % 0.16/0.34 % WCLimit : 300 % 0.16/0.34 % DateTime : Mon Jun 1 22:27:40 EDT 2026 % 0.16/0.34 % CPUTime : % 0.31/0.50 %----Proving TF0_ARI % 45.50/45.72 --- Run --finite-model-find --decision=internal at 45... % 45.50/45.72 --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 60... % 45.50/45.72 % SZS status Theorem % 45.50/45.72 % SZS output start Proof % 45.50/45.72 ( % 45.50/45.72 (declare-sort tptp.array 0) % 45.50/45.72 (declare-const tptp.rev (-> tptp.array Int tptp.array)) % 45.50/45.72 (declare-const tptp.distinct (-> tptp.array Int Bool)) % 45.50/45.72 (declare-const tptp.sorted (-> tptp.array Int Bool)) % 45.50/45.72 (declare-const tptp.max (-> tptp.array Int Int)) % 45.50/45.72 (declare-const tptp.init (-> Int tptp.array)) % 45.50/45.72 (declare-const tptp.inRange (-> tptp.array Int Int Bool)) % 45.50/45.72 (declare-const tptp.read (-> tptp.array Int Int)) % 45.50/45.72 (declare-const tptp.write (-> tptp.array Int Int tptp.array)) % 45.50/45.72 (define @t1 () (@var "V" Int)) % 45.50/45.72 (define @t2 () (@var "I" Int)) % 45.50/45.72 (define @t3 () (@var "A" tptp.array)) % 45.50/45.72 (define @t4 () (tptp.write @t3 @t2 @t1)) % 45.50/45.72 (define @t5 () (@var "J" Int)) % 45.50/45.72 (define @t6 () (tptp.read @t3 @t5)) % 45.50/45.72 (define @t7 () (= @t2 @t5)) % 45.50/45.72 (define @t8 () (@var "B" tptp.array)) % 45.50/45.72 (define @t9 () (tptp.read @t8 @t2)) % 45.50/45.72 (define @t10 () (tptp.read @t3 @t2)) % 45.50/45.72 (define @t11 () (@list @t2)) % 45.50/45.72 (define @t12 () (@var "W" Int)) % 45.50/45.72 (define @t13 () (@var "N" Int)) % 45.50/45.72 (define @t14 () (>= @t2 0)) % 45.50/45.72 (define @t15 () (> @t13 @t2)) % 45.50/45.72 (define @t16 () (and @t15 @t14)) % 45.50/45.72 (define @t17 () (@list @t2 @t5)) % 45.50/45.72 (define @t18 () (@list @t3 @t13)) % 45.50/45.72 (define @t19 () (@var "R" Int)) % 45.50/45.72 (define @t20 () (>= @t2 @t13)) % 45.50/45.72 (define @t21 () (@var "W2" Int)) % 45.50/45.72 (define @t22 () (@var "W1" Int)) % 45.50/45.72 (define @t23 () (= @t22 @t21)) % 45.50/45.72 (define @t24 () (= @t10 @t21)) % 45.50/45.72 (define @t25 () (and @t15 @t14 @t24)) % 45.50/45.72 (define @t26 () (exists @t11 @t25)) % 45.50/45.72 (define @t27 () (=> @t16 (<= @t10 @t21))) % 45.50/45.72 (define @t28 () (forall @t11 @t27)) % 45.50/45.72 (define @t29 () (= @t10 @t22)) % 45.50/45.72 (define @t30 () (and @t15 @t14 @t29)) % 45.50/45.72 (define @t31 () (exists @t11 @t30)) % 45.50/45.72 (define @t32 () (=> @t16 (<= @t10 @t22))) % 45.50/45.72 (define @t33 () (forall @t11 @t32)) % 45.50/45.72 (define @t34 () (and @t33 @t31 @t28 @t26)) % 45.50/45.72 (define @t35 () (=> @t34 @t23)) % 45.50/45.72 (define @t36 () (@list @t3 @t13 @t22 @t21)) % 45.50/45.72 (define @t37 () (forall @t36 @t35)) % 45.50/45.72 (define @t38 () (not @t37)) % 45.50/45.72 (define @t39 () (@var "BOUND_VARIABLE_7765" Int)) % 45.50/45.72 (define @t40 () (not (>= @t39 0))) % 45.50/45.72 (define @t41 () (+ @t13 (* -1 @t39))) % 45.50/45.72 (define @t42 () (not (>= @t41 1))) % 45.50/45.72 (define @t43 () (@var "BOUND_VARIABLE_7755" Int)) % 45.50/45.72 (define @t44 () (not (>= @t43 0))) % 45.50/45.72 (define @t45 () (+ @t13 (* -1 @t43))) % 45.50/45.72 (define @t46 () (not (>= @t45 1))) % 45.50/45.72 (define @t47 () (tptp.read @t3 @t39)) % 45.50/45.72 (define @t48 () (tptp.read @t3 @t43)) % 45.50/45.72 (define @t49 () (= @t48 @t47)) % 45.50/45.72 (define @t50 () (+ @t10 (* -1 @t47))) % 45.50/45.72 (define @t51 () (not @t14)) % 45.50/45.72 (define @t52 () (* -1 @t13)) % 45.50/45.72 (define @t53 () (+ @t2 @t52)) % 45.50/45.72 (define @t54 () (>= @t53 0)) % 45.50/45.72 (define @t55 () (not (forall @t11 (or @t54 @t51 (not (>= @t50 1)))))) % 45.50/45.72 (define @t56 () (+ @t10 (* -1 @t48))) % 45.50/45.72 (define @t57 () (not (forall @t11 (or @t54 @t51 (not (>= @t56 1)))))) % 45.50/45.72 (define @t58 () (or @t57 @t55 @t49 @t46 @t44 @t42 @t40)) % 45.50/45.72 (define @t59 () (@list @t3 @t13 @t43 @t39)) % 45.50/45.72 (define @t60 () (forall @t59 @t58)) % 45.50/45.72 (define @t61 () (@quantifiers_skolemize @t60 3)) % 45.50/45.72 (define @t62 () (@quantifiers_skolemize @t60 0)) % 45.50/45.72 (define @t63 () (tptp.read @t62 @t61)) % 45.50/45.72 (define @t64 () (* -1 @t63)) % 45.50/45.72 (define @t65 () (@quantifiers_skolemize @t60 2)) % 45.50/45.72 (define @t66 () (tptp.read @t62 @t65)) % 45.50/45.72 (define @t67 () (+ @t66 @t64)) % 45.50/45.72 (define @t68 () (>= @t67 1)) % 45.50/45.72 (define @t69 () (+ 0 1)) % 45.50/45.72 (define @t70 () (>= @t67 @t69)) % 45.50/45.72 (define @t71 () (not (= @t47 @t47))) % 45.50/45.72 (define @t72 () (= @t47 @t48)) % 45.50/45.72 (define @t73 () (* -1 @t10)) % 45.50/45.72 (define @t74 () (+ @t73 @t47)) % 45.50/45.72 (define @t75 () (+ @t50 1)) % 45.50/45.72 (define @t76 () (+ @t47 @t73)) % 45.50/45.72 (define @t77 () (>= @t76 0)) % 45.50/45.72 (define @t78 () (or @t54 @t51 @t77)) % 45.50/45.72 (define @t79 () (forall @t11 @t78)) % 45.50/45.72 (define @t80 () (not @t79)) % 45.50/45.72 (define @t81 () (or @t57 @t80 @t72 @t46 @t44 @t42 @t40 @t71)) % 45.50/45.72 (define @t82 () (not (= @t21 @t47))) % 45.50/45.72 (define @t83 () (= @t21 @t48)) % 45.50/45.72 (define @t84 () (+ @t21 @t73)) % 45.50/45.72 (define @t85 () (>= @t84 0)) % 45.50/45.72 (define @t86 () (or @t54 @t51 @t85)) % 45.50/45.72 (define @t87 () (forall @t11 @t86)) % 45.50/45.72 (define @t88 () (not @t87)) % 45.50/45.72 (define @t89 () (or @t82 @t57 @t88 @t83 @t46 @t44 @t42 @t40 @t82)) % 45.50/45.72 (define @t90 () (@list @t21)) % 45.50/45.72 (define @t91 () (or @t57 @t88 @t83 @t46 @t44 @t42 @t40 @t82)) % 45.50/45.72 (define @t92 () (forall @t90 @t91)) % 45.50/45.72 (define @t93 () (forall @t59 @t92)) % 45.50/45.72 (define @t94 () (forall (@list @t3 @t13 @t43 @t39 @t21) @t91)) % 45.50/45.72 (define @t95 () (@list @t3 @t13 @t21 @t43 @t39)) % 45.50/45.72 (define @t96 () (not (= @t48 @t48))) % 45.50/45.72 (define @t97 () (= @t48 @t21)) % 45.50/45.72 (define @t98 () (+ @t73 @t48)) % 45.50/45.72 (define @t99 () (+ @t56 1)) % 45.50/45.72 (define @t100 () (+ @t48 @t73)) % 45.50/45.72 (define @t101 () (>= @t100 0)) % 45.50/45.72 (define @t102 () (or @t54 @t51 @t101)) % 45.50/45.72 (define @t103 () (forall @t11 @t102)) % 45.50/45.72 (define @t104 () (not @t103)) % 45.50/45.72 (define @t105 () (or @t104 @t88 @t97 @t46 @t44 @t96 @t42 @t40 @t82)) % 45.50/45.72 (define @t106 () (not (= @t22 @t48))) % 45.50/45.72 (define @t107 () (+ @t22 @t73)) % 45.50/45.72 (define @t108 () (>= @t107 0)) % 45.50/45.72 (define @t109 () (or @t54 @t51 @t108)) % 45.50/45.72 (define @t110 () (forall @t11 @t109)) % 45.50/45.72 (define @t111 () (not @t110)) % 45.50/45.72 (define @t112 () (or @t106 @t111 @t88 @t23 @t46 @t44 @t106 @t42 @t40 @t82)) % 45.50/45.72 (define @t113 () (@list @t22)) % 45.50/45.72 (define @t114 () (or @t111 @t88 @t23 @t46 @t44 @t106 @t42 @t40 @t82)) % 45.50/45.72 (define @t115 () (forall @t113 @t114)) % 45.50/45.72 (define @t116 () (forall @t95 @t115)) % 45.50/45.72 (define @t117 () (forall (@list @t3 @t13 @t21 @t43 @t39 @t22) @t114)) % 45.50/45.72 (define @t118 () (@list @t3 @t13 @t22 @t21 @t43 @t39)) % 45.50/45.72 (define @t119 () (+ @t52 @t39)) % 45.50/45.72 (define @t120 () (+ @t41 1)) % 45.50/45.72 (define @t121 () (+ @t39 @t52)) % 45.50/45.72 (define @t122 () (>= @t121 0)) % 45.50/45.72 (define @t123 () (+ @t52 @t43)) % 45.50/45.72 (define @t124 () (+ @t45 1)) % 45.50/45.72 (define @t125 () (+ @t43 @t52)) % 45.50/45.72 (define @t126 () (>= @t125 0)) % 45.50/45.72 (define @t127 () (or @t111 @t88 @t23 @t126 @t44 @t106 @t122 @t40 @t82)) % 45.50/45.72 (define @t128 () (or @t122 @t40 @t82)) % 45.50/45.72 (define @t129 () (or @t126 @t44 @t106)) % 45.50/45.72 (define @t130 () (or @t111 @t129 @t88 @t128 @t23)) % 45.50/45.72 (define @t131 () (forall @t118 @t130)) % 45.50/45.72 (define @t132 () (forall (@list @t43 @t39) @t130)) % 45.50/45.72 (define @t133 () (forall (@list @t39) @t128)) % 45.50/45.72 (define @t134 () (@list @t2)) % 45.50/45.72 (define @t135 () (forall (@list @t43) @t129)) % 45.50/45.72 (define @t136 () (or @t111 @t135 @t88 @t133 @t23)) % 45.50/45.72 (define @t137 () (= @t21 @t10)) % 45.50/45.72 (define @t138 () (not @t137)) % 45.50/45.72 (define @t139 () (forall @t11 (or @t54 @t51 @t138))) % 45.50/45.72 (define @t140 () (= @t22 @t10)) % 45.50/45.72 (define @t141 () (not @t140)) % 45.50/45.72 (define @t142 () (forall @t11 (or @t54 @t51 @t141))) % 45.50/45.72 (define @t143 () (or @t111 @t142 @t88 @t139 @t23)) % 45.50/45.72 (define @t144 () (not @t139)) % 45.50/45.72 (define @t145 () (not @t144)) % 45.50/45.72 (define @t146 () (not @t142)) % 45.50/45.72 (define @t147 () (not @t146)) % 45.50/45.72 (define @t148 () (or @t111 @t147 @t88 @t145)) % 45.50/45.72 (define @t149 () (and @t110 @t146 @t87 @t144)) % 45.50/45.72 (define @t150 () (not @t54)) % 45.50/45.72 (define @t151 () (not @t150)) % 45.50/45.72 (define @t152 () (or @t151 @t51 @t138)) % 45.50/45.72 (define @t153 () (and @t150 @t14 @t137)) % 45.50/45.72 (define @t154 () (forall @t11 (not @t153))) % 45.50/45.72 (define @t155 () (not @t154)) % 45.50/45.72 (define @t156 () (- @t21 @t10)) % 45.50/45.72 (define @t157 () (or @t54 @t51)) % 45.50/45.72 (define @t158 () (and @t150 @t14)) % 45.50/45.72 (define @t159 () (not @t158)) % 45.50/45.72 (define @t160 () (or @t151 @t51 @t141)) % 45.50/45.72 (define @t161 () (and @t150 @t14 @t140)) % 45.50/45.72 (define @t162 () (forall @t11 (not @t161))) % 45.50/45.72 (define @t163 () (not @t162)) % 45.50/45.72 (define @t164 () (- @t22 @t10)) % 45.50/45.72 (define @t165 () (tptp.read @t62 @t2)) % 45.50/45.72 (define @t166 () (@quantifiers_skolemize @t60 1)) % 45.50/45.72 (define @t167 () (* -1 @t166)) % 45.50/45.72 (define @t168 () (>= (+ @t2 @t167) 0)) % 45.50/45.72 (define @t169 () (forall @t11 (or @t168 @t51 (not (>= (+ @t165 @t64) 1))))) % 45.50/45.72 (define @t170 () (>= @t61 0)) % 45.50/45.72 (define @t171 () (not @t170)) % 45.50/45.72 (define @t172 () (+ @t166 (* -1 @t61))) % 45.50/45.72 (define @t173 () (>= @t172 1)) % 45.50/45.72 (define @t174 () (not @t173)) % 45.50/45.72 (define @t175 () (>= @t65 0)) % 45.50/45.72 (define @t176 () (not @t175)) % 45.50/45.72 (define @t177 () (+ @t166 (* -1 @t65))) % 45.50/45.72 (define @t178 () (>= @t177 1)) % 45.50/45.72 (define @t179 () (not @t178)) % 45.50/45.72 (define @t180 () (= @t66 @t63)) % 45.50/45.72 (define @t181 () (not @t169)) % 45.50/45.72 (define @t182 () (* -1 @t66)) % 45.50/45.72 (define @t183 () (forall @t11 (or @t168 @t51 (not (>= (+ @t165 @t182) 1))))) % 45.50/45.72 (define @t184 () (not @t183)) % 45.50/45.72 (define @t185 () (or @t184 @t181 @t180 @t179 @t176 @t174 @t171)) % 45.50/45.72 (define @t186 () (@list true)) % 45.50/45.72 (define @t187 () (@list @t185)) % 45.50/45.72 (define @t188 () (not @t68)) % 45.50/45.72 (define @t189 () (+ @t167 @t65)) % 45.50/45.72 (define @t190 () (+ @t177 1)) % 45.50/45.72 (define @t191 () (+ @t65 @t167)) % 45.50/45.72 (define @t192 () (>= @t191 0)) % 45.50/45.72 (define @t193 () (or @t192 @t176 @t188)) % 45.50/45.72 (define @t194 () (or @t179 @t176 @t188)) % 45.50/45.72 (define @t195 () (@list false)) % 45.50/45.72 (define @t196 () (@list false false false)) % 45.50/45.72 (define @t197 () (>= @t67 0)) % 45.50/45.72 (define @t198 () (+ @t182 @t63)) % 45.50/45.72 (define @t199 () (+ @t67 1)) % 45.50/45.72 (define @t200 () (+ @t63 @t182)) % 45.50/45.73 (define @t201 () (>= @t200 1)) % 45.50/45.73 (define @t202 () (not @t201)) % 45.50/45.73 (define @t203 () (+ @t167 @t61)) % 45.50/45.73 (define @t204 () (+ @t172 1)) % 45.50/45.73 (define @t205 () (+ @t61 @t167)) % 45.50/45.73 (define @t206 () (>= @t205 0)) % 45.50/45.73 (define @t207 () (or @t206 @t171 @t202)) % 45.50/45.73 (define @t208 () (or @t174 @t171 @t197)) % 45.50/45.73 (define @t209 () (= @t67 0)) % 45.50/45.73 (assume @p1 (forall (@list @t3 @t2 @t1) (= (tptp.read @t4 @t2) @t1))) % 45.50/45.73 (assume @p2 (forall (@list @t3 @t2 @t5 @t1) (or @t7 (= (tptp.read @t4 @t5) @t6)))) % 45.50/45.73 (assume @p3 (forall (@list @t3 @t8) (=> (forall @t11 (= @t10 @t9)) (= @t3 @t8)))) % 45.50/45.73 (assume @p4 (forall (@list @t1 @t2) (= (tptp.read (tptp.init @t1) @t2) @t1))) % 45.50/45.73 (assume @p5 (forall (@list @t3 @t13 @t12) (=> (and (forall @t11 (=> @t16 (<= @t10 @t12))) (exists @t11 (and @t15 @t14 (= @t10 @t12)))) (= (tptp.max @t3 @t13) @t12)))) % 45.50/45.73 (assume @p6 (forall @t18 (= (tptp.sorted @t3 @t13) (forall @t17 (=> (and (<= 0 @t2) (< @t2 @t13) (< @t2 @t5) (< @t5 @t13)) (<= @t10 @t6)))))) % 45.50/45.73 (assume @p7 (forall (@list @t3 @t19 @t13) (= (tptp.inRange @t3 @t19 @t13) (forall @t11 (=> @t16 (and (>= @t19 @t10) (>= @t10 0))))))) % 45.50/45.73 (assume @p8 (forall @t18 (= (tptp.distinct @t3 @t13) (forall @t17 (=> (and @t15 (> @t13 @t5) (>= @t5 0) @t14) (=> (= @t10 @t6) @t7)))))) % 45.50/45.73 (assume @p9 (forall (@list @t3 @t8 @t13) (=> (forall @t11 (or (and @t14 @t15 (= @t9 (tptp.read @t3 (- @t13 (+ @t2 1))))) (and (or (> 0 @t2) @t20) (= @t9 @t10)))) (= (tptp.rev @t3 @t13) @t8)))) % 45.50/45.73 (assume @p10 @t38) % 45.50/45.73 (assume @p11 true) % 45.50/45.73 (step @p12 :rule bool-double-not-elim :args (@t68)) % 45.50/45.73 (step @p13 :rule evaluate :args (@t69)) % 45.50/45.73 (step @p14 :rule refl :args (@t67)) % 45.50/45.73 (step @p15 :rule cong :premises (@p14 @p13) :args (@t70)) % 45.50/45.73 (step @p16 :rule cong :premises (@p15) :args ((not @t70))) % 45.50/45.73 (step @p17 :rule arith-leq-norm :args (@t67 0)) % 45.50/45.73 (step @p18 :rule trans :premises (@p17 @p16)) % 45.50/45.73 (step @p19 :rule cong :premises (@p18) :args ((not (<= @t67 0)))) % 45.50/45.73 (step @p20 :rule trans :premises (@p19 @p12)) % 45.50/45.73 (step @p21 :rule arith-elim-leq :args (@t67 0)) % 45.50/45.73 (step @p22 :rule symm :premises (@p21)) % 45.50/45.73 (step @p23 :rule cong :premises (@p22) :args ((not (>= 0 @t67)))) % 45.50/45.73 (step @p24 :rule arith-elim-gt :args (@t67 0)) % 45.50/45.73 (step @p25 :rule trans :premises (@p24 @p23)) % 45.50/45.73 (step @p26 :rule trans :premises (@p25 @p20)) % 45.50/45.73 (step @p27 :rule cong :premises (@p26) :args ((not (> @t67 0)))) % 45.50/45.73 (step @p28 :rule symm :premises (@p27)) % 45.50/45.73 (step @p29 :rule trans :premises (@p18 @p28)) % 45.50/45.73 (step @p30 :rule arith-elim-lt :args (@t67 1)) % 45.50/45.73 (step @p31 :rule symm :premises (@p30)) % 45.50/45.73 (step @p32 :rule aci_norm :args ((= (or @t57 @t55 @t49 @t46 @t44 @t42 @t40 false) @t58))) % 45.50/45.73 (step @p33 :rule evaluate :args ((not true))) % 45.50/45.73 (step @p34 :rule eq-refl :args (@t47)) % 45.50/45.73 (step @p35 :rule cong :premises (@p34) :args (@t71)) % 45.50/45.73 (step @p36 :rule trans :premises (@p35 @p33)) % 45.50/45.73 (step @p37 :rule refl :args (@t40)) % 45.50/45.73 (step @p38 :rule refl :args (@t42)) % 45.50/45.73 (step @p39 :rule refl :args (@t44)) % 45.50/45.73 (step @p40 :rule refl :args (@t46)) % 45.50/45.73 (step @p41 :rule arith_poly_norm :args ((= (* 1 (- @t47 @t48)) (* -1 (- @t48 @t47))))) % 45.50/45.73 (step @p42 :rule arith_poly_norm_rel :premises (@p41) :args ((= @t72 @t49))) % 45.50/45.73 (step @p43 :rule arith_poly_norm :args ((= (* -1 (- 1 @t75)) (* -1 (- @t74 0))))) % 45.50/45.73 (step @p44 :rule arith_poly_norm_rel :premises (@p43) :args ((= (>= 1 @t75) (>= @t74 0)))) % 45.50/45.73 (step @p45 :rule arith-geq-tighten :args (@t50 1)) % 45.50/45.73 (step @p46 :rule trans :premises (@p45 @p44)) % 45.50/45.73 (step @p47 :rule symm :premises (@p46)) % 45.50/45.73 (step @p48 :rule refl :args (0)) % 45.50/45.73 (step @p49 :rule arith_poly_norm :args ((= @t76 @t74))) % 45.50/45.73 (step @p50 :rule cong :premises (@p49 @p48) :args (@t77)) % 45.50/45.73 (step @p51 :rule trans :premises (@p50 @p47)) % 45.50/45.73 (step @p52 :rule refl :args (@t51)) % 45.50/45.73 (step @p53 :rule refl :args (@t54)) % 45.50/45.73 (step @p54 :rule nary_cong :premises (@p53 @p52 @p51) :args (@t78)) % 45.50/45.73 (step @p55 :rule cong :premises (@p54) :args (@t79)) % 45.50/45.73 (step @p56 :rule cong :premises (@p55) :args (@t80)) % 45.50/45.73 (step @p57 :rule refl :args (@t57)) % 45.50/45.73 (step @p58 :rule nary_cong :premises (@p57 @p56 @p42 @p40 @p39 @p38 @p37 @p36) :args (@t81)) % 45.50/45.73 (step @p59 :rule trans :premises (@p58 @p32)) % 45.50/45.73 (step @p60 :rule cong :premises (@p59) :args ((forall @t59 @t81))) % 45.50/45.73 (step @p61 :rule quant-var-elim-eq :args ((= (forall @t90 @t89) @t81))) % 45.50/45.73 (step @p62 :rule aci_norm :args ((= @t91 @t89))) % 45.50/45.73 (step @p63 :rule cong :premises (@p62) :args (@t92)) % 45.50/45.73 (step @p64 :rule trans :premises (@p63 @p61)) % 45.50/45.73 (step @p65 :rule cong :premises (@p64) :args (@t93)) % 45.50/45.73 (step @p66 :rule quant-merge-prenex :args ((= @t93 @t94))) % 45.50/45.73 (step @p67 :rule symm :premises (@p66)) % 45.50/45.73 (step @p68 :rule quant_var_reordering :args ((= (forall @t95 @t91) @t94))) % 45.50/45.73 (step @p69 :rule trans :premises (@p68 @p67 @p65)) % 45.50/45.73 (step @p70 :rule trans :premises (@p69 @p60)) % 45.50/45.73 (step @p71 :rule aci_norm :args ((= (or @t57 @t88 @t83 @t46 @t44 false @t42 @t40 @t82) @t91))) % 45.50/45.73 (step @p72 :rule refl :args (@t82)) % 45.50/45.73 (step @p73 :rule eq-refl :args (@t48)) % 45.50/45.73 (step @p74 :rule cong :premises (@p73) :args (@t96)) % 45.50/45.73 (step @p75 :rule trans :premises (@p74 @p33)) % 45.50/45.73 (step @p76 :rule arith_poly_norm :args ((= (* 1 (- @t48 @t21)) (* -1 (- @t21 @t48))))) % 45.50/45.73 (step @p77 :rule arith_poly_norm_rel :premises (@p76) :args ((= @t97 @t83))) % 45.50/45.73 (step @p78 :rule refl :args (@t88)) % 45.50/45.73 (step @p79 :rule arith_poly_norm :args ((= (* -1 (- 1 @t99)) (* -1 (- @t98 0))))) % 45.50/45.73 (step @p80 :rule arith_poly_norm_rel :premises (@p79) :args ((= (>= 1 @t99) (>= @t98 0)))) % 45.50/45.73 (step @p81 :rule arith-geq-tighten :args (@t56 1)) % 45.50/45.73 (step @p82 :rule trans :premises (@p81 @p80)) % 45.50/45.73 (step @p83 :rule symm :premises (@p82)) % 45.50/45.73 (step @p84 :rule arith_poly_norm :args ((= @t100 @t98))) % 45.50/45.73 (step @p85 :rule cong :premises (@p84 @p48) :args (@t101)) % 45.50/45.73 (step @p86 :rule trans :premises (@p85 @p83)) % 45.50/45.73 (step @p87 :rule nary_cong :premises (@p53 @p52 @p86) :args (@t102)) % 45.50/45.73 (step @p88 :rule cong :premises (@p87) :args (@t103)) % 45.50/45.73 (step @p89 :rule cong :premises (@p88) :args (@t104)) % 45.50/45.73 (step @p90 :rule nary_cong :premises (@p89 @p78 @p77 @p40 @p39 @p75 @p38 @p37 @p72) :args (@t105)) % 45.50/45.73 (step @p91 :rule trans :premises (@p90 @p71)) % 45.50/45.73 (step @p92 :rule cong :premises (@p91) :args ((forall @t95 @t105))) % 45.50/45.73 (step @p93 :rule trans :premises (@p92 @p70)) % 45.50/45.73 (step @p94 :rule quant-var-elim-eq :args ((= (forall @t113 @t112) @t105))) % 45.50/45.73 (step @p95 :rule aci_norm :args ((= @t114 @t112))) % 45.50/45.73 (step @p96 :rule cong :premises (@p95) :args (@t115)) % 45.50/45.73 (step @p97 :rule trans :premises (@p96 @p94)) % 45.50/45.73 (step @p98 :rule cong :premises (@p97) :args (@t116)) % 45.50/45.73 (step @p99 :rule quant-merge-prenex :args ((= @t116 @t117))) % 45.50/45.73 (step @p100 :rule symm :premises (@p99)) % 45.50/45.73 (step @p101 :rule quant_var_reordering :args ((= (forall @t118 @t114) @t117))) % 45.50/45.73 (step @p102 :rule trans :premises (@p101 @p100 @p98)) % 45.50/45.73 (step @p103 :rule trans :premises (@p102 @p93)) % 45.50/45.73 (step @p104 :rule arith_poly_norm :args ((= (* -1 (- 1 @t120)) (* -1 (- @t119 0))))) % 45.50/45.73 (step @p105 :rule arith_poly_norm_rel :premises (@p104) :args ((= (>= 1 @t120) (>= @t119 0)))) % 45.50/45.73 (step @p106 :rule arith-geq-tighten :args (@t41 1)) % 45.50/45.73 (step @p107 :rule trans :premises (@p106 @p105)) % 45.50/45.73 (step @p108 :rule symm :premises (@p107)) % 45.50/45.73 (step @p109 :rule arith_poly_norm :args ((= @t121 @t119))) % 45.50/45.73 (step @p110 :rule cong :premises (@p109 @p48) :args (@t122)) % 45.50/45.73 (step @p111 :rule trans :premises (@p110 @p108)) % 45.50/45.73 (step @p112 :rule refl :args (@t106)) % 45.50/45.73 (step @p113 :rule arith_poly_norm :args ((= (* -1 (- 1 @t124)) (* -1 (- @t123 0))))) % 45.50/45.73 (step @p114 :rule arith_poly_norm_rel :premises (@p113) :args ((= (>= 1 @t124) (>= @t123 0)))) % 45.50/45.73 (step @p115 :rule arith-geq-tighten :args (@t45 1)) % 45.50/45.73 (step @p116 :rule trans :premises (@p115 @p114)) % 45.50/45.73 (step @p117 :rule symm :premises (@p116)) % 45.50/45.73 (step @p118 :rule arith_poly_norm :args ((= @t125 @t123))) % 45.50/45.73 (step @p119 :rule cong :premises (@p118 @p48) :args (@t126)) % 45.50/45.73 (step @p120 :rule trans :premises (@p119 @p117)) % 45.50/45.73 (step @p121 :rule refl :args (@t23)) % 45.50/45.73 (step @p122 :rule refl :args (@t111)) % 45.50/45.73 (step @p123 :rule nary_cong :premises (@p122 @p78 @p121 @p120 @p39 @p112 @p111 @p37 @p72) :args (@t127)) % 45.50/45.73 (step @p124 :rule aci_norm :args ((= @t130 @t127))) % 45.50/45.73 (step @p125 :rule trans :premises (@p124 @p123)) % 45.50/45.73 (step @p126 :rule cong :premises (@p125) :args (@t131)) % 45.50/45.73 (step @p127 :rule trans :premises (@p126 @p103)) % 45.50/45.73 (step @p128 :rule quant-merge-prenex :args ((= (forall @t36 @t132) @t131))) % 45.50/45.73 (step @p129 :rule refl :args (@t23)) % 45.50/45.73 (step @p130 :rule alpha_equiv :args (@t133 (@list @t39) @t134)) % 45.50/45.73 (step @p131 :rule refl :args (@t88)) % 45.50/45.73 (step @p132 :rule alpha_equiv :args (@t135 (@list @t43) @t134)) % 45.50/45.73 (step @p133 :rule refl :args (@t111)) % 45.50/45.73 (step @p134 :rule nary_cong :premises (@p133 @p132 @p131 @p130 @p129) :args (@t136)) % 45.50/45.73 (step @p135 :rule quant-miniscope-or :args ((= @t132 @t136))) % 45.50/45.73 (step @p136 :rule trans :premises (@p135 @p134)) % 45.50/45.73 (step @p137 :rule symm :premises (@p136)) % 45.50/45.73 (step @p138 :rule cong :premises (@p137) :args ((forall @t36 @t143))) % 45.50/45.73 (step @p139 :rule trans :premises (@p138 @p128)) % 45.50/45.73 (step @p140 :rule trans :premises (@p139 @p127)) % 45.50/45.73 (step @p141 :rule aci_norm :args ((= (or (or @t111 @t142 @t88 @t139) @t23) @t143))) % 45.50/45.73 (step @p142 :rule bool-double-not-elim :args (@t139)) % 45.50/45.73 (step @p143 :rule bool-double-not-elim :args (@t142)) % 45.50/45.73 (step @p144 :rule nary_cong :premises (@p133 @p143 @p131 @p142) :args (@t148)) % 45.50/45.73 (step @p145 :rule aci_norm :args ((= (or @t111 (or @t147 (or @t88 @t145))) @t148))) % 45.50/45.73 (step @p146 :rule trans :premises (@p145 @p144)) % 45.50/45.73 (step @p147 :rule bool-and-de-morgan :args (@t87 @t144 true)) % 45.50/45.73 (step @p148 :rule refl :args (@t147)) % 45.50/45.73 (step @p149 :rule nary_cong :premises (@p148 @p147) :args ((or @t147 (not (and @t87 @t144))))) % 45.50/45.73 (step @p150 :rule bool-and-de-morgan :args (@t146 @t87 (and @t144))) % 45.50/45.73 (step @p151 :rule trans :premises (@p150 @p149)) % 45.50/45.73 (step @p152 :rule nary_cong :premises (@p133 @p151) :args ((or @t111 (not (and @t146 @t87 @t144))))) % 45.50/45.73 (step @p153 :rule bool-and-de-morgan :args (@t110 @t146 (and @t87 @t144))) % 45.50/45.73 (step @p154 :rule trans :premises (@p153 @p152)) % 45.50/45.73 (step @p155 :rule trans :premises (@p154 @p146)) % 45.50/45.73 (step @p156 :rule nary_cong :premises (@p155 @p129) :args ((or (not @t149) @t23))) % 45.50/45.73 (step @p157 :rule trans :premises (@p156 @p141)) % 45.50/45.73 (step @p158 :rule bool-impl-elim :args (@t149 @t23)) % 45.50/45.73 (step @p159 :rule trans :premises (@p158 @p157)) % 45.50/45.73 (step @p160 :rule cong :premises (@p159) :args ((forall @t36 (=> @t149 @t23)))) % 45.50/45.73 (step @p161 :rule trans :premises (@p160 @p140)) % 45.50/45.73 (step @p162 :rule refl :args (@t138)) % 45.50/45.73 (step @p163 :rule refl :args (@t51)) % 45.50/45.73 (step @p164 :rule bool-double-not-elim :args (@t54)) % 45.50/45.73 (step @p165 :rule nary_cong :premises (@p164 @p163 @p162) :args (@t152)) % 45.50/45.73 (step @p166 :rule aci_norm :args ((= (or @t151 (or @t51 @t138)) @t152))) % 45.50/45.73 (step @p167 :rule trans :premises (@p166 @p165)) % 45.50/45.73 (step @p168 :rule bool-and-de-morgan :args (@t14 @t137 true)) % 45.50/45.73 (step @p169 :rule refl :args (@t151)) % 45.50/45.73 (step @p170 :rule nary_cong :premises (@p169 @p168) :args ((or @t151 (not (and @t14 @t137))))) % 45.50/45.73 (step @p171 :rule bool-and-de-morgan :args (@t150 @t14 (and @t137))) % 45.50/45.73 (step @p172 :rule trans :premises (@p171 @p170)) % 45.50/45.73 (step @p173 :rule trans :premises (@p172 @p167)) % 45.50/45.73 (step @p174 :rule cong :premises (@p173) :args (@t154)) % 45.50/45.73 (step @p175 :rule cong :premises (@p174) :args (@t155)) % 45.50/45.73 (step @p176 :rule exists-elim :args ((= (exists @t11 @t153) @t155))) % 45.50/45.73 (step @p177 :rule trans :premises (@p176 @p175)) % 45.50/45.73 (step @p178 :rule arith_poly_norm :args ((= (* -1 (- @t10 @t21)) (* 1 @t156)))) % 45.50/45.73 (step @p179 :rule arith_poly_norm_rel :premises (@p178) :args ((= @t24 @t137))) % 45.50/45.73 (step @p180 :rule refl :args (@t14)) % 45.50/45.73 (step @p181 :rule arith_poly_norm :args ((= (* 1 (- @t2 @t13)) (* 1 (- @t53 0))))) % 45.50/45.73 (step @p182 :rule arith_poly_norm_rel :premises (@p181) :args ((= @t20 @t54))) % 45.50/45.73 (step @p183 :rule arith-elim-leq :args (@t13 @t2)) % 45.50/45.73 (step @p184 :rule trans :premises (@p183 @p182)) % 45.50/45.73 (step @p185 :rule cong :premises (@p184) :args ((not (<= @t13 @t2)))) % 45.50/45.73 (step @p186 :rule symm :premises (@p183)) % 45.50/45.73 (step @p187 :rule cong :premises (@p186) :args ((not @t20))) % 45.50/45.73 (step @p188 :rule arith-elim-gt :args (@t13 @t2)) % 45.50/45.73 (step @p189 :rule trans :premises (@p188 @p187)) % 45.50/45.73 (step @p190 :rule trans :premises (@p189 @p185)) % 45.50/45.73 (step @p191 :rule nary_cong :premises (@p190 @p180 @p179) :args (@t25)) % 45.50/45.73 (step @p192 :rule cong :premises (@p191) :args (@t26)) % 45.50/45.73 (step @p193 :rule trans :premises (@p192 @p177)) % 45.50/45.73 (step @p194 :rule aci_norm :args ((= (or @t157 @t85) @t86))) % 45.50/45.73 (step @p195 :rule refl :args (@t85)) % 45.50/45.73 (step @p196 :rule nary_cong :premises (@p164 @p163) :args ((or @t151 @t51))) % 45.50/45.73 (step @p197 :rule bool-and-de-morgan :args (@t150 @t14 true)) % 45.50/45.73 (step @p198 :rule trans :premises (@p197 @p196)) % 45.50/45.73 (step @p199 :rule nary_cong :premises (@p198 @p195) :args ((or @t159 @t85))) % 45.50/45.73 (step @p200 :rule trans :premises (@p199 @p194)) % 45.50/45.73 (step @p201 :rule bool-impl-elim :args (@t158 @t85)) % 45.50/45.73 (step @p202 :rule trans :premises (@p201 @p200)) % 45.50/45.73 (step @p203 :rule cong :premises (@p202) :args ((forall @t11 (=> @t158 @t85)))) % 45.50/45.73 (step @p204 :rule arith_poly_norm :args ((= (* -1 @t156) (* -1 (- @t84 0))))) % 45.50/45.73 (step @p205 :rule arith_poly_norm_rel :premises (@p204) :args ((= (>= @t21 @t10) @t85))) % 45.50/45.73 (step @p206 :rule arith-elim-leq :args (@t10 @t21)) % 45.50/45.73 (step @p207 :rule trans :premises (@p206 @p205)) % 45.50/45.73 (step @p208 :rule nary_cong :premises (@p190 @p180) :args (@t16)) % 45.50/45.73 (step @p209 :rule cong :premises (@p208 @p207) :args (@t27)) % 45.50/45.73 (step @p210 :rule cong :premises (@p209) :args (@t28)) % 45.50/45.73 (step @p211 :rule trans :premises (@p210 @p203)) % 45.50/45.73 (step @p212 :rule refl :args (@t141)) % 45.50/45.73 (step @p213 :rule nary_cong :premises (@p164 @p163 @p212) :args (@t160)) % 45.50/45.73 (step @p214 :rule aci_norm :args ((= (or @t151 (or @t51 @t141)) @t160))) % 45.50/45.73 (step @p215 :rule trans :premises (@p214 @p213)) % 45.50/45.73 (step @p216 :rule bool-and-de-morgan :args (@t14 @t140 true)) % 45.50/45.73 (step @p217 :rule nary_cong :premises (@p169 @p216) :args ((or @t151 (not (and @t14 @t140))))) % 45.50/45.73 (step @p218 :rule bool-and-de-morgan :args (@t150 @t14 (and @t140))) % 45.50/45.73 (step @p219 :rule trans :premises (@p218 @p217)) % 45.50/45.73 (step @p220 :rule trans :premises (@p219 @p215)) % 45.50/45.73 (step @p221 :rule cong :premises (@p220) :args (@t162)) % 45.50/45.73 (step @p222 :rule cong :premises (@p221) :args (@t163)) % 45.50/45.73 (step @p223 :rule exists-elim :args ((= (exists @t11 @t161) @t163))) % 45.50/45.73 (step @p224 :rule trans :premises (@p223 @p222)) % 45.50/45.73 (step @p225 :rule arith_poly_norm :args ((= (* -1 (- @t10 @t22)) (* 1 @t164)))) % 45.50/45.73 (step @p226 :rule arith_poly_norm_rel :premises (@p225) :args ((= @t29 @t140))) % 45.50/45.73 (step @p227 :rule nary_cong :premises (@p190 @p180 @p226) :args (@t30)) % 45.50/45.73 (step @p228 :rule cong :premises (@p227) :args (@t31)) % 45.50/45.73 (step @p229 :rule trans :premises (@p228 @p224)) % 45.50/45.73 (step @p230 :rule aci_norm :args ((= (or @t157 @t108) @t109))) % 45.50/45.73 (step @p231 :rule refl :args (@t108)) % 45.50/45.73 (step @p232 :rule nary_cong :premises (@p198 @p231) :args ((or @t159 @t108))) % 45.50/45.73 (step @p233 :rule trans :premises (@p232 @p230)) % 45.50/45.73 (step @p234 :rule bool-impl-elim :args (@t158 @t108)) % 45.50/45.73 (step @p235 :rule trans :premises (@p234 @p233)) % 45.50/45.73 (step @p236 :rule cong :premises (@p235) :args ((forall @t11 (=> @t158 @t108)))) % 45.50/45.73 (step @p237 :rule arith_poly_norm :args ((= (* -1 @t164) (* -1 (- @t107 0))))) % 45.50/45.73 (step @p238 :rule arith_poly_norm_rel :premises (@p237) :args ((= (>= @t22 @t10) @t108))) % 45.50/45.73 (step @p239 :rule arith-elim-leq :args (@t10 @t22)) % 45.50/45.73 (step @p240 :rule trans :premises (@p239 @p238)) % 45.50/45.73 (step @p241 :rule cong :premises (@p208 @p240) :args (@t32)) % 45.50/45.73 (step @p242 :rule cong :premises (@p241) :args (@t33)) % 45.50/45.73 (step @p243 :rule trans :premises (@p242 @p236)) % 45.50/45.73 (step @p244 :rule nary_cong :premises (@p243 @p229 @p211 @p193) :args (@t34)) % 45.50/45.73 (step @p245 :rule cong :premises (@p244 @p121) :args (@t35)) % 45.50/45.73 (step @p246 :rule cong :premises (@p245) :args (@t37)) % 45.50/45.73 (step @p247 :rule trans :premises (@p246 @p161)) % 45.50/45.73 (step @p248 :rule cong :premises (@p247) :args (@t38)) % 45.50/45.73 (step @p249 :rule eq_resolve :premises (@p10 @p248)) % 45.50/45.73 (step @p250 :rule skolemize :premises (@p249)) % 45.50/45.73 (step @p251 :rule bool-double-not-elim :args (@t169)) % 45.50/45.73 (step @p252 :rule refl :args (@t185)) % 45.50/45.73 (step @p253 :rule nary_cong :premises (@p252 @p251) :args ((or @t185 (not @t181)))) % 45.50/45.73 (step @p254 :rule cnf_or_neg :args (@t185 1)) % 45.50/45.73 (step @p255 :rule eq_resolve :premises (@p254 @p253)) % 45.50/45.73 (step @p256 :rule reordering :premises (@p255) :args ((or @t169 @t185))) % 45.50/45.73 (step @p257 :rule chain_m_resolution :premises (@p256 @p250) :args (@t169 @t186 @t187)) % 45.50/45.73 (step @p258 :rule refl :args (@t188)) % 45.50/45.73 (step @p259 :rule refl :args (@t176)) % 45.50/45.73 (step @p260 :rule arith_poly_norm :args ((= (* -1 (- 1 @t190)) (* -1 (- @t189 0))))) % 45.50/45.73 (step @p261 :rule arith_poly_norm_rel :premises (@p260) :args ((= (>= 1 @t190) (>= @t189 0)))) % 45.50/45.73 (step @p262 :rule arith-geq-tighten :args (@t177 1)) % 45.50/45.73 (step @p263 :rule trans :premises (@p262 @p261)) % 45.50/45.73 (step @p264 :rule symm :premises (@p263)) % 45.50/45.73 (step @p265 :rule arith_poly_norm :args ((= @t191 @t189))) % 45.50/45.73 (step @p266 :rule cong :premises (@p265 @p48) :args (@t192)) % 45.50/45.73 (step @p267 :rule trans :premises (@p266 @p264)) % 45.50/45.73 (step @p268 :rule nary_cong :premises (@p267 @p259 @p258) :args (@t193)) % 45.50/45.73 (step @p269 :rule refl :args (@t169)) % 45.50/45.73 (step @p270 :rule cong :premises (@p269 @p268) :args ((=> @t169 @t193))) % 45.50/45.73 (assume-push @p357 @t169) % 45.50/45.73 (step @p272 :rule instantiate :premises (@p257) :args ((@list @t65))) % 45.50/45.73 (step-pop @p358 :rule scope :premises (@p272)) % 45.50/45.73 (step @p273 :rule process_scope :premises (@p358) :args (@t193)) % 45.50/45.73 (step @p275 :rule eq_resolve :premises (@p273 @p270)) % 45.50/45.73 (step @p276 :rule implies_elim :premises (@p275)) % 45.50/45.73 (step @p277 :rule chain_m_resolution :premises (@p276 @p257) :args (@t194 @t195 (@list @t169))) % 45.50/45.73 (step @p278 :rule bool-double-not-elim :args (@t175)) % 45.50/45.73 (step @p279 :rule nary_cong :premises (@p252 @p278) :args ((or @t185 (not @t176)))) % 45.50/45.73 (step @p280 :rule cnf_or_neg :args (@t185 4)) % 45.50/45.73 (step @p281 :rule eq_resolve :premises (@p280 @p279)) % 45.50/45.73 (step @p282 :rule reordering :premises (@p281) :args ((or @t175 @t185))) % 45.50/45.73 (step @p283 :rule chain_m_resolution :premises (@p282 @p250) :args (@t175 @t186 @t187)) % 45.50/45.73 (step @p284 :rule bool-double-not-elim :args (@t178)) % 45.50/45.73 (step @p285 :rule nary_cong :premises (@p252 @p284) :args ((or @t185 (not @t179)))) % 45.50/45.73 (step @p286 :rule cnf_or_neg :args (@t185 3)) % 45.50/45.73 (step @p287 :rule eq_resolve :premises (@p286 @p285)) % 45.50/45.73 (step @p288 :rule reordering :premises (@p287) :args ((or @t178 @t185))) % 45.50/45.73 (step @p289 :rule chain_m_resolution :premises (@p288 @p250) :args (@t178 @t186 @t187)) % 45.50/45.73 (step @p290 :rule cnf_or_pos :args (@t194)) % 45.50/45.73 (step @p291 :rule reordering :premises (@p290) :args ((or @t179 @t176 @t188 (not @t194)))) % 45.50/45.73 (step @p292 :rule chain_m_resolution :premises (@p291 @p289 @p283 @p277) :args (@t188 @t196 (@list @t178 @t175 @t194))) % 45.50/45.73 (step @p293 :rule eq_resolve :premises (@p292 @p31)) % 45.50/45.73 (step @p294 :rule int_tight_ub :premises (@p293)) % 45.50/45.73 (step @p295 :rule eq_resolve :premises (@p294 @p29)) % 45.50/45.73 (step @p296 :rule bool-double-not-elim :args (@t183)) % 45.50/45.73 (step @p297 :rule nary_cong :premises (@p252 @p296) :args ((or @t185 (not @t184)))) % 45.50/45.73 (step @p298 :rule cnf_or_neg :args (@t185 0)) % 45.50/45.73 (step @p299 :rule eq_resolve :premises (@p298 @p297)) % 45.50/45.73 (step @p300 :rule reordering :premises (@p299) :args ((or @t183 @t185))) % 45.50/45.73 (step @p301 :rule chain_m_resolution :premises (@p300 @p250) :args (@t183 @t186 @t187)) % 45.50/45.73 (step @p302 :rule bool-double-not-elim :args (@t197)) % 45.50/45.73 (step @p303 :rule arith_poly_norm :args ((= (* -1 (- 0 @t199)) (* -1 (- @t198 1))))) % 45.50/45.73 (step @p304 :rule arith_poly_norm_rel :premises (@p303) :args ((= (>= 0 @t199) (>= @t198 1)))) % 45.50/45.73 (step @p305 :rule arith-geq-tighten :args (@t67 0)) % 45.50/45.73 (step @p306 :rule trans :premises (@p305 @p304)) % 45.50/45.73 (step @p307 :rule symm :premises (@p306)) % 45.50/45.73 (step @p308 :rule refl :args (1)) % 45.50/45.73 (step @p309 :rule arith_poly_norm :args ((= @t200 @t198))) % 45.50/45.73 (step @p310 :rule cong :premises (@p309 @p308) :args (@t201)) % 45.50/45.73 (step @p311 :rule trans :premises (@p310 @p307)) % 45.50/45.73 (step @p312 :rule cong :premises (@p311) :args (@t202)) % 45.50/45.73 (step @p313 :rule trans :premises (@p312 @p302)) % 45.50/45.73 (step @p314 :rule refl :args (@t171)) % 45.50/45.73 (step @p315 :rule arith_poly_norm :args ((= (* -1 (- 1 @t204)) (* -1 (- @t203 0))))) % 45.50/45.73 (step @p316 :rule arith_poly_norm_rel :premises (@p315) :args ((= (>= 1 @t204) (>= @t203 0)))) % 45.50/45.73 (step @p317 :rule arith-geq-tighten :args (@t172 1)) % 45.50/45.73 (step @p318 :rule trans :premises (@p317 @p316)) % 45.50/45.73 (step @p319 :rule symm :premises (@p318)) % 45.50/45.73 (step @p320 :rule arith_poly_norm :args ((= @t205 @t203))) % 45.50/45.73 (step @p321 :rule cong :premises (@p320 @p48) :args (@t206)) % 45.50/45.73 (step @p322 :rule trans :premises (@p321 @p319)) % 45.50/45.73 (step @p323 :rule nary_cong :premises (@p322 @p314 @p313) :args (@t207)) % 45.50/45.73 (step @p324 :rule refl :args (@t183)) % 45.50/45.73 (step @p325 :rule cong :premises (@p324 @p323) :args ((=> @t183 @t207))) % 45.50/45.73 (assume-push @p359 @t183) % 45.50/45.73 (step @p327 :rule instantiate :premises (@p301) :args ((@list @t61))) % 45.50/45.73 (step-pop @p360 :rule scope :premises (@p327)) % 45.50/45.73 (step @p328 :rule process_scope :premises (@p360) :args (@t207)) % 45.50/45.73 (step @p330 :rule eq_resolve :premises (@p328 @p325)) % 45.50/45.73 (step @p331 :rule implies_elim :premises (@p330)) % 45.50/45.73 (step @p332 :rule chain_m_resolution :premises (@p331 @p301) :args (@t208 @t195 (@list @t183))) % 45.50/45.73 (step @p333 :rule bool-double-not-elim :args (@t170)) % 45.50/45.73 (step @p334 :rule nary_cong :premises (@p252 @p333) :args ((or @t185 (not @t171)))) % 45.50/45.73 (step @p335 :rule cnf_or_neg :args (@t185 6)) % 45.50/45.73 (step @p336 :rule eq_resolve :premises (@p335 @p334)) % 45.50/45.73 (step @p337 :rule reordering :premises (@p336) :args ((or @t170 @t185))) % 45.50/45.73 (step @p338 :rule chain_m_resolution :premises (@p337 @p250) :args (@t170 @t186 @t187)) % 45.50/45.73 (step @p339 :rule bool-double-not-elim :args (@t173)) % 45.50/45.73 (step @p340 :rule nary_cong :premises (@p252 @p339) :args ((or @t185 (not @t174)))) % 45.50/45.73 (step @p341 :rule cnf_or_neg :args (@t185 5)) % 45.50/45.73 (step @p342 :rule eq_resolve :premises (@p341 @p340)) % 45.50/45.73 (step @p343 :rule reordering :premises (@p342) :args ((or @t173 @t185))) % 45.50/45.73 (step @p344 :rule chain_m_resolution :premises (@p343 @p250) :args (@t173 @t186 @t187)) % 45.50/45.73 (step @p345 :rule cnf_or_pos :args (@t208)) % 45.50/45.73 (step @p346 :rule reordering :premises (@p345) :args ((or @t174 @t171 @t197 (not @t208)))) % 45.50/45.73 (step @p347 :rule chain_m_resolution :premises (@p346 @p344 @p338 @p332) :args (@t197 @t196 (@list @t173 @t170 @t208))) % 45.50/45.73 (step @p348 :rule arith_poly_norm :args ((= (* 1 (- @t67 0)) (* 1 (- @t66 @t63))))) % 45.50/45.73 (step @p349 :rule arith_poly_norm_rel :premises (@p348) :args ((= @t209 @t180))) % 45.50/45.73 (step @p350 :rule cong :premises (@p349) :args ((not @t209))) % 45.50/45.73 (step @p351 :rule symm :premises (@p350)) % 45.50/45.73 (step @p352 :rule cnf_or_neg :args (@t185 2)) % 45.50/45.73 (step @p353 :rule chain_m_resolution :premises (@p352 @p250) :args ((not @t180) @t186 @t187)) % 45.50/45.73 (step @p354 :rule eq_resolve :premises (@p353 @p351)) % 45.50/45.73 (step @p355 :rule arith_trichotomy :premises (@p354 @p347)) % 45.50/45.73 (step @p356 false :rule contra :premises (@p355 @p295)) % 45.50/45.73 ) % 45.50/45.73 % SZS output end Proof % 45.50/45.73 % cvc5 exiting %------------------------------------------------------------------------------