0.06/0.12 % Problem : theBenchmark.p : TPTP v0.0.0. Released v0.0.0. 0.06/0.12 % Command : do_cvc5 %s %d THM 0.11/0.33 % Computer : n006.cluster.edu 0.11/0.33 % Model : x86_64 x86_64 0.11/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz 0.11/0.33 % Memory : 8042.1875MB 0.11/0.33 % OS : Linux 3.10.0-693.el7.x86_64 0.11/0.33 % CPULimit : 1440 0.11/0.33 % WCLimit : 180 0.11/0.33 % DateTime : Thu Jul 4 05:54:54 EDT 2024 0.11/0.33 % CPUTime : 0.18/0.49 %----Proving TF0_ARI 16.87/17.35 --- Run --finite-model-find --decision=internal at 15... 16.87/17.35 --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --enum-inst at 10... 16.87/17.35 % SZS status Theorem for /export/starexec/sandbox/tmp/tmp.SVtQqHNwNq/cvc5---1.0.5_15495.smt2 16.87/17.35 % SZS output start Proof for /export/starexec/sandbox/tmp/tmp.SVtQqHNwNq/cvc5---1.0.5_15495.smt2 16.87/17.35 (declare-sort tptp.bool 0) 16.87/17.35 (declare-sort tptp.tuple0 0) 16.87/17.35 (declare-sort tptp.ty 0) 16.87/17.35 (declare-sort tptp.map_int_int 0) 16.87/17.35 (declare-sort tptp.uni 0) 16.87/17.35 (declare-fun tptp.get1 (tptp.ty tptp.uni Int) tptp.uni) 16.87/17.35 (declare-fun tptp.array (tptp.ty) tptp.ty) 16.87/17.35 (declare-fun tptp.witness (tptp.ty) tptp.uni) 16.87/17.35 (declare-fun tptp.set1 (tptp.ty tptp.uni Int tptp.uni) tptp.uni) 16.87/17.35 (declare-fun tptp.distance (Int Int) Bool) 16.87/17.35 (declare-fun tptp.contents (tptp.ty tptp.uni) tptp.uni) 16.87/17.35 (declare-fun tptp.map (tptp.ty tptp.ty) tptp.ty) 16.87/17.35 (declare-fun tptp.elts (tptp.ty tptp.uni) tptp.uni) 16.87/17.35 (declare-fun tptp.true () tptp.bool) 16.87/17.35 (declare-fun tptp.mk_array (tptp.ty Int tptp.uni) tptp.uni) 16.87/17.35 (declare-fun tptp.false () tptp.bool) 16.87/17.35 (declare-fun tptp.t2tb (Int) tptp.uni) 16.87/17.35 (declare-fun tptp.t2tb1 (tptp.map_int_int) tptp.uni) 16.87/17.35 (declare-fun tptp.set (tptp.ty tptp.ty tptp.uni tptp.uni tptp.uni) tptp.uni) 16.87/17.35 (declare-fun tptp.length (tptp.ty tptp.uni) Int) 16.87/17.35 (declare-fun tptp.int () tptp.ty) 16.87/17.35 (declare-fun tptp.get (tptp.ty tptp.ty tptp.uni tptp.uni) tptp.uni) 16.87/17.35 (declare-fun tptp.match_bool (tptp.ty tptp.bool tptp.uni tptp.uni) tptp.uni) 16.87/17.35 (declare-fun tptp.tb2t (tptp.uni) Int) 16.87/17.35 (declare-fun tptp.make (tptp.ty Int tptp.uni) tptp.uni) 16.87/17.35 (declare-fun tptp.tuple02 () tptp.tuple0) 16.87/17.35 (declare-fun tptp.sort (tptp.ty tptp.uni) Bool) 16.87/17.35 (declare-fun tptp.n () Int) 16.87/17.35 (declare-fun tptp.ref (tptp.ty) tptp.ty) 16.87/17.35 (declare-fun tptp.f (Int) Int) 16.87/17.35 (declare-fun tptp.mk_ref (tptp.ty tptp.uni) tptp.uni) 16.87/17.35 (declare-fun tptp.path (Int Int) Bool) 16.87/17.35 (declare-fun tptp.const (tptp.ty tptp.ty tptp.uni) tptp.uni) 16.87/17.35 (declare-fun tptp.tb2t1 (tptp.uni) tptp.map_int_int) 16.87/17.35 (define @v.0.BOUND_VARIABLE_957 () (alf.var "BOUND_VARIABLE_957" Int)) 16.87/17.35 (define @v.3.U () (alf.var "U" tptp.bool)) 16.87/17.35 (define @v.1.Z1 () (alf.var "Z1" Int)) 16.87/17.35 (define @v.3.X () (alf.var "X" tptp.map_int_int)) 16.87/17.35 (define @v.0.N () (alf.var "N" Int)) 16.87/17.35 (define @v.0.V () (alf.var "V" tptp.uni)) 16.87/17.35 (define @v.0.A () (alf.var "A" tptp.ty)) 16.87/17.35 (define @v.1.X () (alf.var "X" Int)) 16.87/17.35 (define @v.0.B1 () (alf.var "B1" tptp.uni)) 16.87/17.35 (define @v.0.Y () (alf.var "Y" Int)) 16.87/17.35 (define @v.0.G () (alf.var "G" tptp.map_int_int)) 16.87/17.35 (define @v.0.Dqt () (alf.var "Dqt" Int)) 16.87/17.35 (define @v.1.I () (alf.var "I" tptp.map_int_int)) 16.87/17.35 (define @v.0.Count () (alf.var "Count" Int)) 16.87/17.35 (define @v.1.X1 () (alf.var "X1" Int)) 16.87/17.35 (define @v.0.J () (alf.var "J" Int)) 16.87/17.35 (define @v.0.I () (alf.var "I" Int)) 16.87/17.35 (define @v.0.J1 () (alf.var "J1" Int)) 16.87/17.35 (define @v.0.B () (alf.var "B" tptp.ty)) 16.87/17.35 (define @v.1.J () (alf.var "J" tptp.uni)) 16.87/17.35 (define @v.0.D () (alf.var "D" tptp.map_int_int)) 16.87/17.35 (define @v.0.A1 () (alf.var "A1" tptp.uni)) 16.87/17.35 (define @v.0.X1 () (alf.var "X1" tptp.uni)) 16.87/17.35 (define @v.0.G1 () (alf.var "G1" tptp.map_int_int)) 16.87/17.35 (define @v.0.Count1 () (alf.var "Count1" Int)) 16.87/17.35 (define @v.0.U1 () (alf.var "U1" tptp.uni)) 16.87/17.35 (define @v.1.U () (alf.var "U" Int)) 16.87/17.35 (define @v.2.U () (alf.var "U" tptp.uni)) 16.87/17.35 (define @v.0.BOUND_VARIABLE_1219 () (alf.var "BOUND_VARIABLE_1219" Int)) 16.87/17.35 (define @v.0.X () (alf.var "X" tptp.uni)) 16.87/17.35 (define @v.1.D () (alf.var "D" Int)) 16.87/17.35 (define @v.0.A2 () (alf.var "A2" tptp.uni)) 16.87/17.35 (define @v.0.M () (alf.var "M" tptp.uni)) 16.87/17.35 (define @v.0.K () (alf.var "K" Int)) 16.87/17.35 (define @v.0.Kqt () (alf.var "Kqt" Int)) 16.87/17.35 (define @v.1.Z () (alf.var "Z" tptp.uni)) 16.87/17.35 (define @v.0.X2 () (alf.var "X2" tptp.uni)) 16.87/17.35 (define @v.0.Count2 () (alf.var "Count2" Int)) 16.87/17.35 (define @v.0.U () (alf.var "U" tptp.tuple0)) 16.87/17.35 (define @v.2.X () (alf.var "X" tptp.bool)) 16.87/17.35 (define @v.0.Z () (alf.var "Z" Int)) 16.87/17.35 (define @v.0.BOUND_VARIABLE_1221 () (alf.var "BOUND_VARIABLE_1221" Int)) 16.87/17.35 (define @v.0.Z1 () (alf.var "Z1" tptp.uni)) 16.87/17.35 (define @t1 () (tptp.t2tb @v.0.K)) 16.87/17.35 (define @t2 () (tptp.t2tb1 @v.0.D)) 16.87/17.35 (define @t3 () (tptp.tb2t (tptp.get tptp.int tptp.int @t2 @t1))) 16.87/17.35 (define @t4 () (< @v.0.K @v.0.I)) 16.87/17.35 (define @t5 () (@list @v.0.K)) 16.87/17.35 (define @t6 () (tptp.t2tb @v.0.J)) 16.87/17.35 (define @t7 () (tptp.t2tb1 @v.0.G1)) 16.87/17.35 (define @t8 () (tptp.tb2t (tptp.get tptp.int tptp.int @t7 @t6))) 16.87/17.35 (define @t9 () (< @v.0.J tptp.n)) 16.87/17.35 (define @t10 () (<= 0 @v.0.J)) 16.87/17.35 (define @t11 () (tptp.f @v.0.I)) 16.87/17.35 (define @t12 () (<= 0 tptp.n)) 16.87/17.35 (define @t13 () (<= @t11 @v.0.J)) 16.87/17.35 (define @t14 () (< @v.0.J @v.0.I)) 16.87/17.35 (define @t15 () (tptp.tb2t (tptp.get tptp.int tptp.int @t2 @t6))) 16.87/17.35 (define @t16 () (- @v.0.I 1)) 16.87/17.35 (define @t17 () (- 1)) 16.87/17.35 (define @t18 () (tptp.t2tb 0)) 16.87/17.35 (define @t19 () (tptp.tb2t (tptp.get tptp.int tptp.int @t7 @t18))) 16.87/17.35 (define @t20 () (tptp.get tptp.int tptp.int @t7 @t1)) 16.87/17.35 (define @t21 () (tptp.tb2t @t20)) 16.87/17.35 (define @t22 () (tptp.f @v.0.K)) 16.87/17.35 (define @t23 () (tptp.tb2t (tptp.get tptp.int tptp.int @t2 @t20))) 16.87/17.35 (define @t24 () (tptp.tb2t (tptp.get tptp.int tptp.int @t7 @t20))) 16.87/17.35 (define @t25 () (< 0 @v.0.K)) 16.87/17.35 (define @t26 () (tptp.path @t3 @v.0.K)) 16.87/17.35 (define @t27 () (= (tptp.tb2t (tptp.get tptp.int tptp.int @t2 @t18)) 0)) 16.87/17.35 (define @t28 () (- tptp.n 1)) 16.87/17.35 (define @t29 () (< 0 tptp.n)) 16.87/17.35 (define @t30 () (not (=> @t12 (=> @t12 (=> (and (<= 0 0) @t29) (forall (@list @v.0.G) (=> (and @t12 (= @v.0.G (tptp.tb2t1 (tptp.set tptp.int tptp.int (tptp.const tptp.int tptp.int @t18) @t18 (tptp.t2tb @t17))))) (=> @t12 (=> @t12 (=> (<= 1 @t28) (forall (@list @v.0.Count @v.0.D @v.0.G1 @v.0.I) (=> (and (<= 1 @v.0.I) (<= @v.0.I @t28)) (=> (and @t27 (<= (+ @v.0.Count (tptp.tb2t (tptp.get tptp.int tptp.int @t2 (tptp.t2tb @t16)))) @t16) (forall @t5 (=> (and (<= 0 @v.0.K) @t4) @t26)) (forall @t5 (=> (and @t4 @t25) (and (< @t24 @t22) (< @t21 @v.0.K) (= @t3 (+ @t23 1)) (forall (@list @v.0.Kqt) (=> (and (< @v.0.Kqt @v.0.K) (< @t21 @v.0.Kqt)) (< @t23 (tptp.tb2t (tptp.get tptp.int tptp.int @t2 (tptp.t2tb @v.0.Kqt)))))) (< 0 @t3) (<= @t22 @t21)))) (= @t19 @t17)) (forall (@list @v.0.J @v.0.Count1) (=> (and (<= (+ @v.0.Count1 @t15) @t16) (forall @t5 (=> (and (< @v.0.J @v.0.K) @t4) (< @t15 @t3))) @t14 @t13) (=> (and @t9 @t10 @t12) (=> (<= @t11 @t8) (forall (@list @v.0.Count2) (=> (= @v.0.Count2 (+ @v.0.Count1 1)) (=> (and @t10 @t9) (forall (@list @v.0.J1) (=> (= @v.0.J1 @t8) (forall @t5 (=> (and (< @v.0.J1 @v.0.K) @t4) (< (tptp.tb2t (tptp.get tptp.int tptp.int @t2 (tptp.t2tb @v.0.J1))) @t3))))))))))))))))))))))))) 16.87/17.35 (define @t31 () (tptp.sort @v.0.B @v.0.B1)) 16.87/17.35 (define @t32 () (tptp.mk_array @v.0.A @v.1.U @v.0.U1)) 16.87/17.35 (define @t33 () (tptp.map tptp.int @v.0.A)) 16.87/17.35 (define @t34 () (@list @v.0.A @v.1.U @v.0.U1)) 16.87/17.35 (define @t35 () (tptp.ref @v.0.A)) 16.87/17.35 (define @t36 () (@list @v.0.A @v.2.U)) 16.87/17.35 (define @t37 () (tptp.get @v.0.B @v.0.A (tptp.set @v.0.B @v.0.A @v.0.M @v.0.A1 @v.0.B1) @v.0.A2)) 16.87/17.35 (define @t38 () (= @v.0.A1 @v.0.A2)) 16.87/17.35 (define @t39 () (tptp.t2tb @v.0.I)) 16.87/17.35 (define @t40 () (tptp.elts @v.0.A @v.0.A1)) 16.87/17.35 (define @t41 () (tptp.t2tb (tptp.tb2t @v.1.J))) 16.87/17.35 (define @t42 () (@list @v.1.J)) 16.87/17.35 (define @t43 () (forall @t42 (= @t41 @v.1.J))) 16.87/17.35 (define @t44 () (@list @v.0.I)) 16.87/17.35 (define @t45 () (tptp.map @v.0.A @v.0.B)) 16.87/17.35 (define @t46 () (@list @v.0.A @v.0.X)) 16.87/17.35 (define @t47 () (@list @v.0.A @v.1.Z @v.0.Z1)) 16.87/17.35 (define @t48 () (+ @v.1.D 1)) 16.87/17.35 (define @t49 () (tptp.path @v.1.D @v.0.J)) 16.87/17.35 (define @t50 () (@list @v.1.D @v.0.J)) 16.87/17.35 (define @t51 () (<= 0 @v.0.I)) 16.87/17.35 (define @t52 () (< @v.0.I tptp.n)) 16.87/17.35 (define @t53 () (tptp.array @v.0.A)) 16.87/17.35 (define @t54 () (@list @v.0.A @v.1.X @v.0.X1)) 16.87/17.35 (define @t55 () (forall @t5 (=> (and (< @v.0.K tptp.n) @t25) (and (< @t22 @v.0.K) (<= 0 @t22))))) 16.87/17.35 (define @t56 () (tptp.t2tb @v.0.BOUND_VARIABLE_1219)) 16.87/17.35 (define @t57 () (tptp.tb2t (tptp.get tptp.int tptp.int @t7 @t56))) 16.87/17.35 (define @t58 () (* -1 @t57)) 16.87/17.35 (define @t59 () (* -1 @v.0.BOUND_VARIABLE_1219)) 16.87/17.35 (define @t60 () (* -1 @v.0.K)) 16.87/17.35 (define @t61 () (not (>= (+ @v.0.I @t60) 1))) 16.87/17.35 (define @t62 () (* -1 @t22)) 16.87/17.35 (define @t63 () (tptp.t2tb @v.0.BOUND_VARIABLE_957)) 16.87/17.35 (define @t64 () (* -1 @t21)) 16.87/17.35 (define @t65 () (not (>= (+ @v.0.K (* -1 @v.0.BOUND_VARIABLE_957)) 1))) 16.87/17.35 (define @t66 () (not (>= @v.0.K 1))) 16.87/17.35 (define @t67 () (@list @v.0.K @v.0.BOUND_VARIABLE_957)) 16.87/17.35 (define @t68 () (not (>= @v.0.K 0))) 16.87/17.35 (define @t69 () (or (not @t27) (not (>= @v.0.I 1)) (not (>= (+ tptp.n (* -1 @v.0.I)) 1)) (not (forall @t5 (or @t68 @t61 @t26))) (not (forall @t67 (or @t61 @t66 (and (>= (+ @t22 (* -1 @t24)) 1) (>= (+ @v.0.K @t64) 1) (= @t3 (+ 1 @t23)) (or @t65 (not (>= (+ @v.0.BOUND_VARIABLE_957 @t64) 1)) (not (>= (+ @t23 (* -1 (tptp.tb2t (tptp.get tptp.int tptp.int @t2 @t63)))) 0))) (>= @t3 1) (>= (+ @t21 @t62) 0))))) (not (= @t19 -1)) (not (forall @t5 (or (not (>= (+ @v.0.K @t59) 1)) @t61 (>= (+ @t3 (* -1 (tptp.tb2t (tptp.get tptp.int tptp.int @t2 @t56)))) 1)))) (not (>= (+ @v.0.I @t59) 1)) (not (>= (+ @v.0.BOUND_VARIABLE_1219 (* -1 @t11)) 0)) (not (>= (+ tptp.n @t59) 1)) (not (>= @v.0.BOUND_VARIABLE_1219 0)) (>= (+ @t11 @t58) 1) (not (>= (+ @v.0.BOUND_VARIABLE_1221 @t58) 1)) (not (>= (+ @v.0.I (* -1 @v.0.BOUND_VARIABLE_1221)) 1)) (not (>= (+ (tptp.tb2t (tptp.get tptp.int tptp.int @t2 (tptp.t2tb @t57))) (* -1 (tptp.tb2t (tptp.get tptp.int tptp.int @t2 (tptp.t2tb @v.0.BOUND_VARIABLE_1221))))) 0)))) 16.87/17.35 (define @t70 () (@list @v.0.D @v.0.I @v.0.G1 @v.0.BOUND_VARIABLE_1221 @v.0.BOUND_VARIABLE_1219)) 16.87/17.35 (define @t71 () (forall @t70 @t69)) 16.87/17.35 (define @t72 () (>= tptp.n 0)) 16.87/17.35 (define @t73 () (exists @t70 (not @t69))) 16.87/17.35 (define @t74 () (@quantifiers_skolemize @t73 @v.0.BOUND_VARIABLE_1221)) 16.87/17.35 (define @t75 () (tptp.t2tb1 (@quantifiers_skolemize @t73 @v.0.D))) 16.87/17.35 (define @t76 () (tptp.tb2t (tptp.get tptp.int tptp.int @t75 (tptp.t2tb @t74)))) 16.87/17.35 (define @t77 () (* -1 @t76)) 16.87/17.35 (define @t78 () (@quantifiers_skolemize @t73 @v.0.BOUND_VARIABLE_1219)) 16.87/17.35 (define @t79 () (tptp.t2tb @t78)) 16.87/17.35 (define @t80 () (tptp.t2tb1 (@quantifiers_skolemize @t73 @v.0.G1))) 16.87/17.35 (define @t81 () (tptp.get tptp.int tptp.int @t80 @t79)) 16.87/17.35 (define @t82 () (tptp.tb2t @t81)) 16.87/17.35 (define @t83 () (tptp.t2tb @t82)) 16.87/17.35 (define @t84 () (tptp.tb2t (tptp.get tptp.int tptp.int @t75 @t83))) 16.87/17.35 (define @t85 () (+ @t84 @t77)) 16.87/17.35 (define @t86 () (>= @t85 0)) 16.87/17.35 (define @t87 () (not @t86)) 16.87/17.35 (define @t88 () (* -1 @t74)) 16.87/17.35 (define @t89 () (@quantifiers_skolemize @t73 @v.0.I)) 16.87/17.35 (define @t90 () (>= (+ @t89 @t88) 1)) 16.87/17.35 (define @t91 () (not @t90)) 16.87/17.35 (define @t92 () (* -1 @t82)) 16.87/17.35 (define @t93 () (>= (+ @t74 @t92) 1)) 16.87/17.35 (define @t94 () (not @t93)) 16.87/17.35 (define @t95 () (tptp.f @t89)) 16.87/17.35 (define @t96 () (+ @t95 @t92)) 16.87/17.35 (define @t97 () (>= @t96 1)) 16.87/17.35 (define @t98 () (>= @t78 0)) 16.87/17.35 (define @t99 () (not @t98)) 16.87/17.35 (define @t100 () (* -1 @t78)) 16.87/17.35 (define @t101 () (not (>= (+ tptp.n @t100) 1))) 16.87/17.35 (define @t102 () (* -1 @t95)) 16.87/17.35 (define @t103 () (not (>= (+ @t78 @t102) 0))) 16.87/17.35 (define @t104 () (>= (+ @t89 @t100) 1)) 16.87/17.35 (define @t105 () (not @t104)) 16.87/17.35 (define @t106 () (tptp.tb2t (tptp.get tptp.int tptp.int @t75 @t79))) 16.87/17.35 (define @t107 () (* -1 @t106)) 16.87/17.35 (define @t108 () (tptp.tb2t (tptp.get tptp.int tptp.int @t75 @t1))) 16.87/17.35 (define @t109 () (>= (+ @t108 @t107) 1)) 16.87/17.35 (define @t110 () (* -1 @t89)) 16.87/17.35 (define @t111 () (>= (+ @v.0.K @t110) 0)) 16.87/17.35 (define @t112 () (not (>= (+ @v.0.K @t100) 1))) 16.87/17.35 (define @t113 () (forall @t5 (or @t112 @t111 @t109))) 16.87/17.35 (define @t114 () (not @t113)) 16.87/17.35 (define @t115 () (tptp.tb2t (tptp.get tptp.int tptp.int @t80 @t18))) 16.87/17.35 (define @t116 () (= @t115 -1)) 16.87/17.35 (define @t117 () (not @t116)) 16.87/17.35 (define @t118 () (tptp.get tptp.int tptp.int @t80 @t1)) 16.87/17.35 (define @t119 () (tptp.tb2t @t118)) 16.87/17.35 (define @t120 () (* -1 @t119)) 16.87/17.35 (define @t121 () (>= @t108 1)) 16.87/17.35 (define @t122 () (tptp.tb2t (tptp.get tptp.int tptp.int @t75 @t118))) 16.87/17.35 (define @t123 () (or @t65 (not (>= (+ @v.0.BOUND_VARIABLE_957 @t120) 1)) (not (>= (+ @t122 (* -1 (tptp.tb2t (tptp.get tptp.int tptp.int @t75 @t63)))) 0)))) 16.87/17.35 (define @t124 () (= @t108 (+ 1 @t122))) 16.87/17.35 (define @t125 () (>= (+ @v.0.K @t120) 1)) 16.87/17.35 (define @t126 () (>= (+ @t22 (* -1 (tptp.tb2t (tptp.get tptp.int tptp.int @t80 @t118)))) 1)) 16.87/17.35 (define @t127 () (forall @t67 (or @t111 @t66 (and @t126 @t125 @t124 @t123 @t121 (not (>= (+ @t22 @t120) 1)))))) 16.87/17.35 (define @t128 () (not @t127)) 16.87/17.35 (define @t129 () (tptp.path @t108 @v.0.K)) 16.87/17.35 (define @t130 () (>= (+ tptp.n @t110) 1)) 16.87/17.35 (define @t131 () (not @t130)) 16.87/17.35 (define @t132 () (>= @t89 1)) 16.87/17.35 (define @t133 () (not @t132)) 16.87/17.35 (define @t134 () (tptp.tb2t (tptp.get tptp.int tptp.int @t75 @t18))) 16.87/17.35 (define @t135 () (not (= @t134 0))) 16.87/17.35 (define @t136 () (or @t135 @t133 @t131 (not (forall @t5 (or @t68 @t111 @t129))) @t128 @t117 @t114 @t105 @t103 @t101 @t99 @t97 @t94 @t91 @t87)) 16.87/17.35 (define @t137 () (not @t136)) 16.87/17.35 (define @t138 () (not @t71)) 16.87/17.35 (define @t139 () (not (>= (+ @t89 @t60) 1))) 16.87/17.35 (define @t140 () (not (or @t135 @t133 @t131 (not (forall @t5 (or @t68 @t139 @t129))) (not (forall @t67 (or @t139 @t66 (and @t126 @t125 @t124 @t123 @t121 (>= (+ @t119 @t62) 0))))) @t117 (not (forall @t5 (or @t112 @t139 @t109))) @t105 @t103 @t101 @t99 @t97 @t94 @t91 @t87))) 16.87/17.35 (define @t141 () (tptp.f @t78)) 16.87/17.35 (define @t142 () (not (>= (+ @t141 @t92) 1))) 16.87/17.35 (define @t143 () (>= @t106 1)) 16.87/17.35 (define @t144 () (tptp.tb2t (tptp.get tptp.int tptp.int @t75 @t81))) 16.87/17.35 (define @t145 () (= @t106 (+ 1 @t144))) 16.87/17.35 (define @t146 () (>= (+ @t78 @t92) 1)) 16.87/17.35 (define @t147 () (>= (+ @t141 (* -1 (tptp.tb2t (tptp.get tptp.int tptp.int @t80 @t81)))) 1)) 16.87/17.35 (define @t148 () (>= @t78 1)) 16.87/17.35 (define @t149 () (not @t148)) 16.87/17.35 (define @t150 () (>= (+ @t78 @t110) 0)) 16.87/17.35 (define @t151 () (>= (+ @t82 (* -1 @t141)) 0)) 16.87/17.35 (define @t152 () (* -1 @t144)) 16.87/17.35 (define @t153 () (+ @t76 @t152)) 16.87/17.35 (define @t154 () (>= @t153 1)) 16.87/17.35 (define @t155 () (+ @t74 @t100)) 16.87/17.35 (define @t156 () (>= @t155 0)) 16.87/17.35 (define @t157 () (or @t156 @t94 @t154)) 16.87/17.35 (define @t158 () (and @t147 @t146 @t145 @t157 @t143 @t151)) 16.87/17.35 (define @t159 () (or @t105 @t149 @t158)) 16.87/17.35 (define @t160 () (>= @t95 0)) 16.87/17.35 (define @t161 () (and (>= (+ @t89 @t102) 1) @t160)) 16.87/17.35 (define @t162 () (or @t131 @t133 @t161)) 16.87/17.35 (define @t163 () (not @t97)) 16.87/17.35 (define @t164 () (>= @t82 0)) 16.87/17.35 (define @t165 () (* -1 0)) 16.87/17.35 (define @t166 () (not @t160)) 16.87/17.35 (define @t167 () (= -1 @t82)) 16.87/17.35 (define @t168 () (= @t82 -1)) 16.87/17.35 (define @t169 () (not @t168)) 16.87/17.35 (define @t170 () (= @t78 0)) 16.87/17.35 (define @t171 () (= 0 @t78)) 16.87/17.35 (define @t172 () (and @t164 @t167)) 16.87/17.35 (define @t173 () (not @t170)) 16.87/17.35 (define @t174 () (and @t98 @t173)) 16.87/17.35 (define @t175 () (and @t147 @t146 @t145 (or @t149 @t164 (>= (+ @t134 @t152) 1)) @t143 @t151)) 16.87/17.35 (define @t176 () (or @t105 @t149 @t175)) 16.87/17.35 (define @t177 () (>= @t155 1)) 16.87/17.35 (define @t178 () (not @t177)) 16.87/17.35 (define @t179 () (+ @t106 @t77)) 16.87/17.35 (define @t180 () (>= @t179 0)) 16.87/17.35 (define @t181 () (not @t180)) 16.87/17.35 (define @t182 () (or @t178 @t91 @t181)) 16.87/17.35 (define @t183 () (= @t84 @t144)) 16.87/17.35 (define @t184 () (+ @t84 @t152)) 16.87/17.35 (define @t185 () (+ @t106 @t152)) 16.87/17.35 (define @t186 () (= @t185 1)) 16.87/17.35 (define @t187 () (* -1 1)) 16.87/17.35 (define @t188 () (* -1 @t85)) 16.87/17.35 (define @t189 () (* -1 @t185)) 16.87/17.35 (define @t190 () (not @t183)) 16.87/17.35 (define @t191 () (not @t145)) 16.87/17.35 (define @t192 () (not @t156)) 16.87/17.35 (define @t193 () (= @t81 @t83)) 16.87/17.35 (define @t194 () (= @t106 @t76)) 16.87/17.35 (define @t195 () (= @t74 @t78)) 16.87/17.35 (define @t196 () (and @t194 @t183 @t145 @t86)) 16.87/17.35 (define @t197 () (and @t86 @t183 @t154)) 16.87/17.35 (assume @p1 @t30) 16.87/17.35 (assume @p2 (forall (@list @v.0.U) (= @v.0.U tptp.tuple02))) 16.87/17.35 (assume @p3 (forall (@list @v.0.A @v.0.B @v.0.B1 @v.0.A1) (=> @t31 (= (tptp.get @v.0.B @v.0.A (tptp.const @v.0.B @v.0.A @v.0.B1) @v.0.A1) @v.0.B1)))) 16.87/17.35 (assume @p4 (forall (@list @v.0.A @v.0.N @v.0.V) (= (tptp.make @v.0.A @v.0.N @v.0.V) (tptp.mk_array @v.0.A @v.0.N (tptp.const @v.0.A tptp.int @v.0.V))))) 16.87/17.35 (assume @p5 (not (= tptp.true tptp.false))) 16.87/17.35 (assume @p6 (forall @t34 (=> (tptp.sort @t33 @v.0.U1) (= (tptp.elts @v.0.A @t32) @v.0.U1)))) 16.87/17.35 (assume @p7 (forall @t36 (=> (tptp.sort @t35 @v.2.U) (= @v.2.U (tptp.mk_ref @v.0.A (tptp.contents @v.0.A @v.2.U)))))) 16.87/17.35 (assume @p8 (forall (@list @v.0.A @v.0.B @v.0.X @v.0.X1) (tptp.sort @v.0.B (tptp.get @v.0.B @v.0.A @v.0.X @v.0.X1)))) 16.87/17.35 (assume @p9 (forall (@list @v.0.A @v.0.B @v.0.M @v.0.A1 @v.0.A2 @v.0.B1) (=> @t31 (=> @t38 (= @t37 @v.0.B1))))) 16.87/17.35 (assume @p10 (forall (@list @v.0.A @v.0.A1 @v.0.I @v.0.V) (= (tptp.set1 @v.0.A @v.0.A1 @v.0.I @v.0.V) (tptp.mk_array @v.0.A (tptp.length @v.0.A @v.0.A1) (tptp.set @v.0.A tptp.int @t40 @t39 @v.0.V))))) 16.87/17.35 (assume @p11 @t43) 16.87/17.35 (assume @p12 (forall @t44 (= (tptp.tb2t @t39) @v.0.I))) 16.87/17.35 (assume @p13 (forall (@list @v.0.A @v.0.B @v.0.X @v.0.X1 @v.0.X2) (tptp.sort @t45 (tptp.set @v.0.B @v.0.A @v.0.X @v.0.X1 @v.0.X2)))) 16.87/17.35 (assume @p14 (forall (@list @v.1.X @v.0.Y @v.0.Z) (=> (<= @v.1.X @v.0.Y) (=> (<= 0 @v.0.Z) (<= (* @v.1.X @v.0.Z) (* @v.0.Y @v.0.Z)))))) 16.87/17.35 (assume @p15 (forall @t46 (tptp.sort @t33 (tptp.elts @v.0.A @v.0.X)))) 16.87/17.35 (assume @p16 (forall (@list @v.1.I) (= (tptp.tb2t1 (tptp.t2tb1 @v.1.I)) @v.1.I))) 16.87/17.35 (assume @p17 (forall @t42 (= (tptp.t2tb1 (tptp.tb2t1 @v.1.J)) @v.1.J))) 16.87/17.35 (assume @p18 (forall @t47 (=> (tptp.sort @v.0.A @v.0.Z1) (= (tptp.match_bool @v.0.A tptp.false @v.1.Z @v.0.Z1) @v.0.Z1)))) 16.87/17.35 (assume @p19 (forall (@list @v.0.A) (tptp.sort @v.0.A (tptp.witness @v.0.A)))) 16.87/17.35 (assume @p20 (forall @t44 (=> (and @t52 @t51) (forall @t50 (=> @t49 (=> (and @t13 @t14) (tptp.path @t48 @v.0.I))))))) 16.87/17.35 (assume @p21 (forall @t46 (tptp.sort @v.0.A (tptp.contents @v.0.A @v.0.X)))) 16.87/17.35 (assume @p22 (forall @t54 (tptp.sort @t53 (tptp.make @v.0.A @v.1.X @v.0.X1)))) 16.87/17.35 (assume @p23 (forall @t46 (tptp.sort @t35 (tptp.mk_ref @v.0.A @v.0.X)))) 16.87/17.35 (assume @p24 (tptp.path 0 0)) 16.87/17.35 (assume @p25 @t29) 16.87/17.35 (assume @p26 (forall (@list @v.1.D @v.0.I) (= (and (forall (@list @v.0.Dqt) (=> (tptp.path @v.0.Dqt @v.0.I) (<= @v.1.D @v.0.Dqt))) (tptp.path @v.1.D @v.0.I)) (tptp.distance @v.1.D @v.0.I)))) 16.87/17.35 (assume @p27 (forall (@list @v.0.A @v.2.X @v.0.X1 @v.0.X2) (tptp.sort @v.0.A (tptp.match_bool @v.0.A @v.2.X @v.0.X1 @v.0.X2)))) 16.87/17.35 (assume @p28 (forall (@list @v.0.A @v.0.A1 @v.0.I) (= (tptp.get1 @v.0.A @v.0.A1 @v.0.I) (tptp.get @v.0.A tptp.int @t40 @t39)))) 16.87/17.35 (assume @p29 (forall (@list @v.0.A @v.0.X @v.1.X1 @v.0.X2) (tptp.sort @t53 (tptp.set1 @v.0.A @v.0.X @v.1.X1 @v.0.X2)))) 16.87/17.35 (assume @p30 (forall @t54 (tptp.sort @t53 (tptp.mk_array @v.0.A @v.1.X @v.0.X1)))) 16.87/17.35 (assume @p31 (forall @t36 (=> (tptp.sort @v.0.A @v.2.U) (= (tptp.contents @v.0.A (tptp.mk_ref @v.0.A @v.2.U)) @v.2.U)))) 16.87/17.35 (assume @p32 (forall (@list @v.0.A @v.0.B @v.0.X) (tptp.sort @t45 (tptp.const @v.0.B @v.0.A @v.0.X)))) 16.87/17.35 (assume @p33 (forall (@list @v.1.X) (tptp.sort tptp.int (tptp.t2tb @v.1.X)))) 16.87/17.35 (assume @p34 (forall (@list @v.3.X) (tptp.sort (tptp.map tptp.int tptp.int) (tptp.t2tb1 @v.3.X)))) 16.87/17.35 (assume @p35 (forall (@list @v.0.Z @v.1.Z1) (=> (tptp.path @v.0.Z @v.1.Z1) (or (exists @t44 (and @t52 (exists @t50 (and @t49 @t13 (= @v.1.Z1 @v.0.I) (= @v.0.Z @t48) @t14)) @t51)) (and (= @v.1.Z1 0) (= @v.0.Z 0)))))) 16.87/17.35 (assume @p36 (forall (@list @v.3.U) (or (= @v.3.U tptp.true) (= @v.3.U tptp.false)))) 16.87/17.35 (assume @p37 (forall (@list @v.0.A @v.0.B @v.0.M @v.0.A1 @v.0.A2) (=> (tptp.sort @v.0.A @v.0.A1) (=> (tptp.sort @v.0.A @v.0.A2) (forall (@list @v.0.B1) (=> (not @t38) (= @t37 (tptp.get @v.0.B @v.0.A @v.0.M @v.0.A2)))))))) 16.87/17.35 (assume @p38 (forall @t36 (= @v.2.U (tptp.mk_array @v.0.A (tptp.length @v.0.A @v.2.U) (tptp.elts @v.0.A @v.2.U))))) 16.87/17.35 (assume @p39 (forall @t47 (=> (tptp.sort @v.0.A @v.1.Z) (= (tptp.match_bool @v.0.A tptp.true @v.1.Z @v.0.Z1) @v.1.Z)))) 16.87/17.35 (assume @p40 (forall @t34 (= (tptp.length @v.0.A @t32) @v.1.U))) 16.87/17.35 (assume @p41 @t55) 16.87/17.35 (assume @p42 (forall (@list @v.0.A @v.0.X @v.1.X1) (tptp.sort @v.0.A (tptp.get1 @v.0.A @v.0.X @v.1.X1)))) 16.87/17.35 (assume @p43 true) 16.87/17.35 ; WARNING: add trust step for MACRO_SR_EQ_INTRO 16.87/17.35 ; trust MACRO_SR_EQ_INTRO 16.87/17.35 (step @p44 :rule trust :premises () :args ((= @t30 (not (=> @t72 (=> @t72 (=> (>= tptp.n 1) (or (not @t72) (not (>= tptp.n 2)) @t71)))))))) 16.87/17.35 (step @p45 :rule eq_resolve :premises (@p1 @p44)) 16.87/17.35 (step @p46 :rule not_implies_elim2 :premises (@p45)) 16.87/17.35 (step @p47 :rule not_implies_elim2 :premises (@p46)) 16.87/17.35 (step @p48 :rule not_implies_elim2 :premises (@p47)) 16.87/17.35 (step @p49 :rule not_or_elim :premises (@p48) :args (2)) 16.87/17.35 (step @p50 :rule refl :args (@t137)) 16.87/17.35 ; WARNING: add trust step for MACRO_SR_PRED_INTRO 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p51 :rule trust :premises () :args ((= (not @t138) @t71))) 16.87/17.35 (step @p52 :rule nary_cong :premises (@p51 @p50) :args (or)) 16.87/17.35 ; WARNING: add trust step for MACRO_REWRITE 16.87/17.35 ; trust MACRO_REWRITE 16.87/17.35 (step @p53 :rule trust :premises () :args ((= (=> @t138 @t140) (=> @t138 @t137)))) 16.87/17.35 (assume-push @p54 @t138) 16.87/17.35 (step @p55 :rule skolemize :premises (@p49)) 16.87/17.35 (step-pop @p371 :rule scope :premises (@p55)) 16.87/17.35 (step @p56 :rule process_scope :premises (@p371) :args (@t140)) 16.87/17.35 (step @p58 :rule eq_resolve :premises (@p56 @p53)) 16.87/17.35 (step @p59 :rule implies_elim :premises (@p58)) 16.87/17.35 (step @p60 :rule eq_resolve :premises (@p59 @p52)) 16.87/17.35 ; WARNING: add trust step for MACRO_RESOLUTION_TRUST 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p61 :rule trust :premises (@p60 @p49) :args (@t137)) 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p62 :rule trust :premises () :args ((= (not @t87) @t86))) 16.87/17.35 (step @p63 :rule refl :args (@t136)) 16.87/17.35 (step @p64 :rule nary_cong :premises (@p63 @p62) :args (or)) 16.87/17.35 (step @p65 :rule cnf_or_neg :args (@t136 14)) 16.87/17.35 (step @p66 :rule eq_resolve :premises (@p65 @p64)) 16.87/17.35 (step @p67 :rule reordering :premises (@p66) :args ((or @t86 @t136))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p68 :rule trust :premises (@p67 @p61) :args (@t86)) 16.87/17.35 ; trust MACRO_SR_EQ_INTRO 16.87/17.35 (step @p69 :rule trust :premises () :args ((= @t43 (forall @t42 (= @v.1.J @t41))))) 16.87/17.35 (step @p70 :rule eq_resolve :premises (@p11 @p69)) 16.87/17.35 (step @p71 :rule instantiate :premises (@p70) :args ((@list @t81))) 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p72 :rule trust :premises () :args ((= (not @t128) @t127))) 16.87/17.35 (step @p73 :rule nary_cong :premises (@p63 @p72) :args (or)) 16.87/17.35 (step @p74 :rule cnf_or_neg :args (@t136 4)) 16.87/17.35 (step @p75 :rule eq_resolve :premises (@p74 @p73)) 16.87/17.35 (step @p76 :rule reordering :premises (@p75) :args ((or @t127 @t136))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p77 :rule trust :premises (@p76 @p61) :args (@t127)) 16.87/17.35 (assume-push @p78 @t127) 16.87/17.35 (step @p79 :rule instantiate :premises (@p77) :args ((@list @t78 @t74))) 16.87/17.35 (step-pop @p372 :rule scope :premises (@p79)) 16.87/17.35 (step @p80 :rule process_scope :premises (@p372) :args ((or @t150 @t149 (and @t147 @t146 @t145 (or (not (>= (+ @t78 @t88) 1)) @t94 (not (>= (+ @t144 @t77) 0))) @t143 @t142)))) 16.87/17.35 ; WARNING: add trust step for MACRO_SR_PRED_ELIM 16.87/17.35 ; trust MACRO_SR_PRED_ELIM 16.87/17.35 (step @p82 :rule trust :premises (@p80) :args ((=> @t127 @t159))) 16.87/17.35 (step @p83 :rule implies_elim :premises (@p82)) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p84 :rule trust :premises (@p83 @p77) :args (@t159)) 16.87/17.35 ; trust MACRO_SR_EQ_INTRO 16.87/17.35 (step @p85 :rule trust :premises () :args ((= @t55 (forall @t5 (or (not (>= (+ tptp.n @t60) 1)) @t66 (and (>= (+ @v.0.K @t62) 1) (>= @t22 0))))))) 16.87/17.35 (step @p86 :rule eq_resolve :premises (@p41 @p85)) 16.87/17.35 (step @p87 :rule instantiate :premises (@p86) :args ((@list @t89))) 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p88 :rule trust :premises () :args ((= (not @t131) @t130))) 16.87/17.35 (step @p89 :rule nary_cong :premises (@p63 @p88) :args (or)) 16.87/17.35 (step @p90 :rule cnf_or_neg :args (@t136 2)) 16.87/17.35 (step @p91 :rule eq_resolve :premises (@p90 @p89)) 16.87/17.35 (step @p92 :rule reordering :premises (@p91) :args ((or @t130 @t136))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p93 :rule trust :premises (@p92 @p61) :args (@t130)) 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p94 :rule trust :premises () :args ((= (not @t133) @t132))) 16.87/17.35 (step @p95 :rule nary_cong :premises (@p63 @p94) :args (or)) 16.87/17.35 (step @p96 :rule cnf_or_neg :args (@t136 1)) 16.87/17.35 (step @p97 :rule eq_resolve :premises (@p96 @p95)) 16.87/17.35 (step @p98 :rule reordering :premises (@p97) :args ((or @t132 @t136))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p99 :rule trust :premises (@p98 @p61) :args (@t132)) 16.87/17.35 (step @p100 :rule cnf_or_pos :args (@t162)) 16.87/17.35 (step @p101 :rule reordering :premises (@p100) :args ((or @t133 @t131 @t161 (not @t162)))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p102 :rule trust :premises (@p101 @p99 @p93 @p87) :args (@t161)) 16.87/17.35 (step @p103 :rule cnf_and_pos :args (@t161 1)) 16.87/17.35 (step @p104 :rule reordering :premises (@p103) :args ((or @t160 (not @t161)))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p105 :rule trust :premises (@p104 @p102) :args (@t160)) 16.87/17.35 (step @p106 :rule cnf_or_neg :args (@t136 11)) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p107 :rule trust :premises (@p106 @p61) :args (@t163)) 16.87/17.35 (assume-push @p108 @t160) 16.87/17.35 (assume-push @p109 @t163) 16.87/17.35 (assume-push @p110 (not @t164)) 16.87/17.35 ; WARNING: add trust step for MACRO_SR_PRED_TRANSFORM 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p111 :rule trust :premises (@p107) :args ((< @t96 1))) 16.87/17.35 (step @p112 :rule int_tight_ub :premises (@p111)) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p113 :rule trust :premises (@p110) :args ((< @t82 0))) 16.87/17.35 ; WARNING: add trust step for MACRO_ARITH_SCALE_SUM_UB 16.87/17.35 ; trust MACRO_ARITH_SCALE_SUM_UB 16.87/17.35 (step @p114 :rule trust :premises (@p113 @p105 @p112) :args ((< (+ @t82 @t102 @t96) (+ 0 @t165 0)))) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p115 false :rule trust :premises (@p114) :args (false)) 16.87/17.35 (step-pop @p373 :rule scope :premises (@p115)) 16.87/17.35 (step-pop @p374 :rule scope :premises (@p373)) 16.87/17.35 (step-pop @p375 :rule scope :premises (@p374)) 16.87/17.35 (step @p116 :rule process_scope :premises (@p375) :args (false)) 16.87/17.35 (step @p120 :rule not_and :premises (@p116)) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p121 :rule trust :premises (@p120) :args ((or @t166 @t97 @t164))) 16.87/17.35 (step @p122 :rule reordering :premises (@p121) :args ((or @t97 @t166 @t164))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p123 :rule trust :premises (@p122 @p107 @p105) :args (@t164)) 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p124 :rule trust :premises () :args ((= (not @t117) @t116))) 16.87/17.35 (step @p125 :rule nary_cong :premises (@p63 @p124) :args (or)) 16.87/17.35 (step @p126 :rule cnf_or_neg :args (@t136 5)) 16.87/17.35 (step @p127 :rule eq_resolve :premises (@p126 @p125)) 16.87/17.35 (step @p128 :rule reordering :premises (@p127) :args ((or @t116 @t136))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p129 :rule trust :premises (@p128 @p61) :args (@t116)) 16.87/17.35 (assume-push @p130 @t164) 16.87/17.35 (assume-push @p131 @t167) 16.87/17.35 (assume-push @p132 @t168) 16.87/17.35 ; trust MACRO_ARITH_SCALE_SUM_UB 16.87/17.35 (step @p133 :rule trust :premises (@p132 @p130) :args ((<= (+ @t82 @t92) (+ -1 @t165)))) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p134 false :rule trust :premises (@p133) :args (false)) 16.87/17.35 (step-pop @p376 :rule scope :premises (@p134)) 16.87/17.35 (step @p135 :rule process_scope :premises (@p376) :args (false)) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p137 :rule trust :premises (@p135) :args (@t169)) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p138 :rule trust :premises (@p137) :args (@t169)) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p139 :rule trust :premises (@p131) :args (@t168)) 16.87/17.35 (step @p140 false :rule contra :premises (@p139 @p138)) 16.87/17.35 (step-pop @p377 :rule scope :premises (@p140)) 16.87/17.35 (step-pop @p378 :rule scope :premises (@p377)) 16.87/17.35 (step @p141 :rule process_scope :premises (@p378) :args (false)) 16.87/17.35 (assume-push @p144 @t116) 16.87/17.35 (assume-push @p145 @t170) 16.87/17.35 (assume-push @p146 @t164) 16.87/17.35 (assume-push @p147 @t171) 16.87/17.35 (assume-push @p148 (= -1 @t115)) 16.87/17.35 (step @p149 :rule symm :premises (@p147)) 16.87/17.35 (step @p150 :rule symm :premises (@p149)) 16.87/17.35 (step @p151 :rule cong :premises (@p150) :args (tptp.t2tb)) 16.87/17.35 (step @p152 :rule refl :args (@t80)) 16.87/17.35 (step @p153 :rule refl :args (tptp.int)) 16.87/17.35 (step @p154 :rule cong :premises (@p153 @p153 @p152 @p151) :args (tptp.get)) 16.87/17.35 (step @p155 :rule cong :premises (@p154) :args (tptp.tb2t)) 16.87/17.35 (step @p156 :rule symm :premises (@p129)) 16.87/17.35 (step @p157 :rule trans :premises (@p156 @p155)) 16.87/17.35 (step-pop @p379 :rule scope :premises (@p157)) 16.87/17.35 (step-pop @p380 :rule scope :premises (@p379)) 16.87/17.35 (step @p158 :rule process_scope :premises (@p380) :args (@t167)) 16.87/17.35 (assume-push @p161 @t170) 16.87/17.35 (step @p162 :rule symm :premises (@p145)) 16.87/17.35 (step-pop @p381 :rule scope :premises (@p162)) 16.87/17.35 (step @p163 :rule process_scope :premises (@p381) :args (@t171)) 16.87/17.35 (step @p165 :rule modus_ponens :premises (@p145 @p163)) 16.87/17.35 (step @p166 :rule and_intro :premises (@p165 @p156)) 16.87/17.35 (step @p167 :rule modus_ponens :premises (@p166 @p158)) 16.87/17.35 (step @p168 :rule and_intro :premises (@p130 @p167)) 16.87/17.35 (step-pop @p382 :rule scope :premises (@p168)) 16.87/17.35 (step-pop @p383 :rule scope :premises (@p382)) 16.87/17.35 (step-pop @p384 :rule scope :premises (@p383)) 16.87/17.35 (step @p169 :rule process_scope :premises (@p384) :args (@t172)) 16.87/17.35 (step @p173 :rule implies_elim :premises (@p169)) 16.87/17.35 (step @p174 :rule resolution :premises (@p173 @p141) :args (true @t172)) 16.87/17.35 (step @p175 :rule not_and :premises (@p174)) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p176 :rule trust :premises (@p175 @p129 @p123) :args (@t173)) 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p177 :rule trust :premises () :args ((= (not @t99) @t98))) 16.87/17.35 (step @p178 :rule nary_cong :premises (@p63 @p177) :args (or)) 16.87/17.35 (step @p179 :rule cnf_or_neg :args (@t136 10)) 16.87/17.35 (step @p180 :rule eq_resolve :premises (@p179 @p178)) 16.87/17.35 (step @p181 :rule reordering :premises (@p180) :args ((or @t98 @t136))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p182 :rule trust :premises (@p181 @p61) :args (@t98)) 16.87/17.35 (step @p183 :rule refl :args (@t148)) 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p184 :rule trust :premises () :args ((= (not @t173) @t170))) 16.87/17.35 (step @p185 :rule refl :args (@t99)) 16.87/17.35 (step @p186 :rule nary_cong :premises (@p185 @p184 @p183) :args (or)) 16.87/17.35 (assume-push @p187 @t98) 16.87/17.35 (assume-push @p188 @t173) 16.87/17.35 (assume-push @p189 @t98) 16.87/17.35 (assume-push @p190 @t173) 16.87/17.35 (step @p191 :rule arith_trichotomy :premises (@p182 @p188)) 16.87/17.35 (step @p192 :rule int_tight_lb :premises (@p191)) 16.87/17.35 (step-pop @p385 :rule scope :premises (@p192)) 16.87/17.35 (step-pop @p386 :rule scope :premises (@p385)) 16.87/17.35 (step @p193 :rule process_scope :premises (@p386) :args (@t148)) 16.87/17.35 (step @p196 :rule and_intro :premises (@p182 @p188)) 16.87/17.35 (step @p197 :rule modus_ponens :premises (@p196 @p193)) 16.87/17.35 (step-pop @p387 :rule scope :premises (@p197)) 16.87/17.35 (step-pop @p388 :rule scope :premises (@p387)) 16.87/17.35 (step @p198 :rule process_scope :premises (@p388) :args (@t148)) 16.87/17.35 (step @p201 :rule implies_elim :premises (@p198)) 16.87/17.35 (step @p202 :rule cnf_and_neg :args (@t174)) 16.87/17.35 (step @p203 :rule resolution :premises (@p202 @p201) :args (true @t174)) 16.87/17.35 (step @p204 :rule eq_resolve :premises (@p203 @p186)) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p205 :rule trust :premises (@p204 @p182 @p176) :args (@t148)) 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p206 :rule trust :premises () :args ((= (not @t105) @t104))) 16.87/17.35 (step @p207 :rule nary_cong :premises (@p63 @p206) :args (or)) 16.87/17.35 (step @p208 :rule cnf_or_neg :args (@t136 7)) 16.87/17.35 (step @p209 :rule eq_resolve :premises (@p208 @p207)) 16.87/17.35 (step @p210 :rule reordering :premises (@p209) :args ((or @t104 @t136))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p211 :rule trust :premises (@p210 @p61) :args (@t104)) 16.87/17.35 (step @p212 :rule cnf_or_pos :args (@t159)) 16.87/17.35 (step @p213 :rule reordering :premises (@p212) :args ((or @t105 @t149 @t158 (not @t159)))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p214 :rule trust :premises (@p213 @p211 @p205 @p84) :args (@t158)) 16.87/17.35 (step @p215 :rule cnf_and_pos :args (@t158 3)) 16.87/17.35 (step @p216 :rule reordering :premises (@p215) :args ((or @t157 (not @t158)))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p217 :rule trust :premises (@p216 @p214) :args (@t157)) 16.87/17.35 (assume-push @p218 @t127) 16.87/17.35 (step @p219 :rule instantiate :premises (@p77) :args ((@list @t78 0))) 16.87/17.35 (step-pop @p389 :rule scope :premises (@p219)) 16.87/17.35 (step @p220 :rule process_scope :premises (@p389) :args ((or @t150 @t149 (and @t147 @t146 @t145 (or (not (>= (+ @t78 @t165) 1)) (not (>= (+ 0 @t92) 1)) (not (>= (+ @t144 (* -1 @t134)) 0))) @t143 @t142)))) 16.87/17.35 ; trust MACRO_SR_PRED_ELIM 16.87/17.35 (step @p222 :rule trust :premises (@p220) :args ((=> @t127 @t176))) 16.87/17.35 (step @p223 :rule implies_elim :premises (@p222)) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p224 :rule trust :premises (@p223 @p77) :args (@t176)) 16.87/17.35 (step @p225 :rule cnf_or_pos :args (@t176)) 16.87/17.35 (step @p226 :rule reordering :premises (@p225) :args ((or @t105 @t149 @t175 (not @t176)))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p227 :rule trust :premises (@p226 @p211 @p205 @p224) :args (@t175)) 16.87/17.35 (step @p228 :rule cnf_and_pos :args (@t175 2)) 16.87/17.35 (step @p229 :rule reordering :premises (@p228) :args ((or @t145 (not @t175)))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p230 :rule trust :premises (@p229 @p227) :args (@t145)) 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p231 :rule trust :premises () :args ((= (not @t114) @t113))) 16.87/17.35 (step @p232 :rule nary_cong :premises (@p63 @p231) :args (or)) 16.87/17.35 (step @p233 :rule cnf_or_neg :args (@t136 6)) 16.87/17.35 (step @p234 :rule eq_resolve :premises (@p233 @p232)) 16.87/17.35 (step @p235 :rule reordering :premises (@p234) :args ((or @t113 @t136))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p236 :rule trust :premises (@p235 @p61) :args (@t113)) 16.87/17.35 (assume-push @p237 @t113) 16.87/17.35 (step @p238 :rule instantiate :premises (@p236) :args ((@list @t74))) 16.87/17.35 (step-pop @p390 :rule scope :premises (@p238)) 16.87/17.35 (step @p239 :rule process_scope :premises (@p390) :args ((or @t178 (>= (+ @t74 @t110) 0) (>= (+ @t76 @t107) 1)))) 16.87/17.35 ; trust MACRO_SR_PRED_ELIM 16.87/17.35 (step @p241 :rule trust :premises (@p239) :args ((=> @t113 @t182))) 16.87/17.35 (step @p242 :rule implies_elim :premises (@p241)) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p243 :rule trust :premises (@p242 @p236) :args (@t182)) 16.87/17.35 (step @p244 :rule symm :premises (@p71)) 16.87/17.35 (step @p245 :rule refl :args (@t75)) 16.87/17.35 (step @p246 :rule cong :premises (@p153 @p153 @p245 @p244) :args (tptp.get)) 16.87/17.35 (step @p247 :rule cong :premises (@p246) :args (tptp.tb2t)) 16.87/17.35 (assume-push @p248 @t145) 16.87/17.35 (assume-push @p249 @t183) 16.87/17.35 (assume-push @p250 @t86) 16.87/17.35 (assume-push @p251 @t181) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p252 :rule trust :premises (@p247) :args ((= @t184 0))) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p253 :rule trust :premises (@p248) :args (@t186)) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p254 :rule trust :premises (@p251) :args ((< @t179 0))) 16.87/17.35 ; trust MACRO_ARITH_SCALE_SUM_UB 16.87/17.35 (step @p255 :rule trust :premises (@p254 @p253 @p252 @p68) :args ((< (+ @t179 @t189 @t184 @t188) (+ 0 @t187 0 @t165)))) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p256 false :rule trust :premises (@p255) :args (false)) 16.87/17.35 (step-pop @p391 :rule scope :premises (@p256)) 16.87/17.35 (step-pop @p392 :rule scope :premises (@p391)) 16.87/17.35 (step-pop @p393 :rule scope :premises (@p392)) 16.87/17.35 (step-pop @p394 :rule scope :premises (@p393)) 16.87/17.35 (step @p257 :rule process_scope :premises (@p394) :args (false)) 16.87/17.35 (step @p262 :rule not_and :premises (@p257)) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p263 :rule trust :premises (@p262) :args ((or @t191 @t190 @t87 @t180))) 16.87/17.35 (step @p264 :rule reordering :premises (@p263) :args ((or @t87 @t180 @t191 @t190))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p265 :rule trust :premises (@p264 @p68 @p230 @p247) :args (@t180)) 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p266 :rule trust :premises () :args ((= (not @t91) @t90))) 16.87/17.35 (step @p267 :rule nary_cong :premises (@p63 @p266) :args (or)) 16.87/17.35 (step @p268 :rule cnf_or_neg :args (@t136 13)) 16.87/17.35 (step @p269 :rule eq_resolve :premises (@p268 @p267)) 16.87/17.35 (step @p270 :rule reordering :premises (@p269) :args ((or @t90 @t136))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p271 :rule trust :premises (@p270 @p61) :args (@t90)) 16.87/17.35 (step @p272 :rule cnf_or_pos :args (@t182)) 16.87/17.35 (step @p273 :rule reordering :premises (@p272) :args ((or @t91 @t178 @t181 (not @t182)))) 16.87/17.35 ; trust MACRO_RESOLUTION_TRUST 16.87/17.35 (step @p274 :rule trust :premises (@p273 @p271 @p265 @p243) :args (@t178)) 16.87/17.35 (step @p275 :rule refl :args (@t192)) 16.87/17.35 (step @p276 :rule refl :args (@t191)) 16.87/17.35 ; trust MACRO_SR_PRED_INTRO 16.87/17.35 (step @p277 :rule trust :premises () :args ((= (not @t178) @t177))) 16.87/17.35 (step @p278 :rule refl :args ((not @t193))) 16.87/17.35 (step @p279 :rule refl :args (@t87)) 16.87/17.35 (step @p280 :rule nary_cong :premises (@p279 @p278 @p277 @p276 @p275) :args (or)) 16.87/17.35 (assume-push @p281 @t194) 16.87/17.35 (assume-push @p282 @t183) 16.87/17.35 (assume-push @p283 @t145) 16.87/17.35 (assume-push @p284 @t86) 16.87/17.35 (assume-push @p285 @t86) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p286 :rule trust :premises (@p281) :args ((= @t179 0))) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p287 :rule trust :premises (@p248) :args (@t186)) 16.87/17.35 ; trust MACRO_ARITH_SCALE_SUM_UB 16.87/17.35 (step @p288 :rule trust :premises (@p68 @p287 @p252 @p286) :args ((<= (+ @t188 @t189 @t184 @t179) (+ @t165 @t187 0 0)))) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p289 false :rule trust :premises (@p288) :args (false)) 16.87/17.35 (step-pop @p395 :rule scope :premises (@p289)) 16.87/17.35 (step @p290 :rule process_scope :premises (@p395) :args (false)) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p292 :rule trust :premises (@p290) :args ((< @t85 0))) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p293 :rule trust :premises (@p292) :args (@t87)) 16.87/17.35 (step @p294 false :rule contra :premises (@p68 @p293)) 16.87/17.35 (step-pop @p396 :rule scope :premises (@p294)) 16.87/17.35 (step-pop @p397 :rule scope :premises (@p396)) 16.87/17.35 (step-pop @p398 :rule scope :premises (@p397)) 16.87/17.35 (step-pop @p399 :rule scope :premises (@p398)) 16.87/17.35 (step @p295 :rule process_scope :premises (@p399) :args (false)) 16.87/17.35 (assume-push @p300 @t86) 16.87/17.35 (assume-push @p301 @t193) 16.87/17.35 (assume-push @p302 @t178) 16.87/17.35 (assume-push @p303 @t145) 16.87/17.35 (assume-push @p304 @t156) 16.87/17.35 (assume-push @p305 @t195) 16.87/17.35 (step @p306 :rule symm :premises (@p305)) 16.87/17.35 (step @p307 :rule cong :premises (@p306) :args (tptp.t2tb)) 16.87/17.35 (step @p308 :rule cong :premises (@p153 @p153 @p245 @p307) :args (tptp.get)) 16.87/17.35 (step @p309 :rule cong :premises (@p308) :args (tptp.tb2t)) 16.87/17.35 (step-pop @p400 :rule scope :premises (@p309)) 16.87/17.35 (step @p310 :rule process_scope :premises (@p400) :args (@t194)) 16.87/17.35 (assume-push @p312 @t178) 16.87/17.35 (assume-push @p313 @t156) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p314 :rule trust :premises (@p302) :args ((< @t155 1))) 16.87/17.35 (step @p315 :rule int_tight_ub :premises (@p314)) 16.87/17.35 (step @p316 :rule arith_trichotomy :premises (@p315 @p304)) 16.87/17.35 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.35 (step @p317 :rule trust :premises (@p316) :args (@t195)) 16.87/17.35 (step-pop @p401 :rule scope :premises (@p317)) 16.87/17.35 (step-pop @p402 :rule scope :premises (@p401)) 16.87/17.35 (step @p318 :rule process_scope :premises (@p402) :args (@t195)) 16.87/17.36 (step @p321 :rule and_intro :premises (@p302 @p304)) 16.87/17.36 (step @p322 :rule modus_ponens :premises (@p321 @p318)) 16.87/17.36 (step @p323 :rule modus_ponens :premises (@p322 @p310)) 16.87/17.36 (step @p324 :rule and_intro :premises (@p323 @p247 @p248 @p68)) 16.87/17.36 (step-pop @p403 :rule scope :premises (@p324)) 16.87/17.36 (step-pop @p404 :rule scope :premises (@p403)) 16.87/17.36 (step-pop @p405 :rule scope :premises (@p404)) 16.87/17.36 (step-pop @p406 :rule scope :premises (@p405)) 16.87/17.36 (step-pop @p407 :rule scope :premises (@p406)) 16.87/17.36 (step @p325 :rule process_scope :premises (@p407) :args (@t196)) 16.87/17.36 (step @p331 :rule implies_elim :premises (@p325)) 16.87/17.36 (step @p332 :rule resolution :premises (@p331 @p295) :args (true @t196)) 16.87/17.36 (step @p333 :rule not_and :premises (@p332)) 16.87/17.36 (step @p334 :rule eq_resolve :premises (@p333 @p280)) 16.87/17.36 ; trust MACRO_RESOLUTION_TRUST 16.87/17.36 (step @p335 :rule trust :premises (@p334 @p68 @p71 @p274 @p230) :args (@t192)) 16.87/17.36 ; trust MACRO_SR_PRED_INTRO 16.87/17.36 (step @p336 :rule trust :premises () :args ((= (not @t94) @t93))) 16.87/17.36 (step @p337 :rule nary_cong :premises (@p63 @p336) :args (or)) 16.87/17.36 (step @p338 :rule cnf_or_neg :args (@t136 12)) 16.87/17.36 (step @p339 :rule eq_resolve :premises (@p338 @p337)) 16.87/17.36 (step @p340 :rule reordering :premises (@p339) :args ((or @t93 @t136))) 16.87/17.36 ; trust MACRO_RESOLUTION_TRUST 16.87/17.36 (step @p341 :rule trust :premises (@p340 @p61) :args (@t93)) 16.87/17.36 (step @p342 :rule cnf_or_pos :args (@t157)) 16.87/17.36 (step @p343 :rule reordering :premises (@p342) :args ((or @t94 @t156 @t154 (not @t157)))) 16.87/17.36 ; trust MACRO_RESOLUTION_TRUST 16.87/17.36 (step @p344 :rule trust :premises (@p343 @p341 @p335 @p217) :args (@t154)) 16.87/17.36 (assume-push @p345 @t86) 16.87/17.36 (assume-push @p346 @t183) 16.87/17.36 (assume-push @p347 @t154) 16.87/17.36 (assume-push @p348 @t154) 16.87/17.36 ; trust MACRO_ARITH_SCALE_SUM_UB 16.87/17.36 (step @p349 :rule trust :premises (@p347 @p252 @p68) :args ((<= (+ (* -1 @t153) @t184 @t188) (+ @t187 0 @t165)))) 16.87/17.36 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.36 (step @p350 false :rule trust :premises (@p349) :args (false)) 16.87/17.36 (step-pop @p408 :rule scope :premises (@p350)) 16.87/17.36 (step @p351 :rule process_scope :premises (@p408) :args (false)) 16.87/17.36 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.36 (step @p353 :rule trust :premises (@p351) :args ((< @t153 1))) 16.87/17.36 ; trust MACRO_SR_PRED_TRANSFORM 16.87/17.36 (step @p354 :rule trust :premises (@p353) :args ((not @t154))) 16.87/17.36 (step @p355 false :rule contra :premises (@p347 @p354)) 16.87/17.36 (step-pop @p409 :rule scope :premises (@p355)) 16.87/17.36 (step-pop @p410 :rule scope :premises (@p409)) 16.87/17.36 (step-pop @p411 :rule scope :premises (@p410)) 16.87/17.36 (step @p356 :rule process_scope :premises (@p411) :args (false)) 16.87/17.36 (assume-push @p360 @t86) 16.87/17.36 (assume-push @p361 @t193) 16.87/17.36 (assume-push @p362 @t154) 16.87/17.36 (step @p363 :rule and_intro :premises (@p68 @p247 @p347)) 16.87/17.36 (step-pop @p412 :rule scope :premises (@p363)) 16.87/17.36 (step-pop @p413 :rule scope :premises (@p412)) 16.87/17.36 (step-pop @p414 :rule scope :premises (@p413)) 16.87/17.36 (step @p364 :rule process_scope :premises (@p414) :args (@t197)) 16.87/17.36 (step @p368 :rule implies_elim :premises (@p364)) 16.87/17.36 (step @p369 :rule resolution :premises (@p368 @p356) :args (true @t197)) 16.87/17.36 (step @p370 :rule not_and :premises (@p369)) 16.87/17.36 ; trust MACRO_RESOLUTION_TRUST 16.87/17.36 (step @p371 false :rule trust :premises (@p370 @p344 @p71 @p68) :args (false)) 16.87/17.36 16.87/17.36 % SZS output end Proof for /export/starexec/sandbox/tmp/tmp.SVtQqHNwNq/cvc5---1.0.5_15495.smt2 16.87/17.36 % cvc5---1.0.5 exiting 16.87/17.36 % cvc5---1.0.5 exiting 16.87/17.36 EOF