↑ Up

cvc5---1.3.4.THM-Prf.s

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

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

% Result   : Theorem 45.56s 45.84s
% Output   : Proof 45.56s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : DAT030_1 : TPTP v9.2.1. Released v5.0.0.
% 0.13/0.13  % Command  : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM
% 0.18/0.34  % Computer : n015.cluster.edu
% 0.18/0.34  % Model    : x86_64 x86_64
% 0.18/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.18/0.34  % Memory   : 8042.1875MB
% 0.18/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.18/0.34  % CPULimit : 300
% 0.18/0.34  % WCLimit  : 300
% 0.18/0.34  % DateTime : Mon Jun  1 22:26:19 EDT 2026
% 0.18/0.34  % CPUTime  : 
% 0.28/0.50  %----Proving TF0_ARI
% 45.56/45.84  --- Run --finite-model-find --decision=internal at 45...
% 45.56/45.84  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 60...
% 45.56/45.84  % SZS status Theorem
% 45.56/45.84  % SZS output start Proof
% 45.56/45.84  (
% 45.56/45.84  (declare-sort tptp.collection 0)
% 45.56/45.84  (declare-const tptp.remove (-> Int tptp.collection tptp.collection))
% 45.56/45.84  (declare-const tptp.add (-> Int tptp.collection tptp.collection))
% 45.56/45.84  (declare-const tptp.in (-> Int tptp.collection Bool))
% 45.56/45.84  (declare-const tptp.empty tptp.collection)
% 45.56/45.84  (define @t1 () (@var "U" Int))
% 45.56/45.84  (define @t2 () (@var "W" tptp.collection))
% 45.56/45.84  (define @t3 () (@var "V" Int))
% 45.56/45.84  (define @t4 () (@var "Y" tptp.collection))
% 45.56/45.84  (define @t5 () (@var "X" Int))
% 45.56/45.84  (define @t6 () (@var "X1" tptp.collection))
% 45.56/45.84  (define @t7 () (@var "X2" Int))
% 45.56/45.84  (define @t8 () (@var "Z" Int))
% 45.56/45.84  (define @t9 () (@var "X4" tptp.collection))
% 45.56/45.84  (define @t10 () (@var "X5" Int))
% 45.56/45.84  (define @t11 () (@var "X3" Int))
% 45.56/45.84  (define @t12 () (@var "X1" Int))
% 45.56/45.84  (define @t13 () (@var "U" tptp.collection))
% 45.56/45.84  (define @t14 () (tptp.in @t12 @t13))
% 45.56/45.84  (define @t15 () (=> @t14 (> @t12 1)))
% 45.56/45.84  (define @t16 () (@list @t12))
% 45.56/45.84  (define @t17 () (forall @t16 @t15))
% 45.56/45.84  (define @t18 () (@var "Y" Int))
% 45.56/45.84  (define @t19 () (+ @t18 @t8))
% 45.56/45.84  (define @t20 () (= @t5 @t19))
% 45.56/45.84  (define @t21 () (@var "V" tptp.collection))
% 45.56/45.84  (define @t22 () (tptp.in @t8 @t21))
% 45.56/45.84  (define @t23 () (tptp.in @t18 @t21))
% 45.56/45.84  (define @t24 () (and @t23 @t22 @t20))
% 45.56/45.84  (define @t25 () (@list @t18 @t8))
% 45.56/45.84  (define @t26 () (exists @t25 @t24))
% 45.56/45.84  (define @t27 () (tptp.in @t5 @t13))
% 45.56/45.84  (define @t28 () (=> @t27 @t26))
% 45.56/45.84  (define @t29 () (@list @t5))
% 45.56/45.84  (define @t30 () (forall @t29 @t28))
% 45.56/45.84  (define @t31 () (@var "W" Int))
% 45.56/45.84  (define @t32 () (tptp.in @t31 @t21))
% 45.56/45.84  (define @t33 () (=> @t32 (> @t31 0)))
% 45.56/45.84  (define @t34 () (@list @t31))
% 45.56/45.84  (define @t35 () (forall @t34 @t33))
% 45.56/45.84  (define @t36 () (and @t35 @t30))
% 45.56/45.84  (define @t37 () (=> @t36 @t17))
% 45.56/45.84  (define @t38 () (@list @t13 @t21))
% 45.56/45.84  (define @t39 () (forall @t38 @t37))
% 45.56/45.84  (define @t40 () (not @t39))
% 45.56/45.84  (define @t41 () (@var "BOUND_VARIABLE_7549" Int))
% 45.56/45.84  (define @t42 () (>= @t41 2))
% 45.56/45.84  (define @t43 () (not (tptp.in @t41 @t13)))
% 45.56/45.84  (define @t44 () (* -1 @t18))
% 45.56/45.84  (define @t45 () (+ @t5 @t44))
% 45.56/45.84  (define @t46 () (not (tptp.in @t45 @t21)))
% 45.56/45.84  (define @t47 () (not @t23))
% 45.56/45.84  (define @t48 () (or @t47 @t46))
% 45.56/45.84  (define @t49 () (@list @t18))
% 45.56/45.84  (define @t50 () (not (forall @t49 @t48)))
% 45.56/45.84  (define @t51 () (forall @t29 (or (not @t27) @t50)))
% 45.56/45.84  (define @t52 () (not @t51))
% 45.56/45.84  (define @t53 () (>= @t31 1))
% 45.56/45.84  (define @t54 () (forall @t34 (or (not @t32) @t53)))
% 45.56/45.84  (define @t55 () (not @t54))
% 45.56/45.84  (define @t56 () (or @t55 @t52 @t43 @t42))
% 45.56/45.84  (define @t57 () (or @t43 @t42))
% 45.56/45.84  (define @t58 () (or @t55 @t52 @t57))
% 45.56/45.84  (define @t59 () (@list @t13 @t21 @t41))
% 45.56/45.84  (define @t60 () (forall @t59 @t58))
% 45.56/45.84  (define @t61 () (@list @t41))
% 45.56/45.84  (define @t62 () (forall @t61 @t58))
% 45.56/45.84  (define @t63 () (forall @t61 @t57))
% 45.56/45.84  (define @t64 () (or @t55 @t52 @t63))
% 45.56/45.84  (define @t65 () (>= @t12 2))
% 45.56/45.84  (define @t66 () (forall @t16 (or (not @t14) @t65)))
% 45.56/45.84  (define @t67 () (or @t55 @t52 @t66))
% 45.56/45.84  (define @t68 () (and @t54 @t51))
% 45.56/45.84  (define @t69 () (+ 1 1))
% 45.56/45.84  (define @t70 () (>= @t12 @t69))
% 45.56/45.84  (define @t71 () (+ @t44 @t18 @t5))
% 45.56/45.84  (define @t72 () (+ @t45 @t18))
% 45.56/45.84  (define @t73 () (= @t5 @t72))
% 45.56/45.84  (define @t74 () (not @t73))
% 45.56/45.84  (define @t75 () (or @t47 @t46 @t74))
% 45.56/45.84  (define @t76 () (+ @t8 @t18))
% 45.56/45.84  (define @t77 () (= @t5 @t76))
% 45.56/45.84  (define @t78 () (not @t77))
% 45.56/45.84  (define @t79 () (not @t22))
% 45.56/45.84  (define @t80 () (= @t8 @t45))
% 45.56/45.84  (define @t81 () (@list @t8))
% 45.56/45.84  (define @t82 () (or @t78 @t47 @t79 @t78))
% 45.56/45.84  (define @t83 () (or @t47 @t79 @t78))
% 45.56/45.84  (define @t84 () (forall @t81 @t83))
% 45.56/45.84  (define @t85 () (forall @t49 @t84))
% 45.56/45.84  (define @t86 () (and @t23 @t22 @t77))
% 45.56/45.84  (define @t87 () (forall @t25 (not @t86)))
% 45.56/45.84  (define @t88 () (not @t87))
% 45.56/45.84  (define @t89 () (+ 0 1))
% 45.56/45.84  (define @t90 () (>= @t31 @t89))
% 45.56/45.84  (define @t91 () (forall @t59 @t56))
% 45.56/45.84  (define @t92 () (@quantifiers_skolemize @t91 2))
% 45.56/45.84  (define @t93 () (>= @t92 2))
% 45.56/45.84  (define @t94 () (@quantifiers_skolemize @t91 0))
% 45.56/45.84  (define @t95 () (tptp.in @t92 @t94))
% 45.56/45.84  (define @t96 () (not @t95))
% 45.56/45.84  (define @t97 () (@quantifiers_skolemize @t91 1))
% 45.56/45.84  (define @t98 () (not (tptp.in @t18 @t97)))
% 45.56/45.84  (define @t99 () (forall @t29 (or (not (tptp.in @t5 @t94)) (not (forall @t49 (or @t98 (not (tptp.in @t45 @t97))))))))
% 45.56/45.84  (define @t100 () (not @t99))
% 45.56/45.84  (define @t101 () (forall @t34 (or (not (tptp.in @t31 @t97)) @t53)))
% 45.56/45.84  (define @t102 () (not @t101))
% 45.56/45.84  (define @t103 () (or @t102 @t100 @t96 @t93))
% 45.56/45.84  (define @t104 () (not @t93))
% 45.56/45.84  (define @t105 () (@list true))
% 45.56/45.84  (define @t106 () (@list @t103))
% 45.56/45.84  (define @t107 () (+ @t44 @t92))
% 45.56/45.84  (define @t108 () (forall @t49 (or @t98 (not (tptp.in @t107 @t97)))))
% 45.56/45.84  (define @t109 () (@quantifiers_skolemize @t108 0))
% 45.56/45.84  (define @t110 () (+ @t92 @t44))
% 45.56/45.84  (define @t111 () (tptp.in @t110 @t97))
% 45.56/45.84  (define @t112 () (not @t111))
% 45.56/45.84  (define @t113 () (or @t98 @t112))
% 45.56/45.84  (define @t114 () (forall @t49 @t113))
% 45.56/45.84  (define @t115 () (not @t114))
% 45.56/45.84  (define @t116 () (or @t96 @t115))
% 45.56/45.84  (define @t117 () (not @t108))
% 45.56/45.84  (define @t118 () (or @t96 @t117))
% 45.56/45.84  (define @t119 () (@list false false))
% 45.56/45.84  (define @t120 () (* -1 @t109))
% 45.56/45.84  (define @t121 () (+ @t92 @t120))
% 45.56/45.84  (define @t122 () (tptp.in @t121 @t97))
% 45.56/45.84  (define @t123 () (not @t122))
% 45.56/45.84  (define @t124 () (tptp.in @t109 @t97))
% 45.56/45.84  (define @t125 () (not @t124))
% 45.56/45.84  (define @t126 () (or @t125 @t123))
% 45.56/45.84  (define @t127 () (not @t126))
% 45.56/45.84  (define @t128 () (+ @t120 @t92))
% 45.56/45.84  (define @t129 () (tptp.in @t128 @t97))
% 45.56/45.84  (define @t130 () (not @t129))
% 45.56/45.84  (define @t131 () (or @t125 @t130))
% 45.56/45.84  (define @t132 () (not @t131))
% 45.56/45.84  (define @t133 () (@list @t126))
% 45.56/45.84  (define @t134 () (>= @t109 1))
% 45.56/45.84  (define @t135 () (or @t125 @t134))
% 45.56/45.84  (define @t136 () (>= @t121 1))
% 45.56/45.84  (define @t137 () (or @t123 @t136))
% 45.56/45.84  (define @t138 () (not @t136))
% 45.56/45.84  (define @t139 () (not @t134))
% 45.56/45.84  (define @t140 () (< @t92 2))
% 45.56/45.84  (define @t141 () (* -1 1))
% 45.56/45.84  (define @t142 () (+ 2 @t141 @t141))
% 45.56/45.84  (define @t143 () (+ (* -1 @t92) @t109))
% 45.56/45.84  (define @t144 () (* -1 @t121))
% 45.56/45.84  (define @t145 () (+ @t92 @t120 @t144))
% 45.56/45.84  (define @t146 () (>= @t145 @t142))
% 45.56/45.84  (define @t147 () (and @t136 @t134 @t104))
% 45.56/45.84  (assume @p1 (forall (@list @t1) (not (tptp.in @t1 tptp.empty))))
% 45.56/45.84  (assume @p2 (forall (@list @t3 @t2) (tptp.in @t3 (tptp.add @t3 @t2))))
% 45.56/45.84  (assume @p3 (forall (@list @t5 @t4) (not (tptp.in @t5 (tptp.remove @t5 @t4)))))
% 45.56/45.84  (assume @p4 (forall (@list @t8 @t6 @t7) (= (or (tptp.in @t8 @t6) (= @t8 @t7)) (tptp.in @t8 (tptp.add @t7 @t6)))))
% 45.56/45.84  (assume @p5 (forall (@list @t11 @t9 @t10) (= (and (tptp.in @t11 @t9) (not (= @t11 @t10))) (tptp.in @t11 (tptp.remove @t10 @t9)))))
% 45.56/45.84  (assume @p6 @t40)
% 45.56/45.84  (assume @p7 true)
% 45.56/45.84  (step @p8 :rule aci_norm :args ((= @t58 @t56)))
% 45.56/45.84  (step @p9 :rule cong :premises (@p8) :args (@t60))
% 45.56/45.84  (step @p10 :rule quant-merge-prenex :args ((= (forall @t38 @t62) @t60)))
% 45.56/45.84  (step @p11 :rule alpha_equiv :args (@t63 (@list @t41) (@list @t12)))
% 45.56/45.84  (step @p12 :rule refl :args (@t52))
% 45.56/45.84  (step @p13 :rule refl :args (@t55))
% 45.56/45.84  (step @p14 :rule nary_cong :premises (@p13 @p12 @p11) :args (@t64))
% 45.56/45.84  (step @p15 :rule quant-miniscope-or :args ((= @t62 @t64)))
% 45.56/45.84  (step @p16 :rule trans :premises (@p15 @p14))
% 45.56/45.84  (step @p17 :rule symm :premises (@p16))
% 45.56/45.84  (step @p18 :rule cong :premises (@p17) :args ((forall @t38 @t67)))
% 45.56/45.84  (step @p19 :rule trans :premises (@p18 @p10))
% 45.56/45.84  (step @p20 :rule trans :premises (@p19 @p9))
% 45.56/45.84  (step @p21 :rule aci_norm :args ((= (or (or @t55 @t52) @t66) @t67)))
% 45.56/45.84  (step @p22 :rule refl :args (@t66))
% 45.56/45.84  (step @p23 :rule bool-and-de-morgan :args (@t54 @t51 true))
% 45.56/45.84  (step @p24 :rule nary_cong :premises (@p23 @p22) :args ((or (not @t68) @t66)))
% 45.56/45.84  (step @p25 :rule trans :premises (@p24 @p21))
% 45.56/45.84  (step @p26 :rule bool-impl-elim :args (@t68 @t66))
% 45.56/45.84  (step @p27 :rule trans :premises (@p26 @p25))
% 45.56/45.84  (step @p28 :rule cong :premises (@p27) :args ((forall @t38 (=> @t68 @t66))))
% 45.56/45.84  (step @p29 :rule trans :premises (@p28 @p20))
% 45.56/45.84  (step @p30 :rule bool-impl-elim :args (@t14 @t65))
% 45.56/45.84  (step @p31 :rule cong :premises (@p30) :args ((forall @t16 (=> @t14 @t65))))
% 45.56/45.84  (step @p32 :rule bool-double-not-elim :args (@t65))
% 45.56/45.84  (step @p33 :rule evaluate :args (@t69))
% 45.56/45.84  (step @p34 :rule refl :args (@t12))
% 45.56/45.84  (step @p35 :rule cong :premises (@p34 @p33) :args (@t70))
% 45.56/45.84  (step @p36 :rule cong :premises (@p35) :args ((not @t70)))
% 45.56/45.84  (step @p37 :rule arith-leq-norm :args (@t12 1))
% 45.56/45.84  (step @p38 :rule trans :premises (@p37 @p36))
% 45.56/45.84  (step @p39 :rule cong :premises (@p38) :args ((not (<= @t12 1))))
% 45.56/45.84  (step @p40 :rule trans :premises (@p39 @p32))
% 45.56/45.84  (step @p41 :rule arith-elim-leq :args (@t12 1))
% 45.56/45.84  (step @p42 :rule symm :premises (@p41))
% 45.56/45.84  (step @p43 :rule cong :premises (@p42) :args ((not (>= 1 @t12))))
% 45.56/45.84  (step @p44 :rule arith-elim-gt :args (@t12 1))
% 45.56/45.84  (step @p45 :rule trans :premises (@p44 @p43))
% 45.56/45.84  (step @p46 :rule trans :premises (@p45 @p40))
% 45.56/45.84  (step @p47 :rule refl :args (@t14))
% 45.56/45.84  (step @p48 :rule cong :premises (@p47 @p46) :args (@t15))
% 45.56/45.84  (step @p49 :rule cong :premises (@p48) :args (@t17))
% 45.56/45.84  (step @p50 :rule trans :premises (@p49 @p31))
% 45.56/45.84  (step @p51 :rule bool-impl-elim :args (@t27 @t50))
% 45.56/45.84  (step @p52 :rule cong :premises (@p51) :args ((forall @t29 (=> @t27 @t50))))
% 45.56/45.84  (step @p53 :rule aci_norm :args ((= (or @t47 @t46 false) @t48)))
% 45.56/45.84  (step @p54 :rule evaluate :args ((not true)))
% 45.56/45.84  (step @p55 :rule eq-refl :args (@t5))
% 45.56/45.84  (step @p56 :rule arith_poly_norm :args ((= @t71 @t5)))
% 45.56/45.84  (step @p57 :rule arith_poly_norm :args ((= @t72 @t71)))
% 45.56/45.84  (step @p58 :rule trans :premises (@p57 @p56))
% 45.56/45.84  (step @p59 :rule refl :args (@t5))
% 45.56/45.84  (step @p60 :rule cong :premises (@p59 @p58) :args (@t73))
% 45.56/45.84  (step @p61 :rule trans :premises (@p60 @p55))
% 45.56/45.84  (step @p62 :rule cong :premises (@p61) :args (@t74))
% 45.56/45.84  (step @p63 :rule trans :premises (@p62 @p54))
% 45.56/45.84  (step @p64 :rule refl :args (@t46))
% 45.56/45.84  (step @p65 :rule refl :args (@t47))
% 45.56/45.84  (step @p66 :rule nary_cong :premises (@p65 @p64 @p63) :args (@t75))
% 45.56/45.84  (step @p67 :rule trans :premises (@p66 @p53))
% 45.56/45.84  (step @p68 :rule cong :premises (@p67) :args ((forall @t49 @t75)))
% 45.56/45.84  (step @p69 :rule quant-var-elim-eq :args ((= (forall @t81 (or (not @t80) @t47 @t79 @t78)) @t75)))
% 45.56/45.84  (step @p70 :rule refl :args (@t78))
% 45.56/45.84  (step @p71 :rule refl :args (@t79))
% 45.56/45.84  (step @p72 :rule refl :args (@t47))
% 45.56/45.84  (step @p73 :rule arith_poly_norm :args ((= (* -1 (- @t5 @t76)) (* 1 (- @t8 @t45)))))
% 45.56/45.84  (step @p74 :rule arith_poly_norm_rel :premises (@p73) :args ((= @t77 @t80)))
% 45.56/45.84  (step @p75 :rule cong :premises (@p74) :args (@t78))
% 45.56/45.84  (step @p76 :rule nary_cong :premises (@p75 @p72 @p71 @p70) :args (@t82))
% 45.56/45.84  (step @p77 :rule aci_norm :args ((= @t83 @t82)))
% 45.56/45.84  (step @p78 :rule trans :premises (@p77 @p76))
% 45.56/45.84  (step @p79 :rule cong :premises (@p78) :args (@t84))
% 45.56/45.84  (step @p80 :rule trans :premises (@p79 @p69))
% 45.56/45.84  (step @p81 :rule cong :premises (@p80) :args (@t85))
% 45.56/45.84  (step @p82 :rule quant-merge-prenex :args ((= @t85 (forall @t25 @t83))))
% 45.56/45.84  (step @p83 :rule symm :premises (@p82))
% 45.56/45.84  (step @p84 :rule trans :premises (@p83 @p81))
% 45.56/45.84  (step @p85 :rule trans :premises (@p84 @p68))
% 45.56/45.84  (step @p86 :rule aci_norm :args ((= (or @t47 (or @t79 @t78)) @t83)))
% 45.56/45.84  (step @p87 :rule bool-and-de-morgan :args (@t22 @t77 true))
% 45.56/45.84  (step @p88 :rule nary_cong :premises (@p72 @p87) :args ((or @t47 (not (and @t22 @t77)))))
% 45.56/45.84  (step @p89 :rule bool-and-de-morgan :args (@t23 @t22 (and @t77)))
% 45.56/45.84  (step @p90 :rule trans :premises (@p89 @p88))
% 45.56/45.84  (step @p91 :rule trans :premises (@p90 @p86))
% 45.56/45.84  (step @p92 :rule cong :premises (@p91) :args (@t87))
% 45.56/45.84  (step @p93 :rule trans :premises (@p92 @p85))
% 45.56/45.84  (step @p94 :rule cong :premises (@p93) :args (@t88))
% 45.56/45.84  (step @p95 :rule exists-elim :args ((= (exists @t25 @t86) @t88)))
% 45.56/45.84  (step @p96 :rule trans :premises (@p95 @p94))
% 45.56/45.84  (step @p97 :rule arith_poly_norm :args ((= @t19 @t76)))
% 45.56/45.84  (step @p98 :rule cong :premises (@p59 @p97) :args (@t20))
% 45.56/45.84  (step @p99 :rule refl :args (@t22))
% 45.56/45.84  (step @p100 :rule refl :args (@t23))
% 45.56/45.84  (step @p101 :rule nary_cong :premises (@p100 @p99 @p98) :args (@t24))
% 45.56/45.84  (step @p102 :rule cong :premises (@p101) :args (@t26))
% 45.56/45.84  (step @p103 :rule trans :premises (@p102 @p96))
% 45.56/45.84  (step @p104 :rule refl :args (@t27))
% 45.56/45.84  (step @p105 :rule cong :premises (@p104 @p103) :args (@t28))
% 45.56/45.84  (step @p106 :rule cong :premises (@p105) :args (@t30))
% 45.56/45.84  (step @p107 :rule trans :premises (@p106 @p52))
% 45.56/45.84  (step @p108 :rule bool-impl-elim :args (@t32 @t53))
% 45.56/45.84  (step @p109 :rule cong :premises (@p108) :args ((forall @t34 (=> @t32 @t53))))
% 45.56/45.84  (step @p110 :rule bool-double-not-elim :args (@t53))
% 45.56/45.84  (step @p111 :rule evaluate :args (@t89))
% 45.56/45.84  (step @p112 :rule refl :args (@t31))
% 45.56/45.84  (step @p113 :rule cong :premises (@p112 @p111) :args (@t90))
% 45.56/45.84  (step @p114 :rule cong :premises (@p113) :args ((not @t90)))
% 45.56/45.84  (step @p115 :rule arith-leq-norm :args (@t31 0))
% 45.56/45.84  (step @p116 :rule trans :premises (@p115 @p114))
% 45.56/45.84  (step @p117 :rule cong :premises (@p116) :args ((not (<= @t31 0))))
% 45.56/45.84  (step @p118 :rule trans :premises (@p117 @p110))
% 45.56/45.84  (step @p119 :rule arith-elim-leq :args (@t31 0))
% 45.56/45.84  (step @p120 :rule symm :premises (@p119))
% 45.56/45.84  (step @p121 :rule cong :premises (@p120) :args ((not (>= 0 @t31))))
% 45.56/45.84  (step @p122 :rule arith-elim-gt :args (@t31 0))
% 45.56/45.84  (step @p123 :rule trans :premises (@p122 @p121))
% 45.56/45.84  (step @p124 :rule trans :premises (@p123 @p118))
% 45.56/45.84  (step @p125 :rule refl :args (@t32))
% 45.56/45.84  (step @p126 :rule cong :premises (@p125 @p124) :args (@t33))
% 45.56/45.84  (step @p127 :rule cong :premises (@p126) :args (@t35))
% 45.56/45.84  (step @p128 :rule trans :premises (@p127 @p109))
% 45.56/45.84  (step @p129 :rule nary_cong :premises (@p128 @p107) :args (@t36))
% 45.56/45.84  (step @p130 :rule cong :premises (@p129 @p50) :args (@t37))
% 45.56/45.84  (step @p131 :rule cong :premises (@p130) :args (@t39))
% 45.56/45.84  (step @p132 :rule trans :premises (@p131 @p29))
% 45.56/45.84  (step @p133 :rule cong :premises (@p132) :args (@t40))
% 45.56/45.84  (step @p134 :rule eq_resolve :premises (@p6 @p133))
% 45.56/45.84  (step @p135 :rule skolemize :premises (@p134))
% 45.56/45.84  (step @p136 :rule cnf_or_neg :args (@t103 3))
% 45.56/45.84  (step @p137 :rule chain_m_resolution :premises (@p136 @p135) :args (@t104 @t105 @t106))
% 45.56/45.84  (step @p138 :rule bool-double-not-elim :args (@t101))
% 45.56/45.84  (step @p139 :rule refl :args (@t103))
% 45.56/45.84  (step @p140 :rule nary_cong :premises (@p139 @p138) :args ((or @t103 (not @t102))))
% 45.56/45.84  (step @p141 :rule cnf_or_neg :args (@t103 0))
% 45.56/45.84  (step @p142 :rule eq_resolve :premises (@p141 @p140))
% 45.56/45.84  (step @p143 :rule reordering :premises (@p142) :args ((or @t101 @t103)))
% 45.56/45.84  (step @p144 :rule chain_m_resolution :premises (@p143 @p135) :args (@t101 @t105 @t106))
% 45.56/45.84  (step @p145 :rule instantiate :premises (@p144) :args ((@list @t109)))
% 45.56/45.84  (step @p146 :rule bool-double-not-elim :args (@t99))
% 45.56/45.84  (step @p147 :rule nary_cong :premises (@p139 @p146) :args ((or @t103 (not @t100))))
% 45.56/45.84  (step @p148 :rule cnf_or_neg :args (@t103 1))
% 45.56/45.84  (step @p149 :rule eq_resolve :premises (@p148 @p147))
% 45.56/45.84  (step @p150 :rule reordering :premises (@p149) :args ((or @t99 @t103)))
% 45.56/45.84  (step @p151 :rule chain_m_resolution :premises (@p150 @p135) :args (@t99 @t105 @t106))
% 45.56/45.84  (step @p152 :rule refl :args (@t97))
% 45.56/45.84  (step @p153 :rule arith_poly_norm :args ((= @t110 @t107)))
% 45.56/45.84  (step @p154 :rule cong :premises (@p153 @p152) :args (@t111))
% 45.56/45.84  (step @p155 :rule cong :premises (@p154) :args (@t112))
% 45.56/45.84  (step @p156 :rule refl :args (@t98))
% 45.56/45.84  (step @p157 :rule nary_cong :premises (@p156 @p155) :args (@t113))
% 45.56/45.84  (step @p158 :rule cong :premises (@p157) :args (@t114))
% 45.56/45.84  (step @p159 :rule cong :premises (@p158) :args (@t115))
% 45.56/45.84  (step @p160 :rule refl :args (@t96))
% 45.56/45.84  (step @p161 :rule nary_cong :premises (@p160 @p159) :args (@t116))
% 45.56/45.84  (step @p162 :rule refl :args (@t99))
% 45.56/45.84  (step @p163 :rule cong :premises (@p162 @p161) :args ((=> @t99 @t116)))
% 45.56/45.84  (assume-push @p285 @t99)
% 45.56/45.84  (step @p165 :rule instantiate :premises (@p151) :args ((@list @t92)))
% 45.56/45.84  (step-pop @p286 :rule scope :premises (@p165))
% 45.56/45.84  (step @p166 :rule process_scope :premises (@p286) :args (@t116))
% 45.56/45.84  (step @p168 :rule eq_resolve :premises (@p166 @p163))
% 45.56/45.84  (step @p169 :rule implies_elim :premises (@p168))
% 45.56/45.84  (step @p170 :rule chain_m_resolution :premises (@p169 @p151) :args (@t118 (@list false) (@list @t99)))
% 45.56/45.84  (step @p171 :rule bool-double-not-elim :args (@t95))
% 45.56/45.84  (step @p172 :rule nary_cong :premises (@p139 @p171) :args ((or @t103 (not @t96))))
% 45.56/45.84  (step @p173 :rule cnf_or_neg :args (@t103 2))
% 45.56/45.84  (step @p174 :rule eq_resolve :premises (@p173 @p172))
% 45.56/45.84  (step @p175 :rule reordering :premises (@p174) :args ((or @t95 @t103)))
% 45.56/45.84  (step @p176 :rule chain_m_resolution :premises (@p175 @p135) :args (@t95 @t105 @t106))
% 45.56/45.84  (step @p177 :rule cnf_or_pos :args (@t118))
% 45.56/45.84  (step @p178 :rule reordering :premises (@p177) :args ((or @t96 @t117 (not @t118))))
% 45.56/45.84  (step @p179 :rule chain_m_resolution :premises (@p178 @p176 @p170) :args (@t117 @t119 (@list @t95 @t118)))
% 45.56/45.84  (step @p180 :rule refl :args (@t127))
% 45.56/45.84  (step @p181 :rule bool-double-not-elim :args (@t108))
% 45.56/45.84  (step @p182 :rule nary_cong :premises (@p181 @p180) :args ((or (not @t117) @t127)))
% 45.56/45.84  (step @p183 :rule arith_poly_norm :args ((= @t128 @t121)))
% 45.56/45.84  (step @p184 :rule cong :premises (@p183 @p152) :args (@t129))
% 45.56/45.84  (step @p185 :rule cong :premises (@p184) :args (@t130))
% 45.56/45.84  (step @p186 :rule refl :args (@t125))
% 45.56/45.84  (step @p187 :rule nary_cong :premises (@p186 @p185) :args (@t131))
% 45.56/45.84  (step @p188 :rule cong :premises (@p187) :args (@t132))
% 45.56/45.84  (step @p189 :rule refl :args (@t117))
% 45.56/45.84  (step @p190 :rule cong :premises (@p189 @p188) :args ((=> @t117 @t132)))
% 45.56/45.84  (assume-push @p287 @t117)
% 45.56/45.84  (step @p192 :rule skolemize :premises (@p179))
% 45.56/45.84  (step-pop @p288 :rule scope :premises (@p192))
% 45.56/45.84  (step @p193 :rule process_scope :premises (@p288) :args (@t132))
% 45.56/45.84  (step @p195 :rule eq_resolve :premises (@p193 @p190))
% 45.56/45.84  (step @p196 :rule implies_elim :premises (@p195))
% 45.56/45.84  (step @p197 :rule eq_resolve :premises (@p196 @p182))
% 45.56/45.84  (step @p198 :rule chain_m_resolution :premises (@p197 @p179) :args (@t127 @t105 (@list @t108)))
% 45.56/45.84  (step @p199 :rule bool-double-not-elim :args (@t124))
% 45.56/45.84  (step @p200 :rule refl :args (@t126))
% 45.56/45.84  (step @p201 :rule nary_cong :premises (@p200 @p199) :args ((or @t126 (not @t125))))
% 45.56/45.84  (step @p202 :rule cnf_or_neg :args (@t126 0))
% 45.56/45.84  (step @p203 :rule eq_resolve :premises (@p202 @p201))
% 45.56/45.84  (step @p204 :rule reordering :premises (@p203) :args ((or @t124 @t126)))
% 45.56/45.84  (step @p205 :rule chain_m_resolution :premises (@p204 @p198) :args (@t124 @t105 @t133))
% 45.56/45.84  (step @p206 :rule cnf_or_pos :args (@t135))
% 45.56/45.84  (step @p207 :rule reordering :premises (@p206) :args ((or @t125 @t134 (not @t135))))
% 45.56/45.84  (step @p208 :rule chain_m_resolution :premises (@p207 @p205 @p145) :args (@t134 @t119 (@list @t124 @t135)))
% 45.56/45.84  (step @p209 :rule instantiate :premises (@p144) :args ((@list @t121)))
% 45.56/45.84  (step @p210 :rule bool-double-not-elim :args (@t122))
% 45.56/45.84  (step @p211 :rule nary_cong :premises (@p200 @p210) :args ((or @t126 (not @t123))))
% 45.56/45.84  (step @p212 :rule cnf_or_neg :args (@t126 1))
% 45.56/45.84  (step @p213 :rule eq_resolve :premises (@p212 @p211))
% 45.56/45.84  (step @p214 :rule reordering :premises (@p213) :args ((or @t122 @t126)))
% 45.56/45.84  (step @p215 :rule chain_m_resolution :premises (@p214 @p198) :args (@t122 @t105 @t133))
% 45.56/45.84  (step @p216 :rule cnf_or_pos :args (@t137))
% 45.56/45.84  (step @p217 :rule reordering :premises (@p216) :args ((or @t123 @t136 (not @t137))))
% 45.56/45.84  (step @p218 :rule chain_m_resolution :premises (@p217 @p215 @p209) :args (@t136 @t119 (@list @t122 @t137)))
% 45.56/45.84  (step @p219 :rule refl :args (@t138))
% 45.56/45.84  (step @p220 :rule refl :args (@t139))
% 45.56/45.84  (step @p221 :rule bool-double-not-elim :args (@t93))
% 45.56/45.84  (step @p222 :rule nary_cong :premises (@p221 @p220 @p219) :args ((or (not @t104) @t139 @t138)))
% 45.56/45.84  (assume-push @p289 @t136)
% 45.56/45.84  (assume-push @p290 @t134)
% 45.56/45.84  (assume-push @p291 @t104)
% 45.56/45.84  (step @p226 :rule arith-elim-lt :args (@t92 2))
% 45.56/45.84  (step @p227 :rule cong :premises (@p226) :args ((not @t140)))
% 45.56/45.84  (step @p228 :rule trans :premises (@p227 @p221))
% 45.56/45.84  (step @p229 :rule symm :premises (@p228))
% 45.56/45.84  (assume-push @p292 @t140)
% 45.56/45.84  (step @p231 :rule evaluate :args ((>= 0 0)))
% 45.56/45.84  (step @p232 :rule evaluate :args ((+ 2 -1 -1)))
% 45.56/45.84  (step @p233 :rule evaluate :args (@t141))
% 45.56/45.84  (step @p234 :rule refl :args (2))
% 45.56/45.84  (step @p235 :rule nary_cong :premises (@p234 @p233 @p233) :args (@t142))
% 45.56/45.84  (step @p236 :rule trans :premises (@p235 @p232))
% 45.56/45.84  (step @p237 :rule arith_poly_norm :args ((= (+ @t92 @t120 @t143) 0)))
% 45.56/45.84  (step @p238 :rule arith_poly_norm :args ((= @t144 @t143)))
% 45.56/45.84  (step @p239 :rule refl :args (@t120))
% 45.56/45.84  (step @p240 :rule refl :args (@t92))
% 45.56/45.84  (step @p241 :rule nary_cong :premises (@p240 @p239 @p238) :args (@t145))
% 45.56/45.84  (step @p242 :rule trans :premises (@p241 @p237))
% 45.56/45.84  (step @p243 :rule cong :premises (@p242 @p236) :args (@t146))
% 45.56/45.84  (step @p244 :rule trans :premises (@p243 @p231))
% 45.56/45.84  (step @p245 :rule cong :premises (@p244) :args ((not @t146)))
% 45.56/45.84  (step @p246 :rule trans :premises (@p245 @p54))
% 45.56/45.84  (step @p247 :rule arith-elim-lt :args (@t145 @t142))
% 45.56/45.84  (step @p248 :rule trans :premises (@p247 @p246))
% 45.56/45.84  (step @p249 :rule arith_mult_neg :args (-1 @t136))
% 45.56/45.84  (step @p250 :rule evaluate :args ((< -1 0)))
% 45.56/45.84  (step @p251 :rule true_elim :premises (@p250))
% 45.56/45.84  (step @p252 :rule and_intro :premises (@p251 @p218))
% 45.56/45.84  (step @p253 :rule modus_ponens :premises (@p252 @p249))
% 45.56/45.84  (step @p254 :rule arith_mult_neg :args (-1 @t134))
% 45.56/45.84  (step @p255 :rule and_intro :premises (@p251 @p208))
% 45.56/45.84  (step @p256 :rule modus_ponens :premises (@p255 @p254))
% 45.56/45.84  (step @p257 :rule symm :premises (@p226))
% 45.56/45.84  (step @p258 :rule chain_m_resolution :premises (@p136 @p135) :args (@t104 @t105 @t106))
% 45.56/45.84  (step @p259 :rule eq_resolve :premises (@p258 @p257))
% 45.56/45.84  (step @p260 :rule arith_sum_ub :premises (@p259 @p256 @p253))
% 45.56/45.84  (step @p261 false :rule eq_resolve :premises (@p260 @p248))
% 45.56/45.84  (step-pop @p293 :rule scope :premises (@p261))
% 45.56/45.84  (step @p262 :rule process_scope :premises (@p293) :args (false))
% 45.56/45.85  (step @p264 :rule eq_resolve :premises (@p262 @p228))
% 45.56/45.85  (step @p265 :rule eq_resolve :premises (@p264 @p229))
% 45.56/45.85  (step @p257 :rule symm :premises (@p226))
% 45.56/45.85  (step @p266 :rule eq_resolve :premises (@p137 @p257))
% 45.56/45.85  (step @p267 false :rule contra :premises (@p266 @p265))
% 45.56/45.85  (step-pop @p294 :rule scope :premises (@p267))
% 45.56/45.85  (step-pop @p295 :rule scope :premises (@p294))
% 45.56/45.85  (step-pop @p296 :rule scope :premises (@p295))
% 45.56/45.85  (step @p268 :rule process_scope :premises (@p296) :args (false))
% 45.56/45.85  (assume-push @p297 @t104)
% 45.56/45.85  (assume-push @p298 @t134)
% 45.56/45.85  (assume-push @p299 @t136)
% 45.56/45.85  (step @p275 :rule and_intro :premises (@p218 @p208 @p137))
% 45.56/45.85  (step-pop @p300 :rule scope :premises (@p275))
% 45.56/45.85  (step-pop @p301 :rule scope :premises (@p300))
% 45.56/45.85  (step-pop @p302 :rule scope :premises (@p301))
% 45.56/45.85  (step @p276 :rule process_scope :premises (@p302) :args (@t147))
% 45.56/45.85  (step @p280 :rule implies_elim :premises (@p276))
% 45.56/45.85  (step @p281 :rule resolution :premises (@p280 @p268) :args (true @t147))
% 45.56/45.85  (step @p282 :rule not_and :premises (@p281))
% 45.56/45.85  (step @p283 :rule eq_resolve :premises (@p282 @p222))
% 45.56/45.85  (step @p284 false :rule chain_m_resolution :premises (@p283 @p218 @p208 @p137) :args (false (@list false false true) (@list @t136 @t134 @t93)))
% 45.56/45.85  )
% 45.56/45.85  % SZS output end Proof
% 45.56/45.85  % cvc5 exiting
%------------------------------------------------------------------------------