↑ Up

cvc5---1.3.4.THM-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : cvc5---1.3.4
% Problem  : SWW677_1 : TPTP v9.2.1. Released v6.4.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM

% Computer : n024.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Wed Jun  3 09:05:28 AM UTC 2026

% Result   : Theorem 65.17s 65.41s
% Output   : Proof 65.17s
% Verified : 
% SZS Type : -

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