%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : SWW620_2 : TPTP v9.2.1. Released v6.1.0. % Transfm : none % Format : tptp:raw % Command : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM % Computer : n019.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:21 AM UTC 2026 % Result : Theorem 45.82s 46.04s % Output : Proof 45.82s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : SWW620_2 : TPTP v9.2.1. Released v6.1.0. % 0.13/0.13 % Command : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM % 0.17/0.34 % Computer : n019.cluster.edu % 0.17/0.34 % Model : x86_64 x86_64 % 0.17/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.17/0.34 % Memory : 8042.1875MB % 0.17/0.34 % OS : Linux 3.10.0-693.el7.x86_64 % 0.17/0.35 % CPULimit : 300 % 0.17/0.35 % WCLimit : 300 % 0.17/0.35 % DateTime : Tue Jun 2 22:19:04 EDT 2026 % 0.17/0.35 % CPUTime : % 0.26/0.52 %----Proving TF0_ARI % 45.82/46.04 --- Run --finite-model-find --decision=internal at 45... % 45.82/46.04 --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 60... % 45.82/46.04 % SZS status Theorem % 45.82/46.04 % SZS output start Proof % 45.82/46.04 ( % 45.82/46.04 (declare-sort tptp.array_elt3 0) % 45.82/46.04 (declare-sort tptp.map_int_elt3 0) % 45.82/46.04 (declare-sort tptp.elt6 0) % 45.82/46.04 (declare-sort tptp.tuple02 0) % 45.82/46.04 (declare-sort tptp.bool1 0) % 45.82/46.04 (declare-sort tptp.ty 0) % 45.82/46.04 (declare-sort tptp.uni 0) % 45.82/46.04 (declare-const tptp.tb2t12 (-> tptp.uni tptp.map_int_elt3)) % 45.82/46.04 (declare-const tptp.t2tb12 (-> tptp.map_int_elt3 tptp.uni)) % 45.82/46.04 (declare-const tptp.max (-> Int Int Int)) % 45.82/46.04 (declare-const tptp.mod (-> Int Int Int)) % 45.82/46.04 (declare-const tptp.abs (-> Int Int)) % 45.82/46.04 (declare-const tptp.permut_all (-> tptp.ty tptp.uni tptp.uni Bool)) % 45.82/46.04 (declare-const tptp.permut_sub1 (-> tptp.ty tptp.uni tptp.uni Int Int Bool)) % 45.82/46.04 (declare-const tptp.permut3 (-> tptp.ty tptp.uni tptp.uni Int Int Bool)) % 45.82/46.04 (declare-const tptp.exchange3 (-> tptp.ty tptp.uni tptp.uni Int Int Bool)) % 45.82/46.04 (declare-const tptp.array_eq (-> tptp.ty tptp.uni tptp.uni Bool)) % 45.82/46.04 (declare-const tptp.array_eq_sub1 (-> tptp.ty tptp.uni tptp.uni Int Int Bool)) % 45.82/46.04 (declare-const tptp.map_eq_sub1 (-> tptp.ty tptp.uni tptp.uni Int Int Bool)) % 45.82/46.04 (declare-const tptp.permut2 (-> tptp.ty tptp.uni tptp.uni Int Int Bool)) % 45.82/46.04 (declare-const tptp.contents (-> tptp.ty tptp.uni tptp.uni)) % 45.82/46.04 (declare-const tptp.ref (-> tptp.ty tptp.ty)) % 45.82/46.04 (declare-const tptp.const (-> tptp.ty tptp.ty tptp.uni tptp.uni)) % 45.82/46.04 (declare-const tptp.set (-> tptp.ty tptp.ty tptp.uni tptp.uni tptp.uni tptp.uni)) % 45.82/46.04 (declare-const tptp.tuple03 tptp.tuple02) % 45.82/46.04 (declare-const tptp.map (-> tptp.ty tptp.ty tptp.ty)) % 45.82/46.04 (declare-const tptp.false1 tptp.bool1) % 45.82/46.04 (declare-const tptp.array (-> tptp.ty tptp.ty)) % 45.82/46.04 (declare-const tptp.mk_ref (-> tptp.ty tptp.uni tptp.uni)) % 45.82/46.04 (declare-const tptp.match_bool1 (-> tptp.ty tptp.bool1 tptp.uni tptp.uni tptp.uni)) % 45.82/46.04 (declare-const tptp.true1 tptp.bool1) % 45.82/46.04 (declare-const tptp.set2 (-> tptp.ty tptp.uni Int tptp.uni tptp.uni)) % 45.82/46.04 (declare-const tptp.le4 (-> tptp.elt6 tptp.elt6 Bool)) % 45.82/46.04 (declare-const tptp.sort1 (-> tptp.ty tptp.uni Bool)) % 45.82/46.04 (declare-const tptp.t2tb10 (-> tptp.array_elt3 tptp.uni)) % 45.82/46.04 (declare-const tptp.witness1 (-> tptp.ty tptp.uni)) % 45.82/46.04 (declare-const tptp.min (-> Int Int Int)) % 45.82/46.04 (declare-const tptp.get (-> tptp.ty tptp.ty tptp.uni tptp.uni tptp.uni)) % 45.82/46.04 (declare-const tptp.int tptp.ty) % 45.82/46.04 (declare-const tptp.exchange2 (-> tptp.ty tptp.uni tptp.uni Int Int Int Int Bool)) % 45.82/46.04 (declare-const tptp.mk_array1 (-> tptp.ty Int tptp.uni tptp.uni)) % 45.82/46.04 (declare-const tptp.sorted4 (-> tptp.array_elt3 Bool)) % 45.82/46.04 (declare-const tptp.elts (-> tptp.ty tptp.uni tptp.uni)) % 45.82/46.04 (declare-const tptp.get2 (-> tptp.ty tptp.uni Int tptp.uni)) % 45.82/46.04 (declare-const tptp.occ1 (-> tptp.ty tptp.uni tptp.uni Int Int Int)) % 45.82/46.04 (declare-const tptp.elt7 tptp.ty) % 45.82/46.04 (declare-const tptp.t2tb (-> Int tptp.uni)) % 45.82/46.04 (declare-const tptp.div (-> Int Int Int)) % 45.82/46.04 (declare-const tptp.tb2t (-> tptp.uni Int)) % 45.82/46.04 (declare-const tptp.make1 (-> tptp.ty Int tptp.uni tptp.uni)) % 45.82/46.04 (declare-const tptp.length1 (-> tptp.ty tptp.uni Int)) % 45.82/46.04 (declare-const tptp.tb2t10 (-> tptp.uni tptp.array_elt3)) % 45.82/46.04 (declare-const tptp.t2tb11 (-> tptp.elt6 tptp.uni)) % 45.82/46.04 (declare-const tptp.tb2t11 (-> tptp.uni tptp.elt6)) % 45.82/46.04 (declare-const tptp.sorted_sub4 (-> tptp.array_elt3 Int Int Bool)) % 45.82/46.04 (define @t1 () (@var "A" tptp.ty)) % 45.82/46.04 (define @t2 () (@var "X2" tptp.uni)) % 45.82/46.04 (define @t3 () (@var "X1" tptp.uni)) % 45.82/46.04 (define @t4 () (@var "X" tptp.bool1)) % 45.82/46.04 (define @t5 () (@var "Z" tptp.uni)) % 45.82/46.04 (define @t6 () (@var "Z1" tptp.uni)) % 45.82/46.04 (define @t7 () (@list @t1 @t5 @t6)) % 45.82/46.04 (define @t8 () (@var "U" tptp.bool1)) % 45.82/46.04 (define @t9 () (@var "U" tptp.tuple02)) % 45.82/46.04 (define @t10 () (@var "Z" Int)) % 45.82/46.04 (define @t11 () (@var "Y" Int)) % 45.82/46.04 (define @t12 () (@var "X" Int)) % 45.82/46.04 (define @t13 () (<= 0 @t10)) % 45.82/46.04 (define @t14 () (<= @t12 @t11)) % 45.82/46.04 (define @t15 () (@list @t12 @t11 @t10)) % 45.82/46.04 (define @t16 () (@var "X" tptp.uni)) % 45.82/46.04 (define @t17 () (@var "B" tptp.ty)) % 45.82/46.04 (define @t18 () (tptp.map @t1 @t17)) % 45.82/46.04 (define @t19 () (@var "B1" tptp.uni)) % 45.82/46.04 (define @t20 () (@var "A2" tptp.uni)) % 45.82/46.04 (define @t21 () (@var "A1" tptp.uni)) % 45.82/46.04 (define @t22 () (@var "M" tptp.uni)) % 45.82/46.04 (define @t23 () (tptp.get @t17 @t1 (tptp.set @t17 @t1 @t22 @t21 @t19) @t20)) % 45.82/46.04 (define @t24 () (= @t21 @t20)) % 45.82/46.04 (define @t25 () (tptp.sort1 @t17 @t19)) % 45.82/46.04 (define @t26 () (tptp.array @t1)) % 45.82/46.04 (define @t27 () (@list @t1 @t12 @t3)) % 45.82/46.04 (define @t28 () (@var "U" Int)) % 45.82/46.04 (define @t29 () (@var "U1" tptp.uni)) % 45.82/46.04 (define @t30 () (tptp.mk_array1 @t1 @t28 @t29)) % 45.82/46.04 (define @t31 () (@list @t1 @t28 @t29)) % 45.82/46.04 (define @t32 () (tptp.map tptp.int @t1)) % 45.82/46.04 (define @t33 () (@list @t1 @t16)) % 45.82/46.04 (define @t34 () (@var "U" tptp.uni)) % 45.82/46.04 (define @t35 () (@list @t1 @t34)) % 45.82/46.04 (define @t36 () (@var "X1" Int)) % 45.82/46.04 (define @t37 () (@list @t12)) % 45.82/46.04 (define @t38 () (@var "I" Int)) % 45.82/46.04 (define @t39 () (tptp.t2tb @t38)) % 45.82/46.04 (define @t40 () (@list @t38)) % 45.82/46.04 (define @t41 () (@var "J" tptp.uni)) % 45.82/46.04 (define @t42 () (@list @t41)) % 45.82/46.04 (define @t43 () (tptp.elts @t1 @t21)) % 45.82/46.04 (define @t44 () (@var "V" tptp.uni)) % 45.82/46.04 (define @t45 () (tptp.length1 @t1 @t21)) % 45.82/46.04 (define @t46 () (@var "N" Int)) % 45.82/46.04 (define @t47 () (@var "X" tptp.elt6)) % 45.82/46.04 (define @t48 () (@list @t47)) % 45.82/46.04 (define @t49 () (@var "Z" tptp.elt6)) % 45.82/46.04 (define @t50 () (@var "Y" tptp.elt6)) % 45.82/46.04 (define @t51 () (tptp.le4 @t47 @t50)) % 45.82/46.04 (define @t52 () (@var "X" tptp.array_elt3)) % 45.82/46.04 (define @t53 () (@var "I" tptp.array_elt3)) % 45.82/46.04 (define @t54 () (@var "I" tptp.elt6)) % 45.82/46.04 (define @t55 () (@var "I2" Int)) % 45.82/46.04 (define @t56 () (@var "A" tptp.array_elt3)) % 45.82/46.04 (define @t57 () (tptp.t2tb10 @t56)) % 45.82/46.04 (define @t58 () (@var "I1" Int)) % 45.82/46.04 (define @t59 () (tptp.le4 (tptp.tb2t11 (tptp.get2 tptp.elt7 @t57 @t58)) (tptp.tb2t11 (tptp.get2 tptp.elt7 @t57 @t55)))) % 45.82/46.04 (define @t60 () (<= @t58 @t55)) % 45.82/46.04 (define @t61 () (@var "L" Int)) % 45.82/46.04 (define @t62 () (and (<= @t61 @t58) @t60 (< @t55 @t28))) % 45.82/46.04 (define @t63 () (=> @t62 @t59)) % 45.82/46.04 (define @t64 () (@list @t58 @t55)) % 45.82/46.04 (define @t65 () (forall @t64 @t63)) % 45.82/46.04 (define @t66 () (tptp.sorted_sub4 @t56 @t61 @t28)) % 45.82/46.04 (define @t67 () (= @t66 @t65)) % 45.82/46.04 (define @t68 () (@list @t56 @t61 @t28)) % 45.82/46.04 (define @t69 () (forall @t68 @t67)) % 45.82/46.04 (define @t70 () (tptp.ref @t1)) % 45.82/46.04 (define @t71 () (tptp.occ1 @t1 @t44 @t22 @t61 @t28)) % 45.82/46.04 (define @t72 () (= @t71 0)) % 45.82/46.04 (define @t73 () (@list @t1 @t44 @t22 @t61 @t28)) % 45.82/46.04 (define @t74 () (- @t28 1)) % 45.82/46.04 (define @t75 () (tptp.occ1 @t1 @t44 @t22 @t61 @t74)) % 45.82/46.04 (define @t76 () (= (tptp.get @t1 tptp.int @t22 (tptp.t2tb @t74)) @t44)) % 45.82/46.04 (define @t77 () (< @t61 @t28)) % 45.82/46.04 (define @t78 () (tptp.sort1 @t1 @t44)) % 45.82/46.04 (define @t79 () (@var "Mid" Int)) % 45.82/46.04 (define @t80 () (tptp.get @t1 tptp.int @t22 @t39)) % 45.82/46.04 (define @t81 () (= @t80 @t44)) % 45.82/46.04 (define @t82 () (< @t38 @t28)) % 45.82/46.04 (define @t83 () (<= @t61 @t38)) % 45.82/46.04 (define @t84 () (and @t83 @t82)) % 45.82/46.04 (define @t85 () (@var "M2" tptp.uni)) % 45.82/46.04 (define @t86 () (@var "M1" tptp.uni)) % 45.82/46.04 (define @t87 () (= (tptp.occ1 @t1 @t44 @t86 @t61 @t28) (tptp.occ1 @t1 @t44 @t85 @t61 @t28))) % 45.82/46.04 (define @t88 () (tptp.permut2 @t1 @t86 @t85 @t61 @t28)) % 45.82/46.04 (define @t89 () (@list @t44)) % 45.82/46.04 (define @t90 () (@var "A3" tptp.uni)) % 45.82/46.04 (define @t91 () (tptp.permut2 @t1 @t21 @t20 @t61 @t28)) % 45.82/46.04 (define @t92 () (tptp.get @t1 tptp.int @t20 @t39)) % 45.82/46.04 (define @t93 () (@var "J" Int)) % 45.82/46.04 (define @t94 () (tptp.t2tb @t93)) % 45.82/46.04 (define @t95 () (tptp.get @t1 tptp.int @t21 @t94)) % 45.82/46.04 (define @t96 () (= @t95 @t92)) % 45.82/46.04 (define @t97 () (< @t93 @t28)) % 45.82/46.04 (define @t98 () (<= @t61 @t93)) % 45.82/46.04 (define @t99 () (tptp.get @t1 tptp.int @t21 @t39)) % 45.82/46.04 (define @t100 () (@list @t1 @t21 @t20 @t61 @t28)) % 45.82/46.04 (define @t101 () (tptp.elts @t1 @t20)) % 45.82/46.04 (define @t102 () (<= @t28 @t45)) % 45.82/46.04 (define @t103 () (<= 0 @t28)) % 45.82/46.04 (define @t104 () (<= @t61 @t45)) % 45.82/46.04 (define @t105 () (<= 0 @t61)) % 45.82/46.04 (define @t106 () (= @t45 (tptp.length1 @t1 @t20))) % 45.82/46.04 (define @t107 () (@list @t1 @t21 @t20)) % 45.82/46.04 (define @t108 () (@var "K" Int)) % 45.82/46.04 (define @t109 () (tptp.t2tb @t108)) % 45.82/46.04 (define @t110 () (and @t98 @t97)) % 45.82/46.04 (define @t111 () (tptp.exchange3 @t1 @t21 @t20 @t38 @t93)) % 45.82/46.04 (define @t112 () (@list @t1 @t21 @t20 @t38 @t93)) % 45.82/46.04 (define @t113 () (tptp.permut3 @t1 @t21 @t20 @t61 @t28)) % 45.82/46.04 (define @t114 () (tptp.permut_sub1 @t1 @t21 @t20 @t61 @t28)) % 45.82/46.04 (define @t115 () (tptp.permut_all @t1 @t21 @t20)) % 45.82/46.04 (define @t116 () (@var "U2" Int)) % 45.82/46.04 (define @t117 () (@var "L2" Int)) % 45.82/46.04 (define @t118 () (@var "U1" Int)) % 45.82/46.04 (define @t119 () (@var "L1" Int)) % 45.82/46.04 (define @t120 () (tptp.abs @t12)) % 45.82/46.04 (define @t121 () (<= 0 @t12)) % 45.82/46.04 (define @t122 () (@list @t12 @t11)) % 45.82/46.04 (define @t123 () (tptp.mod @t12 @t11)) % 45.82/46.04 (define @t124 () (tptp.div @t12 @t11)) % 45.82/46.04 (define @t125 () (not (= @t11 0))) % 45.82/46.04 (define @t126 () (<= 0 @t124)) % 45.82/46.04 (define @t127 () (< 0 @t11)) % 45.82/46.04 (define @t128 () (and @t121 @t127)) % 45.82/46.04 (define @t129 () (tptp.abs @t11)) % 45.82/46.04 (define @t130 () (<= @t12 0)) % 45.82/46.04 (define @t131 () (and @t121 (< @t12 @t11))) % 45.82/46.04 (define @t132 () (+ (* @t12 @t11) @t10)) % 45.82/46.04 (define @t133 () (and (< 0 @t12) (<= 0 @t11) @t13)) % 45.82/46.04 (define @t134 () (tptp.max @t12 @t11)) % 45.82/46.04 (define @t135 () (= @t134 @t11)) % 45.82/46.04 (define @t136 () (= @t134 @t12)) % 45.82/46.04 (define @t137 () (tptp.min @t12 @t11)) % 45.82/46.04 (define @t138 () (= @t137 @t11)) % 45.82/46.04 (define @t139 () (= @t137 @t12)) % 45.82/46.04 (define @t140 () (<= @t11 @t12)) % 45.82/46.04 (define @t141 () (@var "X" tptp.map_int_elt3)) % 45.82/46.04 (define @t142 () (tptp.map tptp.int tptp.elt7)) % 45.82/46.04 (define @t143 () (@var "I" tptp.map_int_elt3)) % 45.82/46.04 (define @t144 () (@var "Lo" Int)) % 45.82/46.04 (define @t145 () (+ @t144 1)) % 45.82/46.04 (define @t146 () (@var "A1" tptp.map_int_elt3)) % 45.82/46.04 (define @t147 () (@var "A" Int)) % 45.82/46.04 (define @t148 () (tptp.tb2t10 (tptp.mk_array1 tptp.elt7 @t147 (tptp.t2tb12 @t146)))) % 45.82/46.04 (define @t149 () (tptp.sorted_sub4 @t148 @t144 @t145)) % 45.82/46.04 (define @t150 () (and (<= 0 @t147) (<= 0 @t144) (< @t144 @t147))) % 45.82/46.04 (define @t151 () (=> @t150 @t149)) % 45.82/46.04 (define @t152 () (@list @t147 @t146 @t144)) % 45.82/46.04 (define @t153 () (forall @t152 @t151)) % 45.82/46.04 (define @t154 () (not @t153)) % 45.82/46.04 (define @t155 () (* -1 @t55)) % 45.82/46.04 (define @t156 () (+ @t28 @t155)) % 45.82/46.04 (define @t157 () (>= @t156 1)) % 45.82/46.04 (define @t158 () (not @t157)) % 45.82/46.04 (define @t159 () (+ @t58 @t155)) % 45.82/46.04 (define @t160 () (>= @t159 1)) % 45.82/46.04 (define @t161 () (* -1 @t58)) % 45.82/46.04 (define @t162 () (+ @t61 @t161)) % 45.82/46.04 (define @t163 () (>= @t162 1)) % 45.82/46.04 (define @t164 () (or @t163 @t160 @t158 @t59)) % 45.82/46.04 (define @t165 () (not @t160)) % 45.82/46.04 (define @t166 () (not @t165)) % 45.82/46.04 (define @t167 () (not @t163)) % 45.82/46.04 (define @t168 () (not @t167)) % 45.82/46.04 (define @t169 () (or @t168 @t166 @t158)) % 45.82/46.04 (define @t170 () (and @t167 @t165 @t157)) % 45.82/46.04 (define @t171 () (+ @t156 1)) % 45.82/46.04 (define @t172 () (>= @t55 @t28)) % 45.82/46.04 (define @t173 () (+ @t55 1)) % 45.82/46.04 (define @t174 () (>= @t58 @t173)) % 45.82/46.04 (define @t175 () (+ @t58 1)) % 45.82/46.04 (define @t176 () (>= @t61 @t175)) % 45.82/46.04 (define @t177 () (+ 1 @t144)) % 45.82/46.04 (define @t178 () (tptp.sorted_sub4 @t148 @t144 @t177)) % 45.82/46.04 (define @t179 () (+ @t147 (* -1 @t144))) % 45.82/46.04 (define @t180 () (>= @t179 1)) % 45.82/46.04 (define @t181 () (not @t180)) % 45.82/46.04 (define @t182 () (>= @t144 0)) % 45.82/46.04 (define @t183 () (not @t182)) % 45.82/46.04 (define @t184 () (>= @t147 0)) % 45.82/46.04 (define @t185 () (not @t184)) % 45.82/46.04 (define @t186 () (or @t185 @t183 @t181 @t178)) % 45.82/46.04 (define @t187 () (forall @t152 @t186)) % 45.82/46.04 (define @t188 () (@quantifiers_skolemize @t187 0)) % 45.82/46.04 (define @t189 () (tptp.tb2t10 (tptp.mk_array1 tptp.elt7 @t188 (tptp.t2tb12 (@quantifiers_skolemize @t187 1))))) % 45.82/46.04 (define @t190 () (tptp.t2tb10 @t189)) % 45.82/46.04 (define @t191 () (tptp.le4 (tptp.tb2t11 (tptp.get2 tptp.elt7 @t190 @t58)) (tptp.tb2t11 (tptp.get2 tptp.elt7 @t190 @t55)))) % 45.82/46.04 (define @t192 () (@quantifiers_skolemize @t187 2)) % 45.82/46.04 (define @t193 () (* -1 @t192)) % 45.82/46.04 (define @t194 () (+ @t55 @t193)) % 45.82/46.04 (define @t195 () (>= @t194 1)) % 45.82/46.04 (define @t196 () (+ 1 @t155 @t192)) % 45.82/46.04 (define @t197 () (+ @t194 1)) % 45.82/46.04 (define @t198 () (+ @t192 @t155 1)) % 45.82/46.04 (define @t199 () (+ 1 @t192)) % 45.82/46.04 (define @t200 () (+ @t199 @t155)) % 45.82/46.04 (define @t201 () (>= @t200 1)) % 45.82/46.04 (define @t202 () (not @t201)) % 45.82/46.04 (define @t203 () (+ @t161 @t192)) % 45.82/46.04 (define @t204 () (+ @t58 @t193)) % 45.82/46.04 (define @t205 () (+ @t204 1)) % 45.82/46.04 (define @t206 () (+ @t192 @t161)) % 45.82/46.04 (define @t207 () (>= @t206 1)) % 45.82/46.04 (define @t208 () (or @t207 @t160 @t202 @t191)) % 45.82/46.04 (define @t209 () (forall @t64 @t208)) % 45.82/46.04 (define @t210 () (tptp.sorted_sub4 @t189 @t192 @t199)) % 45.82/46.04 (define @t211 () (= @t210 @t209)) % 45.82/46.04 (define @t212 () (forall @t68 (= @t66 (forall @t64 @t164)))) % 45.82/46.04 (define @t213 () (forall @t64 (or (not (>= @t204 0)) @t160 @t195 @t191))) % 45.82/46.04 (define @t214 () (= @t210 @t213)) % 45.82/46.04 (define @t215 () (or @t185 @t183 @t181)) % 45.82/46.04 (define @t216 () (and @t184 @t182 @t180)) % 45.82/46.04 (define @t217 () (+ @t179 1)) % 45.82/46.04 (define @t218 () (>= @t144 @t147)) % 45.82/46.04 (define @t219 () (or (not (>= @t188 0)) (not (>= @t192 0)) (not (>= (+ @t188 @t193) 1)) @t210)) % 45.82/46.04 (define @t220 () (@list true)) % 45.82/46.04 (define @t221 () (not @t213)) % 45.82/46.04 (define @t222 () (@list true false)) % 45.82/46.04 (define @t223 () (@quantifiers_skolemize @t213 1)) % 45.82/46.04 (define @t224 () (tptp.get2 tptp.elt7 @t190 @t223)) % 45.82/46.04 (define @t225 () (tptp.tb2t11 @t224)) % 45.82/46.04 (define @t226 () (@quantifiers_skolemize @t213 0)) % 45.82/46.04 (define @t227 () (tptp.tb2t11 (tptp.get2 tptp.elt7 @t190 @t226))) % 45.82/46.04 (define @t228 () (tptp.le4 @t227 @t225)) % 45.82/46.04 (define @t229 () (* -1 @t223)) % 45.82/46.04 (define @t230 () (+ @t192 @t229)) % 45.82/46.04 (define @t231 () (>= @t230 0)) % 45.82/46.04 (define @t232 () (not @t231)) % 45.82/46.04 (define @t233 () (+ @t226 @t229)) % 45.82/46.04 (define @t234 () (>= @t233 1)) % 45.82/46.04 (define @t235 () (* -1 @t226)) % 45.82/46.04 (define @t236 () (+ @t192 @t235)) % 45.82/46.04 (define @t237 () (>= @t236 1)) % 45.82/46.04 (define @t238 () (or @t237 @t234 @t232 @t228)) % 45.82/46.04 (define @t239 () (not @t238)) % 45.82/46.04 (define @t240 () (+ @t193 @t223)) % 45.82/46.04 (define @t241 () (+ @t230 1)) % 45.82/46.04 (define @t242 () (+ @t223 @t193)) % 45.82/46.04 (define @t243 () (>= @t242 1)) % 45.82/46.04 (define @t244 () (+ @t193 @t226)) % 45.82/46.04 (define @t245 () (+ @t236 1)) % 45.82/46.04 (define @t246 () (+ @t226 @t193)) % 45.82/46.04 (define @t247 () (>= @t246 0)) % 45.82/46.04 (define @t248 () (not @t247)) % 45.82/46.04 (define @t249 () (or @t248 @t234 @t243 @t228)) % 45.82/46.04 (define @t250 () (not @t249)) % 45.82/46.04 (define @t251 () (not @t237)) % 45.82/46.04 (define @t252 () (@list @t238)) % 45.82/46.04 (define @t253 () (not @t234)) % 45.82/46.04 (define @t254 () (not @t228)) % 45.82/46.04 (define @t255 () (tptp.le4 @t225 @t227)) % 45.82/46.04 (define @t256 () (or @t228 @t255)) % 45.82/46.04 (define @t257 () (not @t255)) % 45.82/46.04 (define @t258 () (= @t226 @t223)) % 45.82/46.04 (define @t259 () (not @t258)) % 45.82/46.04 (define @t260 () (and @t255 @t258 @t254)) % 45.82/46.04 (define @t261 () (* -1 0)) % 45.82/46.04 (define @t262 () (+ @t261 -1 1)) % 45.82/46.04 (define @t263 () (* 0 @t192)) % 45.82/46.04 (define @t264 () (* 0 @t223)) % 45.82/46.04 (define @t265 () (+ @t235 @t264 @t226 @t263)) % 45.82/46.04 (define @t266 () (+ (* -1 @t230) @t233 @t236)) % 45.82/46.04 (define @t267 () (>= @t266 @t262)) % 45.82/46.04 (define @t268 () (= @t233 0)) % 45.82/46.04 (define @t269 () (and @t251 @t253 @t259 @t231)) % 45.82/46.04 (assume @p1 (forall (@list @t1) (tptp.sort1 @t1 (tptp.witness1 @t1)))) % 45.82/46.04 (assume @p2 (forall (@list @t1 @t4 @t3 @t2) (tptp.sort1 @t1 (tptp.match_bool1 @t1 @t4 @t3 @t2)))) % 45.82/46.04 (assume @p3 (forall @t7 (=> (tptp.sort1 @t1 @t5) (= (tptp.match_bool1 @t1 tptp.true1 @t5 @t6) @t5)))) % 45.82/46.04 (assume @p4 (forall @t7 (=> (tptp.sort1 @t1 @t6) (= (tptp.match_bool1 @t1 tptp.false1 @t5 @t6) @t6)))) % 45.82/46.04 (assume @p5 (not (= tptp.true1 tptp.false1))) % 45.82/46.04 (assume @p6 (forall (@list @t8) (or (= @t8 tptp.true1) (= @t8 tptp.false1)))) % 45.82/46.04 (assume @p7 (forall (@list @t9) (= @t9 tptp.tuple03))) % 45.82/46.04 (assume @p8 (forall @t15 (=> @t14 (=> @t13 (<= (* @t12 @t10) (* @t11 @t10)))))) % 45.82/46.04 (assume @p9 (forall (@list @t1 @t17 @t16 @t3) (tptp.sort1 @t17 (tptp.get @t17 @t1 @t16 @t3)))) % 45.82/46.04 (assume @p10 (forall (@list @t1 @t17 @t16 @t3 @t2) (tptp.sort1 @t18 (tptp.set @t17 @t1 @t16 @t3 @t2)))) % 45.82/46.04 (assume @p11 (forall (@list @t1 @t17 @t22 @t21 @t20 @t19) (=> @t25 (=> @t24 (= @t23 @t19))))) % 45.82/46.04 (assume @p12 (forall (@list @t1 @t17 @t22 @t21 @t20) (=> (tptp.sort1 @t1 @t21) (=> (tptp.sort1 @t1 @t20) (forall (@list @t19) (=> (not @t24) (= @t23 (tptp.get @t17 @t1 @t22 @t20)))))))) % 45.82/46.04 (assume @p13 (forall (@list @t1 @t17 @t16) (tptp.sort1 @t18 (tptp.const @t17 @t1 @t16)))) % 45.82/46.04 (assume @p14 (forall (@list @t1 @t17 @t19 @t21) (=> @t25 (= (tptp.get @t17 @t1 (tptp.const @t17 @t1 @t19) @t21) @t19)))) % 45.82/46.04 (assume @p15 (forall @t27 (tptp.sort1 @t26 (tptp.mk_array1 @t1 @t12 @t3)))) % 45.82/46.04 (assume @p16 (forall @t31 (= (tptp.length1 @t1 @t30) @t28))) % 45.82/46.04 (assume @p17 (forall @t33 (tptp.sort1 @t32 (tptp.elts @t1 @t16)))) % 45.82/46.04 (assume @p18 (forall @t31 (=> (tptp.sort1 @t32 @t29) (= (tptp.elts @t1 @t30) @t29)))) % 45.82/46.04 (assume @p19 (forall @t35 (= @t34 (tptp.mk_array1 @t1 (tptp.length1 @t1 @t34) (tptp.elts @t1 @t34))))) % 45.82/46.04 (assume @p20 (forall (@list @t1 @t16 @t36) (tptp.sort1 @t1 (tptp.get2 @t1 @t16 @t36)))) % 45.82/46.04 (assume @p21 (forall @t37 (tptp.sort1 tptp.int (tptp.t2tb @t12)))) % 45.82/46.04 (assume @p22 (forall @t40 (= (tptp.tb2t @t39) @t38))) % 45.82/46.04 (assume @p23 (forall @t42 (= (tptp.t2tb (tptp.tb2t @t41)) @t41))) % 45.82/46.04 (assume @p24 (forall (@list @t1 @t21 @t38) (= (tptp.get2 @t1 @t21 @t38) (tptp.get @t1 tptp.int @t43 @t39)))) % 45.82/46.04 (assume @p25 (forall (@list @t1 @t16 @t36 @t2) (tptp.sort1 @t26 (tptp.set2 @t1 @t16 @t36 @t2)))) % 45.82/46.04 (assume @p26 (forall (@list @t1 @t21 @t38 @t44) (= (tptp.set2 @t1 @t21 @t38 @t44) (tptp.mk_array1 @t1 @t45 (tptp.set @t1 tptp.int @t43 @t39 @t44))))) % 45.82/46.04 (assume @p27 (forall @t27 (tptp.sort1 @t26 (tptp.make1 @t1 @t12 @t3)))) % 45.82/46.04 (assume @p28 (forall (@list @t1 @t46 @t44) (= (tptp.make1 @t1 @t46 @t44) (tptp.mk_array1 @t1 @t46 (tptp.const @t1 tptp.int @t44))))) % 45.82/46.04 (assume @p29 (forall @t48 (tptp.le4 @t47 @t47))) % 45.82/46.04 (assume @p30 (forall (@list @t47 @t50 @t49) (=> @t51 (=> (tptp.le4 @t50 @t49) (tptp.le4 @t47 @t49))))) % 45.82/46.04 (assume @p31 (forall (@list @t47 @t50) (or @t51 (tptp.le4 @t50 @t47)))) % 45.82/46.04 (assume @p32 (forall (@list @t52) (tptp.sort1 (tptp.array tptp.elt7) (tptp.t2tb10 @t52)))) % 45.82/46.04 (assume @p33 (forall (@list @t53) (= (tptp.tb2t10 (tptp.t2tb10 @t53)) @t53))) % 45.82/46.04 (assume @p34 (forall @t42 (= (tptp.t2tb10 (tptp.tb2t10 @t41)) @t41))) % 45.82/46.04 (assume @p35 (forall @t48 (tptp.sort1 tptp.elt7 (tptp.t2tb11 @t47)))) % 45.82/46.04 (assume @p36 (forall (@list @t54) (= (tptp.tb2t11 (tptp.t2tb11 @t54)) @t54))) % 45.82/46.04 (assume @p37 (forall @t42 (=> (tptp.sort1 tptp.elt7 @t41) (= (tptp.t2tb11 (tptp.tb2t11 @t41)) @t41)))) % 45.82/46.04 (assume @p38 @t69) % 45.82/46.04 (assume @p39 (forall (@list @t56) (= (tptp.sorted4 @t56) (forall @t64 (=> (and (<= 0 @t58) @t60 (< @t55 (tptp.length1 tptp.elt7 @t57))) @t59))))) % 45.82/46.04 (assume @p40 (forall @t33 (tptp.sort1 @t70 (tptp.mk_ref @t1 @t16)))) % 45.82/46.04 (assume @p41 (forall @t33 (tptp.sort1 @t1 (tptp.contents @t1 @t16)))) % 45.82/46.04 (assume @p42 (forall @t35 (=> (tptp.sort1 @t1 @t34) (= (tptp.contents @t1 (tptp.mk_ref @t1 @t34)) @t34)))) % 45.82/46.04 (assume @p43 (forall @t35 (=> (tptp.sort1 @t70 @t34) (= @t34 (tptp.mk_ref @t1 (tptp.contents @t1 @t34)))))) % 45.82/46.04 (assume @p44 (forall @t73 (=> (<= @t28 @t61) @t72))) % 45.82/46.04 (assume @p45 (forall @t73 (=> @t78 (=> @t77 (=> (not @t76) (= @t71 @t75)))))) % 45.82/46.04 (assume @p46 (forall @t73 (=> @t77 (=> @t76 (= @t71 (+ 1 @t75)))))) % 45.82/46.04 (assume @p47 (forall @t73 (=> (<= @t61 @t28) (and (<= 0 @t71) (<= @t71 (- @t28 @t61)))))) % 45.82/46.04 (assume @p48 (forall (@list @t1 @t44 @t22 @t61 @t79 @t28) (=> (and (<= @t61 @t79) (<= @t79 @t28)) (= @t71 (+ (tptp.occ1 @t1 @t44 @t22 @t61 @t79) (tptp.occ1 @t1 @t44 @t22 @t79 @t28)))))) % 45.82/46.04 (assume @p49 (forall @t73 (=> @t78 (=> (forall @t40 (=> @t84 (not @t81))) @t72)))) % 45.82/46.04 (assume @p50 (forall @t73 (=> @t78 (=> (< 0 @t71) (exists @t40 (and @t83 @t82 @t81)))))) % 45.82/46.04 (assume @p51 (forall (@list @t1 @t22 @t61 @t28 @t38) (=> @t84 (< 0 (tptp.occ1 @t1 @t80 @t22 @t61 @t28))))) % 45.82/46.04 (assume @p52 (forall (@list @t1 @t44 @t86 @t85 @t61 @t28) (=> (forall @t40 (=> @t84 (= (tptp.get @t1 tptp.int @t86 @t39) (tptp.get @t1 tptp.int @t85 @t39)))) @t87))) % 45.82/46.04 (assume @p53 (forall (@list @t1 @t86 @t85 @t61 @t28) (and (=> @t88 (forall @t89 @t87)) (=> (forall @t89 (=> @t78 @t87)) @t88)))) % 45.82/46.04 (assume @p54 (forall (@list @t1 @t21 @t20 @t90 @t61 @t28) (=> @t91 (=> (tptp.permut2 @t1 @t20 @t90 @t61 @t28) (tptp.permut2 @t1 @t21 @t90 @t61 @t28))))) % 45.82/46.04 (assume @p55 (forall (@list @t1 @t21 @t20 @t61 @t28 @t38) (=> @t91 (=> @t84 (exists (@list @t93) (and @t98 @t97 @t96)))))) % 45.82/46.04 (assume @p56 (forall @t100 (= (tptp.map_eq_sub1 @t1 @t21 @t20 @t61 @t28) (forall @t40 (=> @t84 (= @t99 @t92)))))) % 45.82/46.04 (assume @p57 (forall @t100 (= (tptp.array_eq_sub1 @t1 @t21 @t20 @t61 @t28) (and @t106 @t105 @t104 @t103 @t102 (tptp.map_eq_sub1 @t1 @t43 @t101 @t61 @t28))))) % 45.82/46.04 (assume @p58 (forall @t107 (= (tptp.array_eq @t1 @t21 @t20) (and @t106 (tptp.map_eq_sub1 @t1 @t43 @t101 0 @t45))))) % 45.82/46.04 (assume @p59 (forall (@list @t1 @t21 @t20 @t61 @t28 @t38 @t93) (= (tptp.exchange2 @t1 @t21 @t20 @t61 @t28 @t38 @t93) (and @t83 @t82 @t98 @t97 (= @t99 (tptp.get @t1 tptp.int @t20 @t94)) @t96 (forall (@list @t108) (=> (and (<= @t61 @t108) (< @t108 @t28)) (=> (not (= @t108 @t38)) (=> (not (= @t108 @t93)) (= (tptp.get @t1 tptp.int @t21 @t109) (tptp.get @t1 tptp.int @t20 @t109)))))))))) % 45.82/46.04 (assume @p60 (forall (@list @t1 @t21 @t61 @t28 @t38 @t93) (=> @t84 (=> @t110 (tptp.exchange2 @t1 @t21 (tptp.set @t1 tptp.int (tptp.set @t1 tptp.int @t21 @t39 @t95) @t94 @t99) @t61 @t28 @t38 @t93))))) % 45.82/46.04 (assume @p61 (forall @t112 (= @t111 (and @t106 (tptp.exchange2 @t1 @t43 @t101 0 @t45 @t38 @t93))))) % 45.82/46.04 (assume @p62 (forall @t100 (= @t113 (and @t106 @t105 @t104 @t103 @t102 (tptp.permut2 @t1 @t43 @t101 @t61 @t28))))) % 45.82/46.04 (assume @p63 (forall @t100 (= @t114 (and (tptp.map_eq_sub1 @t1 @t43 @t101 0 @t61) @t113 (tptp.map_eq_sub1 @t1 @t43 @t101 @t28 @t45))))) % 45.82/46.04 (assume @p64 (forall @t107 (= @t115 (and @t106 (tptp.permut2 @t1 @t43 @t101 0 @t45))))) % 45.82/46.04 (assume @p65 (forall (@list @t1 @t21 @t20 @t38 @t93 @t61 @t28) (=> @t111 (=> @t84 (=> @t110 (=> @t105 (=> @t102 @t114))))))) % 45.82/46.04 (assume @p66 (forall (@list @t1 @t21 @t20 @t119 @t118 @t117 @t116) (=> (tptp.permut_sub1 @t1 @t21 @t20 @t119 @t118) (=> (and (<= 0 @t117) (<= @t117 @t119)) (=> (and (<= @t118 @t116) (<= @t116 @t45)) (tptp.permut_sub1 @t1 @t21 @t20 @t117 @t116)))))) % 45.82/46.04 (assume @p67 (forall @t112 (=> @t111 @t115))) % 45.82/46.04 (assume @p68 (forall @t37 (and (=> @t121 (= @t120 @t12)) (=> (not @t121) (= @t120 (- @t12)))))) % 45.82/46.04 (assume @p69 (forall @t122 (= (<= @t120 @t11) (and (<= (- @t11) @t12) @t14)))) % 45.82/46.04 (assume @p70 (forall @t37 (<= 0 @t120))) % 45.82/46.04 (assume @p71 (forall @t122 (=> @t125 (= @t12 (+ (* @t11 @t124) @t123))))) % 45.82/46.04 (assume @p72 (forall @t122 (=> @t128 (and @t126 (<= @t124 @t12))))) % 45.82/46.04 (assume @p73 (forall @t122 (=> @t125 (and (< (- @t129) @t123) (< @t123 @t129))))) % 45.82/46.04 (assume @p74 (forall @t122 (=> @t128 @t126))) % 45.82/46.04 (assume @p75 (forall @t122 (=> (and @t130 @t127) (<= @t124 0)))) % 45.82/46.04 (assume @p76 (forall @t122 (=> (and @t121 @t125) (<= 0 @t123)))) % 45.82/46.04 (assume @p77 (forall @t122 (=> (and @t130 @t125) (<= @t123 0)))) % 45.82/46.04 (assume @p78 (forall @t122 (=> @t125 (<= (tptp.abs (* @t124 @t11)) @t120)))) % 45.82/46.04 (assume @p79 (forall @t37 (= (tptp.div @t12 1) @t12))) % 45.82/46.04 (assume @p80 (forall @t37 (= (tptp.mod @t12 1) 0))) % 45.82/46.04 (assume @p81 (forall @t122 (=> @t131 (= @t124 0)))) % 45.82/46.04 (assume @p82 (forall @t122 (=> @t131 (= @t123 @t12)))) % 45.82/46.04 (assume @p83 (forall @t15 (=> @t133 (= (tptp.div @t132 @t12) (+ @t11 (tptp.div @t10 @t12)))))) % 45.82/46.04 (assume @p84 (forall @t15 (=> @t133 (= (tptp.mod @t132 @t12) (tptp.mod @t10 @t12))))) % 45.82/46.04 (assume @p85 (forall @t122 (and (<= @t12 @t134) (<= @t11 @t134)))) % 45.82/46.04 (assume @p86 (forall @t122 (or @t136 @t135))) % 45.82/46.04 (assume @p87 (forall @t122 (and (<= @t137 @t12) (<= @t137 @t11)))) % 45.82/46.04 (assume @p88 (forall @t122 (or @t139 @t138))) % 45.82/46.04 (assume @p89 (forall @t122 (=> @t140 @t136))) % 45.82/46.04 (assume @p90 (forall @t122 (=> @t14 @t135))) % 45.82/46.04 (assume @p91 (forall @t122 (=> @t14 @t139))) % 45.82/46.04 (assume @p92 (forall @t122 (=> @t140 @t138))) % 45.82/46.04 (assume @p93 (forall @t122 (=> @t140 (= @t134 (tptp.max @t11 @t12))))) % 45.82/46.04 (assume @p94 (forall @t122 (=> @t140 (= @t137 (tptp.min @t11 @t12))))) % 45.82/46.04 (assume @p95 (forall (@list @t141) (tptp.sort1 @t142 (tptp.t2tb12 @t141)))) % 45.82/46.04 (assume @p96 (forall (@list @t143) (= (tptp.tb2t12 (tptp.t2tb12 @t143)) @t143))) % 45.82/46.04 (assume @p97 (forall @t42 (=> (tptp.sort1 @t142 @t41) (= (tptp.t2tb12 (tptp.tb2t12 @t41)) @t41)))) % 45.82/46.04 (assume @p98 @t154) % 45.82/46.04 (assume @p99 true) % 45.82/46.04 (step @p100 :rule aci_norm :args ((= (or (or @t163 @t160 @t158) @t59) @t164))) % 45.82/46.04 (step @p101 :rule refl :args (@t59)) % 45.82/46.04 (step @p102 :rule refl :args (@t158)) % 45.82/46.04 (step @p103 :rule bool-double-not-elim :args (@t160)) % 45.82/46.04 (step @p104 :rule bool-double-not-elim :args (@t163)) % 45.82/46.04 (step @p105 :rule nary_cong :premises (@p104 @p103 @p102) :args (@t169)) % 45.82/46.04 (step @p106 :rule aci_norm :args ((= (or @t168 (or @t166 @t158)) @t169))) % 45.82/46.04 (step @p107 :rule trans :premises (@p106 @p105)) % 45.82/46.04 (step @p108 :rule bool-and-de-morgan :args (@t165 @t157 true)) % 45.82/46.04 (step @p109 :rule refl :args (@t168)) % 45.82/46.04 (step @p110 :rule nary_cong :premises (@p109 @p108) :args ((or @t168 (not (and @t165 @t157))))) % 45.82/46.04 (step @p111 :rule bool-and-de-morgan :args (@t167 @t165 (and @t157))) % 45.82/46.04 (step @p112 :rule trans :premises (@p111 @p110)) % 45.82/46.04 (step @p113 :rule trans :premises (@p112 @p107)) % 45.82/46.04 (step @p114 :rule nary_cong :premises (@p113 @p101) :args ((or (not @t170) @t59))) % 45.82/46.04 (step @p115 :rule trans :premises (@p114 @p100)) % 45.82/46.04 (step @p116 :rule bool-impl-elim :args (@t170 @t59)) % 45.82/46.04 (step @p117 :rule trans :premises (@p116 @p115)) % 45.82/46.04 (step @p118 :rule cong :premises (@p117) :args ((forall @t64 (=> @t170 @t59)))) % 45.82/46.04 (step @p119 :rule refl :args (@t59)) % 45.82/46.04 (step @p120 :rule bool-double-not-elim :args (@t157)) % 45.82/46.04 (step @p121 :rule arith_poly_norm :args ((= (* -1 (- 1 @t171)) (* -1 (- @t55 @t28))))) % 45.82/46.04 (step @p122 :rule arith_poly_norm_rel :premises (@p121) :args ((= (>= 1 @t171) @t172))) % 45.82/46.04 (step @p123 :rule arith-geq-tighten :args (@t156 1)) % 45.82/46.04 (step @p124 :rule trans :premises (@p123 @p122)) % 45.82/46.04 (step @p125 :rule symm :premises (@p124)) % 45.82/46.04 (step @p126 :rule cong :premises (@p125) :args ((not @t172))) % 45.82/46.04 (step @p127 :rule trans :premises (@p126 @p120)) % 45.82/46.04 (step @p128 :rule arith-elim-lt :args (@t55 @t28)) % 45.82/46.04 (step @p129 :rule trans :premises (@p128 @p127)) % 45.82/46.04 (step @p130 :rule arith_poly_norm :args ((= (* -1 (- @t58 @t173)) (* -1 (- @t159 1))))) % 45.82/46.04 (step @p131 :rule arith_poly_norm_rel :premises (@p130) :args ((= @t174 @t160))) % 45.82/46.04 (step @p132 :rule cong :premises (@p131) :args ((not @t174))) % 45.82/46.04 (step @p133 :rule arith-leq-norm :args (@t58 @t55)) % 45.82/46.04 (step @p134 :rule trans :premises (@p133 @p132)) % 45.82/46.04 (step @p135 :rule arith_poly_norm :args ((= (* -1 (- @t61 @t175)) (* -1 (- @t162 1))))) % 45.82/46.04 (step @p136 :rule arith_poly_norm_rel :premises (@p135) :args ((= @t176 @t163))) % 45.82/46.04 (step @p137 :rule cong :premises (@p136) :args ((not @t176))) % 45.82/46.04 (step @p138 :rule arith-leq-norm :args (@t61 @t58)) % 45.82/46.04 (step @p139 :rule trans :premises (@p138 @p137)) % 45.82/46.04 (step @p140 :rule nary_cong :premises (@p139 @p134 @p129) :args (@t62)) % 45.82/46.04 (step @p141 :rule cong :premises (@p140 @p119) :args (@t63)) % 45.82/46.04 (step @p142 :rule cong :premises (@p141) :args (@t65)) % 45.82/46.04 (step @p143 :rule trans :premises (@p142 @p118)) % 45.82/46.04 (step @p144 :rule refl :args (@t66)) % 45.82/46.04 (step @p145 :rule cong :premises (@p144 @p143) :args (@t67)) % 45.82/46.04 (step @p146 :rule cong :premises (@p145) :args (@t69)) % 45.82/46.04 (step @p147 :rule eq_resolve :premises (@p38 @p146)) % 45.82/46.04 (step @p148 :rule refl :args (@t191)) % 45.82/46.04 (step @p149 :rule bool-double-not-elim :args (@t195)) % 45.82/46.04 (step @p150 :rule arith_poly_norm :args ((= (* -1 (- 1 @t197)) (* -1 (- @t196 1))))) % 45.82/46.04 (step @p151 :rule arith_poly_norm_rel :premises (@p150) :args ((= (>= 1 @t197) (>= @t196 1)))) % 45.82/46.04 (step @p152 :rule arith-geq-tighten :args (@t194 1)) % 45.82/46.04 (step @p153 :rule trans :premises (@p152 @p151)) % 45.82/46.04 (step @p154 :rule symm :premises (@p153)) % 45.82/46.04 (step @p155 :rule refl :args (1)) % 45.82/46.04 (step @p156 :rule arith_poly_norm :args ((= @t198 @t196))) % 45.82/46.04 (step @p157 :rule arith_poly_norm :args ((= @t200 @t198))) % 45.82/46.04 (step @p158 :rule trans :premises (@p157 @p156)) % 45.82/46.04 (step @p159 :rule cong :premises (@p158 @p155) :args (@t201)) % 45.82/46.04 (step @p160 :rule trans :premises (@p159 @p154)) % 45.82/46.04 (step @p161 :rule cong :premises (@p160) :args (@t202)) % 45.82/46.04 (step @p162 :rule trans :premises (@p161 @p149)) % 45.82/46.04 (step @p163 :rule refl :args (@t160)) % 45.82/46.04 (step @p164 :rule arith_poly_norm :args ((= (* -1 (- 0 @t205)) (* -1 (- @t203 1))))) % 45.82/46.04 (step @p165 :rule arith_poly_norm_rel :premises (@p164) :args ((= (>= 0 @t205) (>= @t203 1)))) % 45.82/46.04 (step @p166 :rule arith-geq-tighten :args (@t204 0)) % 45.82/46.04 (step @p167 :rule trans :premises (@p166 @p165)) % 45.82/46.04 (step @p168 :rule symm :premises (@p167)) % 45.82/46.04 (step @p169 :rule arith_poly_norm :args ((= @t206 @t203))) % 45.82/46.04 (step @p170 :rule cong :premises (@p169 @p155) :args (@t207)) % 45.82/46.04 (step @p171 :rule trans :premises (@p170 @p168)) % 45.82/46.04 (step @p172 :rule nary_cong :premises (@p171 @p163 @p162 @p148) :args (@t208)) % 45.82/46.04 (step @p173 :rule cong :premises (@p172) :args (@t209)) % 45.82/46.04 (step @p174 :rule refl :args (@t210)) % 45.82/46.04 (step @p175 :rule cong :premises (@p174 @p173) :args (@t211)) % 45.82/46.04 (step @p176 :rule refl :args (@t212)) % 45.82/46.04 (step @p177 :rule cong :premises (@p176 @p175) :args ((=> @t212 @t211))) % 45.82/46.04 (assume-push @p400 @t212) % 45.82/46.04 (step @p179 :rule instantiate :premises (@p147) :args ((@list @t189 @t192 @t199))) % 45.82/46.04 (step-pop @p401 :rule scope :premises (@p179)) % 45.82/46.04 (step @p180 :rule process_scope :premises (@p401) :args (@t211)) % 45.82/46.04 (step @p182 :rule eq_resolve :premises (@p180 @p177)) % 45.82/46.04 (step @p183 :rule implies_elim :premises (@p182)) % 45.82/46.04 (step @p184 :rule chain_m_resolution :premises (@p183 @p147) :args (@t214 (@list false) (@list @t212))) % 45.82/46.04 (step @p185 :rule aci_norm :args ((= (or @t215 @t178) @t186))) % 45.82/46.04 (step @p186 :rule refl :args (@t178)) % 45.82/46.04 (step @p187 :rule aci_norm :args ((= (or @t185 (or @t183 @t181)) @t215))) % 45.82/46.04 (step @p188 :rule bool-and-de-morgan :args (@t182 @t180 true)) % 45.82/46.04 (step @p189 :rule refl :args (@t185)) % 45.82/46.04 (step @p190 :rule nary_cong :premises (@p189 @p188) :args ((or @t185 (not (and @t182 @t180))))) % 45.82/46.04 (step @p191 :rule bool-and-de-morgan :args (@t184 @t182 (and @t180))) % 45.82/46.04 (step @p192 :rule trans :premises (@p191 @p190)) % 45.82/46.04 (step @p193 :rule trans :premises (@p192 @p187)) % 45.82/46.04 (step @p194 :rule nary_cong :premises (@p193 @p186) :args ((or (not @t216) @t178))) % 45.82/46.04 (step @p195 :rule trans :premises (@p194 @p185)) % 45.82/46.04 (step @p196 :rule bool-impl-elim :args (@t216 @t178)) % 45.82/46.04 (step @p197 :rule trans :premises (@p196 @p195)) % 45.82/46.04 (step @p198 :rule cong :premises (@p197) :args ((forall @t152 (=> @t216 @t178)))) % 45.82/46.04 (step @p199 :rule arith_poly_norm :args ((= @t145 @t177))) % 45.82/46.04 (step @p200 :rule refl :args (@t144)) % 45.82/46.04 (step @p201 :rule refl :args (@t148)) % 45.82/46.04 (step @p202 :rule cong :premises (@p201 @p200 @p199) :args (@t149)) % 45.82/46.04 (step @p203 :rule bool-double-not-elim :args (@t180)) % 45.82/46.04 (step @p204 :rule arith_poly_norm :args ((= (* -1 (- 1 @t217)) (* -1 (- @t144 @t147))))) % 45.82/46.04 (step @p205 :rule arith_poly_norm_rel :premises (@p204) :args ((= (>= 1 @t217) @t218))) % 45.82/46.04 (step @p206 :rule arith-geq-tighten :args (@t179 1)) % 45.82/46.04 (step @p207 :rule trans :premises (@p206 @p205)) % 45.82/46.04 (step @p208 :rule symm :premises (@p207)) % 45.82/46.04 (step @p209 :rule cong :premises (@p208) :args ((not @t218))) % 45.82/46.04 (step @p210 :rule trans :premises (@p209 @p203)) % 45.82/46.04 (step @p211 :rule arith-elim-lt :args (@t144 @t147)) % 45.82/46.04 (step @p212 :rule trans :premises (@p211 @p210)) % 45.82/46.04 (step @p213 :rule arith-elim-leq :args (0 @t144)) % 45.82/46.04 (step @p214 :rule arith-elim-leq :args (0 @t147)) % 45.82/46.04 (step @p215 :rule nary_cong :premises (@p214 @p213 @p212) :args (@t150)) % 45.82/46.04 (step @p216 :rule cong :premises (@p215 @p202) :args (@t151)) % 45.82/46.04 (step @p217 :rule cong :premises (@p216) :args (@t153)) % 45.82/46.04 (step @p218 :rule trans :premises (@p217 @p198)) % 45.82/46.04 (step @p219 :rule cong :premises (@p218) :args (@t154)) % 45.82/46.04 (step @p220 :rule eq_resolve :premises (@p98 @p219)) % 45.82/46.04 (step @p221 :rule skolemize :premises (@p220)) % 45.82/46.04 (step @p222 :rule cnf_or_neg :args (@t219 3)) % 45.82/46.04 (step @p223 :rule chain_m_resolution :premises (@p222 @p221) :args ((not @t210) @t220 (@list @t219))) % 45.82/46.04 (step @p224 :rule cnf_equiv_pos2 :args (@t214)) % 45.82/46.04 (step @p225 :rule reordering :premises (@p224) :args ((or @t210 @t221 (not @t214)))) % 45.82/46.04 (step @p226 :rule chain_m_resolution :premises (@p225 @p223 @p184) :args (@t221 @t222 (@list @t210 @t214))) % 45.82/46.04 (step @p227 :rule refl :args (@t239)) % 45.82/46.04 (step @p228 :rule bool-double-not-elim :args (@t213)) % 45.82/46.04 (step @p229 :rule nary_cong :premises (@p228 @p227) :args ((or (not @t221) @t239))) % 45.82/46.04 (step @p230 :rule refl :args (@t228)) % 45.82/46.04 (step @p231 :rule arith_poly_norm :args ((= (* -1 (- 0 @t241)) (* -1 (- @t240 1))))) % 45.82/46.04 (step @p232 :rule arith_poly_norm_rel :premises (@p231) :args ((= (>= 0 @t241) (>= @t240 1)))) % 45.82/46.04 (step @p233 :rule arith-geq-tighten :args (@t230 0)) % 45.82/46.04 (step @p234 :rule trans :premises (@p233 @p232)) % 45.82/46.04 (step @p235 :rule symm :premises (@p234)) % 45.82/46.04 (step @p236 :rule arith_poly_norm :args ((= @t242 @t240))) % 45.82/46.04 (step @p237 :rule cong :premises (@p236 @p155) :args (@t243)) % 45.82/46.04 (step @p238 :rule trans :premises (@p237 @p235)) % 45.82/46.04 (step @p239 :rule refl :args (@t234)) % 45.82/46.04 (step @p240 :rule bool-double-not-elim :args (@t237)) % 45.82/46.04 (step @p241 :rule arith_poly_norm :args ((= (* -1 (- 1 @t245)) (* -1 (- @t244 0))))) % 45.82/46.04 (step @p242 :rule arith_poly_norm_rel :premises (@p241) :args ((= (>= 1 @t245) (>= @t244 0)))) % 45.82/46.04 (step @p243 :rule arith-geq-tighten :args (@t236 1)) % 45.82/46.04 (step @p244 :rule trans :premises (@p243 @p242)) % 45.82/46.04 (step @p245 :rule symm :premises (@p244)) % 45.82/46.04 (step @p246 :rule refl :args (0)) % 45.82/46.04 (step @p247 :rule arith_poly_norm :args ((= @t246 @t244))) % 45.82/46.04 (step @p248 :rule cong :premises (@p247 @p246) :args (@t247)) % 45.82/46.04 (step @p249 :rule trans :premises (@p248 @p245)) % 45.82/46.04 (step @p250 :rule cong :premises (@p249) :args (@t248)) % 45.82/46.04 (step @p251 :rule trans :premises (@p250 @p240)) % 45.82/46.04 (step @p252 :rule nary_cong :premises (@p251 @p239 @p238 @p230) :args (@t249)) % 45.82/46.04 (step @p253 :rule cong :premises (@p252) :args (@t250)) % 45.82/46.04 (step @p254 :rule refl :args (@t221)) % 45.82/46.04 (step @p255 :rule cong :premises (@p254 @p253) :args ((=> @t221 @t250))) % 45.82/46.04 (assume-push @p402 @t221) % 45.82/46.04 (step @p257 :rule skolemize :premises (@p226)) % 45.82/46.04 (step-pop @p403 :rule scope :premises (@p257)) % 45.82/46.04 (step @p258 :rule process_scope :premises (@p403) :args (@t250)) % 45.82/46.04 (step @p260 :rule eq_resolve :premises (@p258 @p255)) % 45.82/46.04 (step @p261 :rule implies_elim :premises (@p260)) % 45.82/46.04 (step @p262 :rule eq_resolve :premises (@p261 @p229)) % 45.82/46.04 (step @p263 :rule chain_m_resolution :premises (@p262 @p226) :args (@t239 @t220 (@list @t213))) % 45.82/46.04 (step @p264 :rule cnf_or_neg :args (@t238 0)) % 45.82/46.04 (step @p265 :rule reordering :premises (@p264) :args ((or @t251 @t238))) % 45.82/46.04 (step @p266 :rule chain_m_resolution :premises (@p265 @p263) :args (@t251 @t220 @t252)) % 45.82/46.04 (step @p267 :rule cnf_or_neg :args (@t238 1)) % 45.82/46.04 (step @p268 :rule chain_m_resolution :premises (@p267 @p263) :args (@t253 @t220 @t252)) % 45.82/46.04 (step @p269 :rule bool-double-not-elim :args (@t231)) % 45.82/46.04 (step @p270 :rule refl :args (@t238)) % 45.82/46.04 (step @p271 :rule nary_cong :premises (@p270 @p269) :args ((or @t238 (not @t232)))) % 45.82/46.04 (step @p272 :rule cnf_or_neg :args (@t238 2)) % 45.82/46.04 (step @p273 :rule eq_resolve :premises (@p272 @p271)) % 45.82/46.04 (step @p274 :rule reordering :premises (@p273) :args ((or @t231 @t238))) % 45.82/46.04 (step @p275 :rule chain_m_resolution :premises (@p274 @p263) :args (@t231 @t220 @t252)) % 45.82/46.04 (step @p276 :rule instantiate :premises (@p31) :args ((@list @t227 @t225))) % 45.82/46.04 (step @p277 :rule cnf_or_neg :args (@t238 3)) % 45.82/46.04 (step @p278 :rule chain_m_resolution :premises (@p277 @p263) :args (@t254 @t220 @t252)) % 45.82/46.04 (step @p279 :rule cnf_or_pos :args (@t256)) % 45.82/46.04 (step @p280 :rule reordering :premises (@p279) :args ((or @t228 @t255 (not @t256)))) % 45.82/46.04 (step @p281 :rule chain_m_resolution :premises (@p280 @p278 @p276) :args (@t255 @t222 (@list @t228 @t256))) % 45.82/46.04 (step @p282 :rule refl :args (@t257)) % 45.82/46.04 (step @p283 :rule bool-double-not-elim :args (@t228)) % 45.82/46.04 (step @p284 :rule refl :args (@t259)) % 45.82/46.04 (step @p285 :rule nary_cong :premises (@p284 @p283 @p282) :args ((or @t259 (not @t254) @t257))) % 45.82/46.04 (assume-push @p404 @t255) % 45.82/46.04 (assume-push @p405 @t258) % 45.82/46.04 (assume-push @p406 @t254) % 45.82/46.04 (step @p289 :rule evaluate :args ((= false true))) % 45.82/46.04 (step @p290 :rule true_intro :premises (@p281)) % 45.82/46.04 (step @p291 :rule symm :premises (@p405)) % 45.82/46.04 (step @p292 :rule refl :args (@t190)) % 45.82/46.04 (step @p293 :rule refl :args (tptp.elt7)) % 45.82/46.04 (step @p294 :rule cong :premises (@p293 @p292 @p291) :args (@t224)) % 45.82/46.04 (step @p295 :rule cong :premises (@p294) :args (@t225)) % 45.82/46.04 (step @p296 :rule symm :premises (@p295)) % 45.82/46.04 (step @p297 :rule cong :premises (@p296 @p295) :args (@t228)) % 45.82/46.04 (step @p298 :rule false_intro :premises (@p278)) % 45.82/46.04 (step @p299 :rule symm :premises (@p298)) % 45.82/46.04 (step @p300 :rule trans :premises (@p299 @p297 @p290)) % 45.82/46.04 (step @p301 false :rule eq_resolve :premises (@p300 @p289)) % 45.82/46.04 (step-pop @p407 :rule scope :premises (@p301)) % 45.82/46.04 (step-pop @p408 :rule scope :premises (@p407)) % 45.82/46.04 (step-pop @p409 :rule scope :premises (@p408)) % 45.82/46.04 (step @p302 :rule process_scope :premises (@p409) :args (false)) % 45.82/46.04 (assume-push @p410 @t258) % 45.82/46.04 (assume-push @p411 @t254) % 45.82/46.04 (assume-push @p412 @t255) % 45.82/46.04 (step @p309 :rule and_intro :premises (@p281 @p410 @p278)) % 45.82/46.04 (step-pop @p413 :rule scope :premises (@p309)) % 45.82/46.04 (step-pop @p414 :rule scope :premises (@p413)) % 45.82/46.04 (step-pop @p415 :rule scope :premises (@p414)) % 45.82/46.04 (step @p310 :rule process_scope :premises (@p415) :args (@t260)) % 45.82/46.04 (step @p314 :rule implies_elim :premises (@p310)) % 45.82/46.04 (step @p315 :rule resolution :premises (@p314 @p302) :args (true @t260)) % 45.82/46.04 (step @p316 :rule not_and :premises (@p315)) % 45.82/46.04 (step @p317 :rule eq_resolve :premises (@p316 @p285)) % 45.82/46.04 (step @p318 :rule reordering :premises (@p317) :args ((or @t228 @t259 @t257))) % 45.82/46.04 (step @p319 :rule chain_m_resolution :premises (@p318 @p278 @p281) :args (@t259 @t222 (@list @t228 @t255))) % 45.82/46.04 (step @p320 :rule bool-double-not-elim :args (@t258)) % 45.82/46.04 (step @p321 :rule bool-double-not-elim :args (@t234)) % 45.82/46.04 (step @p322 :rule refl :args (@t232)) % 45.82/46.04 (step @p323 :rule nary_cong :premises (@p240 @p322 @p321 @p320) :args ((or (not @t251) @t232 (not @t253) (not @t259)))) % 45.82/46.04 (assume-push @p416 @t251) % 45.82/46.04 (assume-push @p417 @t253) % 45.82/46.04 (assume-push @p418 @t259) % 45.82/46.04 (assume-push @p419 @t231) % 45.82/46.04 (step @p328 :rule arith-elim-lt :args (@t230 0)) % 45.82/46.04 (step @p329 :rule symm :premises (@p328)) % 45.82/46.04 (assume-push @p420 @t231) % 45.82/46.04 (step @p331 :rule evaluate :args ((not true))) % 45.82/46.04 (step @p332 :rule evaluate :args ((>= 0 0))) % 45.82/46.04 (step @p333 :rule evaluate :args ((+ 0 -1 1))) % 45.82/46.04 (step @p334 :rule refl :args (-1)) % 45.82/46.04 (step @p335 :rule evaluate :args (@t261)) % 45.82/46.04 (step @p336 :rule nary_cong :premises (@p335 @p334 @p155) :args (@t262)) % 45.82/46.04 (step @p337 :rule trans :premises (@p336 @p333)) % 45.82/46.04 (step @p338 :rule arith_poly_norm :args ((= (+ @t235 0 @t226 0) 0))) % 45.82/46.04 (step @p339 :rule arith_poly_norm :args ((= @t263 0))) % 45.82/46.04 (step @p340 :rule refl :args (@t226)) % 45.82/46.04 (step @p341 :rule arith_poly_norm :args ((= @t264 0))) % 45.82/46.04 (step @p342 :rule refl :args (@t235)) % 45.82/46.04 (step @p343 :rule nary_cong :premises (@p342 @p341 @p340 @p339) :args (@t265)) % 45.82/46.04 (step @p344 :rule trans :premises (@p343 @p338)) % 45.82/46.04 (step @p345 :rule arith_poly_norm :args ((= @t266 @t265))) % 45.82/46.04 (step @p346 :rule trans :premises (@p345 @p344)) % 45.82/46.04 (step @p347 :rule cong :premises (@p346 @p337) :args (@t267)) % 45.82/46.04 (step @p348 :rule trans :premises (@p347 @p332)) % 45.82/46.04 (step @p349 :rule cong :premises (@p348) :args ((not @t267))) % 45.82/46.05 (step @p350 :rule trans :premises (@p349 @p331)) % 45.82/46.05 (step @p351 :rule arith-elim-lt :args (@t266 @t262)) % 45.82/46.05 (step @p352 :rule trans :premises (@p351 @p350)) % 45.82/46.05 (step @p353 :rule arith-elim-lt :args (@t236 1)) % 45.82/46.05 (step @p354 :rule symm :premises (@p353)) % 45.82/46.05 (step @p355 :rule eq_resolve :premises (@p266 @p354)) % 45.82/46.05 (step @p356 :rule arith_poly_norm :args ((= (* 1 (- @t233 0)) (* 1 (- @t226 @t223))))) % 45.82/46.05 (step @p357 :rule arith_poly_norm_rel :premises (@p356) :args ((= @t268 @t258))) % 45.82/46.05 (step @p358 :rule cong :premises (@p357) :args ((not @t268))) % 45.82/46.05 (step @p359 :rule symm :premises (@p358)) % 45.82/46.05 (step @p360 :rule eq_resolve :premises (@p418 @p359)) % 45.82/46.05 (step @p361 :rule arith-elim-lt :args (@t233 1)) % 45.82/46.05 (step @p362 :rule symm :premises (@p361)) % 45.82/46.05 (step @p363 :rule eq_resolve :premises (@p268 @p362)) % 45.82/46.05 (step @p364 :rule int_tight_ub :premises (@p363)) % 45.82/46.05 (step @p365 :rule arith_trichotomy :premises (@p364 @p360)) % 45.82/46.05 (step @p366 :rule int_tight_ub :premises (@p365)) % 45.82/46.05 (step @p367 :rule arith_mult_neg :args (-1 @t231)) % 45.82/46.05 (step @p368 :rule evaluate :args ((< -1 0))) % 45.82/46.05 (step @p369 :rule true_elim :premises (@p368)) % 45.82/46.05 (step @p370 :rule and_intro :premises (@p369 @p275)) % 45.82/46.05 (step @p371 :rule modus_ponens :premises (@p370 @p367)) % 45.82/46.05 (step @p372 :rule arith_sum_ub :premises (@p371 @p366 @p355)) % 45.82/46.05 (step @p373 false :rule eq_resolve :premises (@p372 @p352)) % 45.82/46.05 (step-pop @p421 :rule scope :premises (@p373)) % 45.82/46.05 (step @p374 :rule process_scope :premises (@p421) :args (false)) % 45.82/46.05 (step @p376 :rule eq_resolve :premises (@p374 @p329)) % 45.82/46.05 (step @p377 :rule eq_resolve :premises (@p376 @p328)) % 45.82/46.05 (step @p378 false :rule contra :premises (@p275 @p377)) % 45.82/46.05 (step-pop @p422 :rule scope :premises (@p378)) % 45.82/46.05 (step-pop @p423 :rule scope :premises (@p422)) % 45.82/46.05 (step-pop @p424 :rule scope :premises (@p423)) % 45.82/46.05 (step-pop @p425 :rule scope :premises (@p424)) % 45.82/46.05 (step @p379 :rule process_scope :premises (@p425) :args (false)) % 45.82/46.05 (assume-push @p426 @t251) % 45.82/46.05 (assume-push @p427 @t231) % 45.82/46.05 (assume-push @p428 @t253) % 45.82/46.05 (assume-push @p429 @t259) % 45.82/46.05 (step @p388 :rule and_intro :premises (@p266 @p268 @p429 @p275)) % 45.82/46.05 (step-pop @p430 :rule scope :premises (@p388)) % 45.82/46.05 (step-pop @p431 :rule scope :premises (@p430)) % 45.82/46.05 (step-pop @p432 :rule scope :premises (@p431)) % 45.82/46.05 (step-pop @p433 :rule scope :premises (@p432)) % 45.82/46.05 (step @p389 :rule process_scope :premises (@p433) :args (@t269)) % 45.82/46.05 (step @p394 :rule implies_elim :premises (@p389)) % 45.82/46.05 (step @p395 :rule resolution :premises (@p394 @p379) :args (true @t269)) % 45.82/46.05 (step @p396 :rule not_and :premises (@p395)) % 45.82/46.05 (step @p397 :rule eq_resolve :premises (@p396 @p323)) % 45.82/46.05 (step @p398 :rule reordering :premises (@p397) :args ((or @t234 @t237 @t232 @t258))) % 45.82/46.05 (step @p399 false :rule chain_m_resolution :premises (@p398 @p319 @p275 @p268 @p266) :args (false (@list true false true true) (@list @t258 @t231 @t234 @t237))) % 45.82/46.05 ) % 45.82/46.05 % SZS output end Proof % 45.82/46.05 % cvc5 exiting %------------------------------------------------------------------------------