↑ Up

cvc5---1.3.4.THM-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : cvc5---1.3.4
% Problem  : DAT097_1 : 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 : n029.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:30 AM UTC 2026

% Result   : Theorem 0.42s 0.65s
% Output   : Proof 0.42s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : DAT097_1 : TPTP v9.2.1. Released v6.1.0.
% 0.00/0.13  % Command  : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM
% 0.17/0.34  % Computer : n029.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.34  % CPULimit : 300
% 0.17/0.34  % WCLimit  : 300
% 0.17/0.34  % DateTime : Mon Jun  1 22:28:32 EDT 2026
% 0.17/0.34  % CPUTime  : 
% 0.31/0.49  %----Proving TF0_ARI
% 0.42/0.65  --- Run --finite-model-find --decision=internal at 45...
% 0.42/0.65  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 60...
% 0.42/0.65  % SZS status Theorem
% 0.42/0.65  % SZS output start Proof
% 0.42/0.65  (
% 0.42/0.65  (declare-sort tptp.list 0)
% 0.42/0.65  (declare-const tptp.count (-> Int tptp.list Int))
% 0.42/0.65  (declare-const tptp.length (-> tptp.list Int))
% 0.42/0.65  (declare-const tptp.inRange (-> Int tptp.list Bool))
% 0.42/0.65  (declare-const tptp.in (-> Int tptp.list Bool))
% 0.42/0.65  (declare-const tptp.nil tptp.list)
% 0.42/0.65  (declare-const tptp.append (-> tptp.list tptp.list tptp.list))
% 0.42/0.65  (declare-const tptp.tail (-> tptp.list tptp.list))
% 0.42/0.65  (declare-const tptp.head (-> tptp.list Int))
% 0.42/0.65  (declare-const tptp.cons (-> Int tptp.list tptp.list))
% 0.42/0.65  (define @t1 () (@var "K" Int))
% 0.42/0.65  (define @t2 () (@var "L" tptp.list))
% 0.42/0.65  (define @t3 () (tptp.cons @t1 @t2))
% 0.42/0.65  (define @t4 () (@list @t1 @t2))
% 0.42/0.65  (define @t5 () (= @t2 tptp.nil))
% 0.42/0.65  (define @t6 () (@list @t2))
% 0.42/0.65  (define @t7 () (@var "T" tptp.list))
% 0.42/0.65  (define @t8 () (@var "X" Int))
% 0.42/0.65  (define @t9 () (@var "H" Int))
% 0.42/0.65  (define @t10 () (tptp.cons @t9 @t7))
% 0.42/0.65  (define @t11 () (= @t2 @t10))
% 0.42/0.65  (define @t12 () (@list @t9 @t7))
% 0.42/0.65  (define @t13 () (@var "N" Int))
% 0.42/0.65  (define @t14 () (@list @t13 @t2))
% 0.42/0.65  (define @t15 () (@list @t1))
% 0.42/0.65  (define @t16 () (tptp.count @t1 @t7))
% 0.42/0.65  (define @t17 () (tptp.count @t1 @t10))
% 0.42/0.65  (define @t18 () (= @t1 @t9))
% 0.42/0.65  (define @t19 () (not @t18))
% 0.42/0.65  (define @t20 () (@list @t1 @t9 @t7 @t13))
% 0.42/0.65  (define @t21 () (+ @t16 1))
% 0.42/0.65  (define @t22 () (= @t17 @t21))
% 0.42/0.65  (define @t23 () (=> @t18 @t22))
% 0.42/0.65  (define @t24 () (forall @t20 @t23))
% 0.42/0.65  (define @t25 () (tptp.append tptp.nil @t2))
% 0.42/0.65  (define @t26 () (forall @t6 (= @t25 @t2)))
% 0.42/0.65  (define @t27 () (@var "K" tptp.list))
% 0.42/0.65  (define @t28 () (@var "I" Int))
% 0.42/0.65  (define @t29 () (tptp.count @t13 @t2))
% 0.42/0.65  (define @t30 () (tptp.in @t13 @t2))
% 0.42/0.65  (define @t31 () (= @t30 (> @t29 0)))
% 0.42/0.65  (define @t32 () (forall @t14 @t31))
% 0.42/0.65  (define @t33 () (@var "L1" tptp.list))
% 0.42/0.65  (define @t34 () (tptp.count @t13 @t33))
% 0.42/0.65  (define @t35 () (= @t34 @t29))
% 0.42/0.65  (define @t36 () (@var "M" Int))
% 0.42/0.65  (define @t37 () (tptp.append @t2 (tptp.cons @t36 @t27)))
% 0.42/0.65  (define @t38 () (= @t33 @t37))
% 0.42/0.65  (define @t39 () (tptp.in @t36 @t27))
% 0.42/0.65  (define @t40 () (not @t39))
% 0.42/0.65  (define @t41 () (and @t30 @t40 @t38))
% 0.42/0.65  (define @t42 () (=> @t41 @t35))
% 0.42/0.65  (define @t43 () (@list @t36 @t13 @t27 @t2 @t33))
% 0.42/0.65  (define @t44 () (forall @t43 @t42))
% 0.42/0.65  (define @t45 () (= (tptp.count @t9 @t10) (+ 1 (tptp.count @t9 @t7))))
% 0.42/0.65  (define @t46 () (not (= @t9 @t9)))
% 0.42/0.65  (define @t47 () (or @t46 @t45))
% 0.42/0.65  (define @t48 () (+ 1 @t16))
% 0.42/0.65  (define @t49 () (= @t17 @t48))
% 0.42/0.65  (define @t50 () (or @t19 @t19 @t49))
% 0.42/0.65  (define @t51 () (or @t19 @t49))
% 0.42/0.65  (define @t52 () (forall @t15 @t51))
% 0.42/0.65  (define @t53 () (forall @t12 @t52))
% 0.42/0.65  (define @t54 () (forall (@list @t9 @t7 @t1) @t51))
% 0.42/0.65  (define @t55 () (forall (@list @t1 @t9 @t7) @t51))
% 0.42/0.65  (define @t56 () (tptp.cons 0 tptp.nil))
% 0.42/0.65  (define @t57 () (tptp.count 0 @t56))
% 0.42/0.65  (define @t58 () (+ -1 @t57))
% 0.42/0.65  (define @t59 () (tptp.count 0 tptp.nil))
% 0.42/0.65  (define @t60 () (- @t59 @t58))
% 0.42/0.65  (define @t61 () (+ 1 @t59))
% 0.42/0.65  (define @t62 () (= @t59 @t58))
% 0.42/0.65  (define @t63 () (= @t57 @t61))
% 0.42/0.65  (define @t64 () (forall @t12 @t45))
% 0.42/0.65  (define @t65 () (@list 0 tptp.nil))
% 0.42/0.65  (define @t66 () (@list false))
% 0.42/0.65  (define @t67 () (@list @t64))
% 0.42/0.65  (define @t68 () (>= @t29 1))
% 0.42/0.65  (define @t69 () (+ 0 1))
% 0.42/0.65  (define @t70 () (>= @t29 @t69))
% 0.42/0.65  (define @t71 () (tptp.in 0 @t56))
% 0.42/0.65  (define @t72 () (>= @t57 1))
% 0.42/0.65  (define @t73 () (forall @t14 (= @t30 @t68)))
% 0.42/0.65  (define @t74 () (= @t71 @t72))
% 0.42/0.65  (define @t75 () (@list 0 @t56))
% 0.42/0.65  (define @t76 () (= @t72 @t71))
% 0.42/0.65  (define @t77 () (= @t29 (tptp.count @t13 @t37)))
% 0.42/0.65  (define @t78 () (not @t30))
% 0.42/0.65  (define @t79 () (not (= @t37 @t37)))
% 0.42/0.65  (define @t80 () (or @t78 @t39 @t79 @t77))
% 0.42/0.65  (define @t81 () (@list @t36 @t13 @t27 @t2))
% 0.42/0.65  (define @t82 () (= @t29 @t34))
% 0.42/0.65  (define @t83 () (not @t38))
% 0.42/0.65  (define @t84 () (or @t83 @t78 @t39 @t83 @t82))
% 0.42/0.65  (define @t85 () (@list @t33))
% 0.42/0.65  (define @t86 () (or @t78 @t39 @t83 @t82))
% 0.42/0.65  (define @t87 () (forall @t85 @t86))
% 0.42/0.65  (define @t88 () (forall @t81 @t87))
% 0.42/0.65  (define @t89 () (not @t40))
% 0.42/0.65  (define @t90 () (or @t78 @t89 @t83))
% 0.42/0.65  (define @t91 () (tptp.cons 0 @t56))
% 0.42/0.65  (define @t92 () (tptp.count 0 @t91))
% 0.42/0.65  (define @t93 () (+ -1 @t92))
% 0.42/0.65  (define @t94 () (- @t57 @t93))
% 0.42/0.65  (define @t95 () (+ 1 @t57))
% 0.42/0.65  (define @t96 () (= @t57 @t93))
% 0.42/0.65  (define @t97 () (= @t92 @t95))
% 0.42/0.65  (define @t98 () (tptp.append tptp.nil @t56))
% 0.42/0.65  (define @t99 () (= @t56 @t98))
% 0.42/0.65  (define @t100 () (tptp.append @t56 @t56))
% 0.42/0.65  (define @t101 () (= @t100 (tptp.cons 0 @t98)))
% 0.42/0.65  (define @t102 () (= @t57 @t92))
% 0.42/0.65  (define @t103 () (not @t102))
% 0.42/0.65  (define @t104 () (tptp.count 0 @t100))
% 0.42/0.65  (define @t105 () (= @t57 @t104))
% 0.42/0.65  (define @t106 () (not @t105))
% 0.42/0.65  (define @t107 () (* -1 @t92))
% 0.42/0.65  (define @t108 () (+ -1 @t107))
% 0.42/0.65  (define @t109 () (- @t108 @t107))
% 0.42/0.65  (define @t110 () (+ @t107 -1))
% 0.42/0.65  (define @t111 () (* -1 @t57))
% 0.42/0.65  (define @t112 () (+ @t107 @t111 @t57))
% 0.42/0.65  (define @t113 () (+ @t57 @t107))
% 0.42/0.65  (define @t114 () (+ @t111 @t113))
% 0.42/0.65  (define @t115 () (< -1 0))
% 0.42/0.65  (define @t116 () (and @t99 @t96 @t101))
% 0.42/0.65  (define @t117 () (= @t59 0))
% 0.42/0.65  (define @t118 () (>= @t59 1))
% 0.42/0.65  (define @t119 () (* -1 1))
% 0.42/0.65  (define @t120 () (+ @t119 0))
% 0.42/0.65  (define @t121 () (* -1 @t59))
% 0.42/0.65  (define @t122 () (+ @t121 @t59))
% 0.42/0.65  (define @t123 () (not @t118))
% 0.42/0.65  (define @t124 () (tptp.in 0 tptp.nil))
% 0.42/0.65  (define @t125 () (= @t124 @t118))
% 0.42/0.65  (define @t126 () (not @t124))
% 0.42/0.65  (define @t127 () (@list true false))
% 0.42/0.65  (define @t128 () (not @t71))
% 0.42/0.65  (define @t129 () (or @t128 @t124 @t105))
% 0.42/0.65  (define @t130 () (not @t72))
% 0.42/0.65  (define @t131 () (not @t62))
% 0.42/0.65  (define @t132 () (not @t117))
% 0.42/0.65  (define @t133 () (< @t57 1))
% 0.42/0.65  (define @t134 () (* -1 0))
% 0.42/0.65  (define @t135 () (+ 1 -1 @t134))
% 0.42/0.65  (define @t136 () (+ @t121 @t111 @t57 @t59))
% 0.42/0.65  (define @t137 () (+ @t59 @t111))
% 0.42/0.65  (define @t138 () (+ @t57 @t137 @t121))
% 0.42/0.65  (define @t139 () (>= @t138 @t135))
% 0.42/0.65  (assume @p1 (forall @t4 (= (tptp.head @t3) @t1)))
% 0.42/0.65  (assume @p2 (forall @t4 (= (tptp.tail @t3) @t2)))
% 0.42/0.65  (assume @p3 (forall @t6 (or @t5 (= @t2 (tptp.cons (tptp.head @t2) (tptp.tail @t2))))))
% 0.42/0.65  (assume @p4 (forall @t4 (not (= @t3 tptp.nil))))
% 0.42/0.65  (assume @p5 (forall (@list @t8 @t2) (= (tptp.in @t8 @t2) (or (exists @t12 (and @t11 (= @t8 @t9))) (exists @t12 (and @t11 (tptp.in @t8 @t7)))))))
% 0.42/0.65  (assume @p6 (forall @t14 (= (tptp.inRange @t13 @t2) (or @t5 (exists (@list @t1 @t7) (and (= @t2 (tptp.cons @t1 @t7)) (<= 0 @t1) (< @t1 @t13) (tptp.inRange @t13 @t7)))))))
% 0.42/0.65  (assume @p7 (= (tptp.length tptp.nil) 0))
% 0.42/0.65  (assume @p8 (forall @t12 (= (tptp.length @t10) (+ 1 (tptp.length @t7)))))
% 0.42/0.65  (assume @p9 (forall @t15 (= (tptp.count @t1 tptp.nil) 0)))
% 0.42/0.65  (assume @p10 (forall @t20 (=> @t19 (= @t17 @t16))))
% 0.42/0.65  (assume @p11 @t24)
% 0.42/0.65  (assume @p12 @t26)
% 0.42/0.65  (assume @p13 (forall (@list @t28 @t27 @t2) (= (tptp.append (tptp.cons @t28 @t27) @t2) (tptp.cons @t28 (tptp.append @t27 @t2)))))
% 0.42/0.65  (assume @p14 @t32)
% 0.42/0.65  (assume @p15 (not (not @t44)))
% 0.42/0.65  (assume @p16 true)
% 0.42/0.65  (step @p17 :rule instantiate :premises (@p9) :args ((@list 0)))
% 0.42/0.65  (step @p18 :rule aci_norm :args ((= (or false @t45) @t45)))
% 0.42/0.65  (step @p19 :rule refl :args (@t45))
% 0.42/0.65  (step @p20 :rule evaluate :args ((not true)))
% 0.42/0.65  (step @p21 :rule eq-refl :args (@t9))
% 0.42/0.65  (step @p22 :rule cong :premises (@p21) :args (@t46))
% 0.42/0.65  (step @p23 :rule trans :premises (@p22 @p20))
% 0.42/0.65  (step @p24 :rule nary_cong :premises (@p23 @p19) :args (@t47))
% 0.42/0.65  (step @p25 :rule trans :premises (@p24 @p18))
% 0.42/0.65  (step @p26 :rule cong :premises (@p25) :args ((forall @t12 @t47)))
% 0.42/0.65  (step @p27 :rule quant-var-elim-eq :args ((= (forall @t15 @t50) @t47)))
% 0.42/0.65  (step @p28 :rule aci_norm :args ((= @t51 @t50)))
% 0.42/0.65  (step @p29 :rule cong :premises (@p28) :args (@t52))
% 0.42/0.65  (step @p30 :rule trans :premises (@p29 @p27))
% 0.42/0.65  (step @p31 :rule cong :premises (@p30) :args (@t53))
% 0.42/0.65  (step @p32 :rule quant-merge-prenex :args ((= @t53 @t54)))
% 0.42/0.65  (step @p33 :rule symm :premises (@p32))
% 0.42/0.65  (step @p34 :rule quant_var_reordering :args ((= @t55 @t54)))
% 0.42/0.65  (step @p35 :rule trans :premises (@p34 @p33 @p31))
% 0.42/0.65  (step @p36 :rule trans :premises (@p35 @p26))
% 0.42/0.65  (step @p37 :rule quant-unused-vars :args ((= (forall @t20 @t51) @t55)))
% 0.42/0.65  (step @p38 :rule trans :premises (@p37 @p36))
% 0.42/0.65  (step @p39 :rule bool-impl-elim :args (@t18 @t49))
% 0.42/0.65  (step @p40 :rule cong :premises (@p39) :args ((forall @t20 (=> @t18 @t49))))
% 0.42/0.65  (step @p41 :rule trans :premises (@p40 @p38))
% 0.42/0.65  (step @p42 :rule arith_poly_norm :args ((= @t21 @t48)))
% 0.42/0.65  (step @p43 :rule refl :args (@t17))
% 0.42/0.65  (step @p44 :rule cong :premises (@p43 @p42) :args (@t22))
% 0.42/0.65  (step @p45 :rule refl :args (@t18))
% 0.42/0.65  (step @p46 :rule cong :premises (@p45 @p44) :args (@t23))
% 0.42/0.65  (step @p47 :rule cong :premises (@p46) :args (@t24))
% 0.42/0.65  (step @p48 :rule trans :premises (@p47 @p41))
% 0.42/0.65  (step @p49 :rule eq_resolve :premises (@p11 @p48))
% 0.42/0.65  (step @p50 :rule arith_poly_norm :args ((= (* 1 (- @t57 @t61)) (* -1 @t60))))
% 0.42/0.65  (step @p51 :rule arith_poly_norm_rel :premises (@p50) :args ((= @t63 @t62)))
% 0.42/0.65  (step @p52 :rule refl :args (@t64))
% 0.42/0.65  (step @p53 :rule cong :premises (@p52 @p51) :args ((=> @t64 @t63)))
% 0.42/0.65  (assume-push @p306 @t64)
% 0.42/0.65  (step @p55 :rule instantiate :premises (@p49) :args (@t65))
% 0.42/0.65  (step-pop @p307 :rule scope :premises (@p55))
% 0.42/0.65  (step @p56 :rule process_scope :premises (@p307) :args (@t63))
% 0.42/0.65  (step @p58 :rule eq_resolve :premises (@p56 @p53))
% 0.42/0.65  (step @p59 :rule implies_elim :premises (@p58))
% 0.42/0.65  (step @p60 :rule chain_m_resolution :premises (@p59 @p49) :args (@t62 @t66 @t67))
% 0.42/0.65  (step @p61 :rule bool-double-not-elim :args (@t68))
% 0.42/0.65  (step @p62 :rule evaluate :args (@t69))
% 0.42/0.65  (step @p63 :rule refl :args (@t29))
% 0.42/0.65  (step @p64 :rule cong :premises (@p63 @p62) :args (@t70))
% 0.42/0.65  (step @p65 :rule cong :premises (@p64) :args ((not @t70)))
% 0.42/0.65  (step @p66 :rule arith-leq-norm :args (@t29 0))
% 0.42/0.65  (step @p67 :rule trans :premises (@p66 @p65))
% 0.42/0.65  (step @p68 :rule cong :premises (@p67) :args ((not (<= @t29 0))))
% 0.42/0.65  (step @p69 :rule trans :premises (@p68 @p61))
% 0.42/0.65  (step @p70 :rule arith-elim-leq :args (@t29 0))
% 0.42/0.65  (step @p71 :rule symm :premises (@p70))
% 0.42/0.65  (step @p72 :rule cong :premises (@p71) :args ((not (>= 0 @t29))))
% 0.42/0.65  (step @p73 :rule arith-elim-gt :args (@t29 0))
% 0.42/0.65  (step @p74 :rule trans :premises (@p73 @p72))
% 0.42/0.65  (step @p75 :rule trans :premises (@p74 @p69))
% 0.42/0.65  (step @p76 :rule refl :args (@t30))
% 0.42/0.65  (step @p77 :rule cong :premises (@p76 @p75) :args (@t31))
% 0.42/0.65  (step @p78 :rule cong :premises (@p77) :args (@t32))
% 0.42/0.65  (step @p79 :rule eq_resolve :premises (@p14 @p78))
% 0.42/0.65  (step @p80 :rule eq-symm :args (@t71 @t72))
% 0.42/0.65  (step @p81 :rule refl :args (@t73))
% 0.42/0.65  (step @p82 :rule cong :premises (@p81 @p80) :args ((=> @t73 @t74)))
% 0.42/0.65  (assume-push @p308 @t73)
% 0.42/0.65  (step @p84 :rule instantiate :premises (@p79) :args (@t75))
% 0.42/0.65  (step-pop @p309 :rule scope :premises (@p84))
% 0.42/0.65  (step @p85 :rule process_scope :premises (@p309) :args (@t74))
% 0.42/0.65  (step @p87 :rule eq_resolve :premises (@p85 @p82))
% 0.42/0.65  (step @p88 :rule implies_elim :premises (@p87))
% 0.42/0.65  (step @p89 :rule chain_m_resolution :premises (@p88 @p79) :args (@t76 @t66 (@list @t73)))
% 0.42/0.65  (step @p90 :rule aci_norm :args ((= (or @t78 @t39 false @t77) (or @t78 @t39 @t77))))
% 0.42/0.65  (step @p91 :rule refl :args (@t77))
% 0.42/0.65  (step @p92 :rule eq-refl :args (@t37))
% 0.42/0.65  (step @p93 :rule cong :premises (@p92) :args (@t79))
% 0.42/0.65  (step @p94 :rule trans :premises (@p93 @p20))
% 0.42/0.65  (step @p95 :rule refl :args (@t39))
% 0.42/0.65  (step @p96 :rule refl :args (@t78))
% 0.42/0.65  (step @p97 :rule nary_cong :premises (@p96 @p95 @p94 @p91) :args (@t80))
% 0.42/0.65  (step @p98 :rule trans :premises (@p97 @p90))
% 0.42/0.65  (step @p99 :rule cong :premises (@p98) :args ((forall @t81 @t80)))
% 0.42/0.65  (step @p100 :rule quant-var-elim-eq :args ((= (forall @t85 @t84) @t80)))
% 0.42/0.65  (step @p101 :rule aci_norm :args ((= @t86 @t84)))
% 0.42/0.65  (step @p102 :rule cong :premises (@p101) :args (@t87))
% 0.42/0.65  (step @p103 :rule trans :premises (@p102 @p100))
% 0.42/0.65  (step @p104 :rule cong :premises (@p103) :args (@t88))
% 0.42/0.65  (step @p105 :rule quant-merge-prenex :args ((= @t88 (forall @t43 @t86))))
% 0.42/0.65  (step @p106 :rule symm :premises (@p105))
% 0.42/0.65  (step @p107 :rule trans :premises (@p106 @p104))
% 0.42/0.65  (step @p108 :rule trans :premises (@p107 @p99))
% 0.42/0.65  (step @p109 :rule aci_norm :args ((= (or (or @t78 @t39 @t83) @t82) @t86)))
% 0.42/0.65  (step @p110 :rule refl :args (@t82))
% 0.42/0.65  (step @p111 :rule refl :args (@t83))
% 0.42/0.65  (step @p112 :rule bool-double-not-elim :args (@t39))
% 0.42/0.65  (step @p113 :rule refl :args (@t78))
% 0.42/0.65  (step @p114 :rule nary_cong :premises (@p113 @p112 @p111) :args (@t90))
% 0.42/0.65  (step @p115 :rule aci_norm :args ((= (or @t78 (or @t89 @t83)) @t90)))
% 0.42/0.65  (step @p116 :rule trans :premises (@p115 @p114))
% 0.42/0.65  (step @p117 :rule bool-and-de-morgan :args (@t40 @t38 true))
% 0.42/0.65  (step @p118 :rule nary_cong :premises (@p113 @p117) :args ((or @t78 (not (and @t40 @t38)))))
% 0.42/0.65  (step @p119 :rule bool-and-de-morgan :args (@t30 @t40 (and @t38)))
% 0.42/0.65  (step @p120 :rule trans :premises (@p119 @p118))
% 0.42/0.65  (step @p121 :rule trans :premises (@p120 @p116))
% 0.42/0.65  (step @p122 :rule nary_cong :premises (@p121 @p110) :args ((or (not @t41) @t82)))
% 0.42/0.65  (step @p123 :rule trans :premises (@p122 @p109))
% 0.42/0.65  (step @p124 :rule bool-impl-elim :args (@t41 @t82))
% 0.42/0.65  (step @p125 :rule trans :premises (@p124 @p123))
% 0.42/0.65  (step @p126 :rule cong :premises (@p125) :args ((forall @t43 (=> @t41 @t82))))
% 0.42/0.65  (step @p127 :rule trans :premises (@p126 @p108))
% 0.42/0.65  (step @p128 :rule arith_poly_norm :args ((= (* 1 (- @t34 @t29)) (* -1 (- @t29 @t34)))))
% 0.42/0.65  (step @p129 :rule arith_poly_norm_rel :premises (@p128) :args ((= @t35 @t82)))
% 0.42/0.65  (step @p130 :rule refl :args (@t41))
% 0.42/0.65  (step @p131 :rule cong :premises (@p130 @p129) :args (@t42))
% 0.42/0.65  (step @p132 :rule cong :premises (@p131) :args (@t44))
% 0.42/0.65  (step @p133 :rule trans :premises (@p132 @p127))
% 0.42/0.65  (step @p134 :rule bool-double-not-elim :args (@t44))
% 0.42/0.65  (step @p135 :rule trans :premises (@p134 @p133))
% 0.42/0.65  (step @p136 :rule eq_resolve :premises (@p15 @p135))
% 0.42/0.65  (step @p137 :rule instantiate :premises (@p136) :args ((@list 0 0 tptp.nil @t56)))
% 0.42/0.65  (step @p138 :rule instantiate :premises (@p13) :args ((@list 0 tptp.nil @t56)))
% 0.42/0.65  (step @p139 :rule arith_poly_norm :args ((= (* 1 (- @t92 @t95)) (* -1 @t94))))
% 0.42/0.65  (step @p140 :rule arith_poly_norm_rel :premises (@p139) :args ((= @t97 @t96)))
% 0.42/0.65  (step @p141 :rule cong :premises (@p52 @p140) :args ((=> @t64 @t97)))
% 0.42/0.65  (assume-push @p310 @t64)
% 0.42/0.65  (step @p143 :rule instantiate :premises (@p49) :args (@t75))
% 0.42/0.65  (step-pop @p311 :rule scope :premises (@p143))
% 0.42/0.65  (step @p144 :rule process_scope :premises (@p311) :args (@t97))
% 0.42/0.65  (step @p146 :rule eq_resolve :premises (@p144 @p141))
% 0.42/0.65  (step @p147 :rule implies_elim :premises (@p146))
% 0.42/0.65  (step @p148 :rule chain_m_resolution :premises (@p147 @p49) :args (@t96 @t66 @t67))
% 0.42/0.65  (step @p149 :rule eq-symm :args (@t25 @t2))
% 0.42/0.65  (step @p150 :rule cong :premises (@p149) :args (@t26))
% 0.42/0.65  (step @p151 :rule eq_resolve :premises (@p12 @p150))
% 0.42/0.65  (step @p152 :rule instantiate :premises (@p151) :args ((@list @t56)))
% 0.42/0.65  (assume-push @p312 @t99)
% 0.42/0.65  (assume-push @p313 @t96)
% 0.42/0.65  (assume-push @p314 @t101)
% 0.42/0.65  (assume-push @p315 @t103)
% 0.42/0.65  (assume-push @p316 (= @t92 @t104))
% 0.42/0.65  (step @p158 :rule false_intro :premises (@p315))
% 0.42/0.65  (step @p159 :rule symm :premises (@p138))
% 0.42/0.65  (step @p160 :rule refl :args (0))
% 0.42/0.65  (step @p161 :rule cong :premises (@p160 @p152) :args (@t91))
% 0.42/0.65  (step @p162 :rule trans :premises (@p161 @p159))
% 0.42/0.65  (step @p163 :rule cong :premises (@p160 @p162) :args (@t92))
% 0.42/0.65  (step @p164 :rule symm :premises (@p163))
% 0.42/0.65  (step @p165 :rule refl :args (@t57))
% 0.42/0.65  (step @p166 :rule cong :premises (@p165 @p164) :args (@t105))
% 0.42/0.65  (step @p167 :rule trans :premises (@p166 @p158))
% 0.42/0.65  (step @p168 :rule false_elim :premises (@p167))
% 0.42/0.65  (step-pop @p317 :rule scope :premises (@p168))
% 0.42/0.65  (step-pop @p318 :rule scope :premises (@p317))
% 0.42/0.65  (step @p169 :rule process_scope :premises (@p318) :args (@t106))
% 0.42/0.65  (step @p159 :rule symm :premises (@p138))
% 0.42/0.65  (step @p160 :rule refl :args (0))
% 0.42/0.65  (step @p161 :rule cong :premises (@p160 @p152) :args (@t91))
% 0.42/0.65  (step @p162 :rule trans :premises (@p161 @p159))
% 0.42/0.65  (step @p172 :rule cong :premises (@p160 @p162) :args (@t92))
% 0.42/0.65  (assume-push @p319 @t96)
% 0.42/0.65  (assume-push @p320 @t102)
% 0.42/0.65  (step @p175 :rule evaluate :args ((>= -1 0)))
% 0.42/0.65  (step @p176 :rule refl :args (0))
% 0.42/0.65  (step @p177 :rule arith_poly_norm :args ((= @t109 -1)))
% 0.42/0.65  (step @p178 :rule cong :premises (@p177 @p176) :args ((>= @t109 0)))
% 0.42/0.65  (step @p179 :rule trans :premises (@p178 @p175))
% 0.42/0.65  (step @p180 :rule arith-geq-norm1-int :args (@t108 @t107))
% 0.42/0.65  (step @p181 :rule trans :premises (@p180 @p179))
% 0.42/0.65  (step @p182 :rule arith-elim-leq :args (@t107 @t108))
% 0.42/0.65  (step @p183 :rule trans :premises (@p182 @p181))
% 0.42/0.65  (step @p184 :rule arith_poly_norm :args ((= @t110 @t108)))
% 0.42/0.65  (step @p185 :rule arith_poly_norm :args ((= @t112 @t107)))
% 0.42/0.65  (step @p186 :rule arith_poly_norm :args ((= @t114 @t112)))
% 0.42/0.65  (step @p187 :rule trans :premises (@p186 @p185))
% 0.42/0.65  (step @p188 :rule cong :premises (@p187 @p184) :args ((<= @t114 @t110)))
% 0.42/0.65  (step @p189 :rule trans :premises (@p188 @p183))
% 0.42/0.65  (step @p190 :rule arith_poly_norm :args ((= (* 1 (- @t113 -1)) (* 1 @t94))))
% 0.42/0.65  (step @p191 :rule arith_poly_norm_rel :premises (@p190) :args ((= (= @t113 -1) @t96)))
% 0.42/0.65  (step @p192 :rule symm :premises (@p191))
% 0.42/0.65  (step @p193 :rule eq_resolve :premises (@p148 @p192))
% 0.42/0.65  (step @p194 :rule arith_mult_neg :args (-1 @t102))
% 0.42/0.65  (step @p195 :rule evaluate :args (@t115))
% 0.42/0.65  (step @p196 :rule true_elim :premises (@p195))
% 0.42/0.65  (step @p197 :rule and_intro :premises (@p196 @p320))
% 0.42/0.65  (step @p198 :rule modus_ponens :premises (@p197 @p194))
% 0.42/0.65  (step @p199 :rule arith_sum_ub :premises (@p198 @p193))
% 0.42/0.65  (step @p200 false :rule eq_resolve :premises (@p199 @p189))
% 0.42/0.65  (step-pop @p321 :rule scope :premises (@p200))
% 0.42/0.65  (step @p201 :rule process_scope :premises (@p321) :args (false))
% 0.42/0.65  (step-pop @p322 :rule scope :premises (@p201))
% 0.42/0.65  (step @p203 :rule process_scope :premises (@p322) :args (@t103))
% 0.42/0.65  (step @p205 :rule modus_ponens :premises (@p148 @p203))
% 0.42/0.65  (step @p206 :rule and_intro :premises (@p205 @p172))
% 0.42/0.65  (step @p207 :rule modus_ponens :premises (@p206 @p169))
% 0.42/0.65  (step-pop @p323 :rule scope :premises (@p207))
% 0.42/0.65  (step-pop @p324 :rule scope :premises (@p323))
% 0.42/0.65  (step-pop @p325 :rule scope :premises (@p324))
% 0.42/0.65  (step @p208 :rule process_scope :premises (@p325) :args (@t106))
% 0.42/0.65  (step @p212 :rule implies_elim :premises (@p208))
% 0.42/0.65  (step @p213 :rule cnf_and_neg :args (@t116))
% 0.42/0.65  (step @p214 :rule resolution :premises (@p213 @p212) :args (true @t116))
% 0.42/0.65  (step @p215 :rule chain_m_resolution :premises (@p214 @p152 @p148 @p138) :args (@t106 (@list false false false) (@list @t99 @t96 @t101)))
% 0.42/0.65  (step @p216 :rule instantiate :premises (@p79) :args (@t65))
% 0.42/0.65  (assume-push @p326 @t117)
% 0.42/0.65  (assume-push @p327 @t117)
% 0.42/0.65  (step @p219 :rule arith-elim-lt :args (@t59 1))
% 0.42/0.65  (step @p220 :rule symm :premises (@p219))
% 0.42/0.65  (assume-push @p328 @t118)
% 0.42/0.65  (step @p222 :rule evaluate :args ((<= 0 -1)))
% 0.42/0.65  (step @p223 :rule evaluate :args ((+ -1 0)))
% 0.42/0.65  (step @p160 :rule refl :args (0))
% 0.42/0.65  (step @p224 :rule evaluate :args (@t119))
% 0.42/0.65  (step @p225 :rule nary_cong :premises (@p224 @p160) :args (@t120))
% 0.42/0.65  (step @p226 :rule trans :premises (@p225 @p223))
% 0.42/0.65  (step @p227 :rule arith_poly_norm :args ((= @t122 0)))
% 0.42/0.65  (step @p228 :rule cong :premises (@p227 @p226) :args ((<= @t122 @t120)))
% 0.42/0.65  (step @p229 :rule trans :premises (@p228 @p222))
% 0.42/0.65  (step @p230 :rule arith_mult_neg :args (-1 @t118))
% 0.42/0.65  (step @p195 :rule evaluate :args (@t115))
% 0.42/0.65  (step @p196 :rule true_elim :premises (@p195))
% 0.42/0.65  (step @p231 :rule and_intro :premises (@p196 @p328))
% 0.42/0.65  (step @p232 :rule modus_ponens :premises (@p231 @p230))
% 0.42/0.65  (step @p233 :rule arith_sum_ub :premises (@p232 @p17))
% 0.42/0.65  (step @p234 false :rule eq_resolve :premises (@p233 @p229))
% 0.42/0.65  (step-pop @p329 :rule scope :premises (@p234))
% 0.42/0.65  (step @p235 :rule process_scope :premises (@p329) :args (false))
% 0.42/0.65  (step @p237 :rule eq_resolve :premises (@p235 @p220))
% 0.42/0.65  (step @p238 :rule eq_resolve :premises (@p237 @p219))
% 0.42/0.65  (step-pop @p330 :rule scope :premises (@p238))
% 0.42/0.65  (step @p239 :rule process_scope :premises (@p330) :args (@t123))
% 0.42/0.65  (step @p241 :rule modus_ponens :premises (@p17 @p239))
% 0.42/0.65  (step-pop @p331 :rule scope :premises (@p241))
% 0.42/0.65  (step @p242 :rule process_scope :premises (@p331) :args (@t123))
% 0.42/0.65  (step @p244 :rule implies_elim :premises (@p242))
% 0.42/0.65  (step @p245 :rule chain_m_resolution :premises (@p244 @p17) :args (@t123 @t66 (@list @t117)))
% 0.42/0.65  (step @p246 :rule cnf_equiv_pos1 :args (@t125))
% 0.42/0.65  (step @p247 :rule reordering :premises (@p246) :args ((or @t118 @t126 (not @t125))))
% 0.42/0.65  (step @p248 :rule chain_m_resolution :premises (@p247 @p245 @p216) :args (@t126 @t127 (@list @t118 @t125)))
% 0.42/0.65  (step @p249 :rule cnf_or_pos :args (@t129))
% 0.42/0.65  (step @p250 :rule reordering :premises (@p249) :args ((or @t124 @t128 @t105 (not @t129))))
% 0.42/0.65  (step @p251 :rule chain_m_resolution :premises (@p250 @p248 @p215 @p137) :args (@t128 (@list true true false) (@list @t124 @t105 @t129)))
% 0.42/0.65  (step @p252 :rule cnf_equiv_pos1 :args (@t76))
% 0.42/0.65  (step @p253 :rule reordering :premises (@p252) :args ((or @t71 @t130 (not @t76))))
% 0.42/0.65  (step @p254 :rule chain_m_resolution :premises (@p253 @p251 @p89) :args (@t130 @t127 (@list @t71 @t76)))
% 0.42/0.65  (step @p255 :rule bool-double-not-elim :args (@t72))
% 0.42/0.65  (step @p256 :rule refl :args (@t131))
% 0.42/0.65  (step @p257 :rule refl :args (@t132))
% 0.42/0.65  (step @p258 :rule nary_cong :premises (@p257 @p256 @p255) :args ((or @t132 @t131 (not @t130))))
% 0.42/0.65  (assume-push @p332 @t117)
% 0.42/0.65  (assume-push @p333 @t62)
% 0.42/0.65  (assume-push @p334 @t130)
% 0.42/0.65  (step @p262 :rule arith-elim-lt :args (@t57 1))
% 0.42/0.65  (step @p263 :rule cong :premises (@p262) :args ((not @t133)))
% 0.42/0.65  (step @p264 :rule trans :premises (@p263 @p255))
% 0.42/0.65  (step @p265 :rule symm :premises (@p264))
% 0.42/0.65  (assume-push @p335 @t133)
% 0.42/0.65  (step @p267 :rule evaluate :args ((>= 0 0)))
% 0.42/0.65  (step @p268 :rule evaluate :args ((+ 1 -1 0)))
% 0.42/0.65  (step @p269 :rule evaluate :args (@t134))
% 0.42/0.65  (step @p270 :rule refl :args (-1))
% 0.42/0.65  (step @p271 :rule refl :args (1))
% 0.42/0.65  (step @p272 :rule nary_cong :premises (@p271 @p270 @p269) :args (@t135))
% 0.42/0.65  (step @p273 :rule trans :premises (@p272 @p268))
% 0.42/0.65  (step @p274 :rule arith_poly_norm :args ((= @t136 0)))
% 0.42/0.65  (step @p275 :rule arith_poly_norm :args ((= @t138 @t136)))
% 0.42/0.65  (step @p276 :rule trans :premises (@p275 @p274))
% 0.42/0.65  (step @p277 :rule cong :premises (@p276 @p273) :args (@t139))
% 0.42/0.65  (step @p278 :rule trans :premises (@p277 @p267))
% 0.42/0.65  (step @p279 :rule cong :premises (@p278) :args ((not @t139)))
% 0.42/0.65  (step @p280 :rule trans :premises (@p279 @p20))
% 0.42/0.65  (step @p281 :rule arith-elim-lt :args (@t138 @t135))
% 0.42/0.65  (step @p282 :rule trans :premises (@p281 @p280))
% 0.42/0.65  (step @p283 :rule arith_mult_neg :args (-1 @t117))
% 0.42/0.65  (step @p195 :rule evaluate :args (@t115))
% 0.42/0.65  (step @p196 :rule true_elim :premises (@p195))
% 0.42/0.65  (step @p284 :rule and_intro :premises (@p196 @p17))
% 0.42/0.65  (step @p285 :rule modus_ponens :premises (@p284 @p283))
% 0.42/0.65  (step @p286 :rule arith_poly_norm :args ((= (* 1 (- @t137 -1)) (* 1 @t60))))
% 0.42/0.65  (step @p287 :rule arith_poly_norm_rel :premises (@p286) :args ((= (= @t137 -1) @t62)))
% 0.42/0.65  (step @p288 :rule symm :premises (@p287))
% 0.42/0.65  (step @p289 :rule eq_resolve :premises (@p60 @p288))
% 0.42/0.65  (step @p290 :rule arith_sum_ub :premises (@p335 @p289 @p285))
% 0.42/0.65  (step @p291 false :rule eq_resolve :premises (@p290 @p282))
% 0.42/0.65  (step-pop @p336 :rule scope :premises (@p291))
% 0.42/0.65  (step @p292 :rule process_scope :premises (@p336) :args (false))
% 0.42/0.65  (step @p294 :rule eq_resolve :premises (@p292 @p264))
% 0.42/0.65  (step @p295 :rule eq_resolve :premises (@p294 @p265))
% 0.42/0.65  (step @p296 :rule symm :premises (@p262))
% 0.42/0.65  (step @p297 :rule eq_resolve :premises (@p334 @p296))
% 0.42/0.65  (step @p298 false :rule contra :premises (@p297 @p295))
% 0.42/0.65  (step-pop @p337 :rule scope :premises (@p298))
% 0.42/0.65  (step-pop @p338 :rule scope :premises (@p337))
% 0.42/0.65  (step-pop @p339 :rule scope :premises (@p338))
% 0.42/0.65  (step @p299 :rule process_scope :premises (@p339) :args (false))
% 0.42/0.65  (step @p303 :rule not_and :premises (@p299))
% 0.42/0.65  (step @p304 :rule eq_resolve :premises (@p303 @p258))
% 0.42/0.65  (step @p305 false :rule chain_m_resolution :premises (@p304 @p254 @p60 @p17) :args (false (@list true false false) (@list @t72 @t62 @t117)))
% 0.42/0.65  )
% 0.42/0.65  % SZS output end Proof
% 0.42/0.65  % cvc5 exiting
%------------------------------------------------------------------------------