↑ Up

cvc5---1.3.4.THM-Prf.s

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

% Computer : n018.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:28 AM UTC 2026

% Result   : Theorem 0.53s 0.78s
% Output   : Proof 0.53s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : DAT079_1 : TPTP v9.2.1. Released v6.1.0.
% 0.13/0.13  % Command  : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM
% 0.17/0.34  % Computer : n018.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:05 EDT 2026
% 0.17/0.34  % CPUTime  : 
% 0.32/0.49  %----Proving TF0_ARI
% 0.53/0.78  --- Run --finite-model-find --decision=internal at 45...
% 0.53/0.78  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 60...
% 0.53/0.78  % SZS status Theorem
% 0.53/0.78  % SZS output start Proof
% 0.53/0.78  (
% 0.53/0.78  (declare-sort tptp.list 0)
% 0.53/0.78  (declare-const tptp.count (-> Int tptp.list Int))
% 0.53/0.78  (declare-const tptp.length (-> tptp.list Int))
% 0.53/0.78  (declare-const tptp.inRange (-> Int tptp.list Bool))
% 0.53/0.78  (declare-const tptp.in (-> Int tptp.list Bool))
% 0.53/0.78  (declare-const tptp.nil tptp.list)
% 0.53/0.78  (declare-const tptp.append (-> tptp.list tptp.list tptp.list))
% 0.53/0.78  (declare-const tptp.tail (-> tptp.list tptp.list))
% 0.53/0.78  (declare-const tptp.head (-> tptp.list Int))
% 0.53/0.78  (declare-const tptp.cons (-> Int tptp.list tptp.list))
% 0.53/0.78  (define @t1 () (@var "K" Int))
% 0.53/0.78  (define @t2 () (@var "L" tptp.list))
% 0.53/0.78  (define @t3 () (tptp.cons @t1 @t2))
% 0.53/0.78  (define @t4 () (@list @t1 @t2))
% 0.53/0.78  (define @t5 () (= @t2 tptp.nil))
% 0.53/0.78  (define @t6 () (@list @t2))
% 0.53/0.78  (define @t7 () (@var "T" tptp.list))
% 0.53/0.78  (define @t8 () (@var "X" Int))
% 0.53/0.78  (define @t9 () (tptp.in @t8 @t7))
% 0.53/0.78  (define @t10 () (@var "H" Int))
% 0.53/0.78  (define @t11 () (tptp.cons @t10 @t7))
% 0.53/0.78  (define @t12 () (= @t2 @t11))
% 0.53/0.78  (define @t13 () (and @t12 @t9))
% 0.53/0.78  (define @t14 () (@list @t10 @t7))
% 0.53/0.78  (define @t15 () (exists @t14 @t13))
% 0.53/0.78  (define @t16 () (= @t8 @t10))
% 0.53/0.78  (define @t17 () (and @t12 @t16))
% 0.53/0.78  (define @t18 () (exists @t14 @t17))
% 0.53/0.78  (define @t19 () (or @t18 @t15))
% 0.53/0.78  (define @t20 () (tptp.in @t8 @t2))
% 0.53/0.78  (define @t21 () (= @t20 @t19))
% 0.53/0.78  (define @t22 () (@list @t8 @t2))
% 0.53/0.78  (define @t23 () (forall @t22 @t21))
% 0.53/0.78  (define @t24 () (@var "N" Int))
% 0.53/0.78  (define @t25 () (@list @t24 @t2))
% 0.53/0.78  (define @t26 () (@list @t1))
% 0.53/0.78  (define @t27 () (tptp.count @t1 @t7))
% 0.53/0.78  (define @t28 () (tptp.count @t1 @t11))
% 0.53/0.78  (define @t29 () (= @t28 @t27))
% 0.53/0.78  (define @t30 () (= @t1 @t10))
% 0.53/0.78  (define @t31 () (not @t30))
% 0.53/0.78  (define @t32 () (@list @t1 @t10 @t7 @t24))
% 0.53/0.78  (define @t33 () (forall @t32 (=> @t31 @t29)))
% 0.53/0.78  (define @t34 () (+ @t27 1))
% 0.53/0.78  (define @t35 () (= @t28 @t34))
% 0.53/0.78  (define @t36 () (=> @t30 @t35))
% 0.53/0.78  (define @t37 () (forall @t32 @t36))
% 0.53/0.78  (define @t38 () (@var "K" tptp.list))
% 0.53/0.78  (define @t39 () (@var "I" Int))
% 0.53/0.78  (define @t40 () (tptp.count @t24 @t2))
% 0.53/0.78  (define @t41 () (tptp.in @t24 @t2))
% 0.53/0.78  (define @t42 () (= @t41 (> @t40 0)))
% 0.53/0.78  (define @t43 () (forall @t25 @t42))
% 0.53/0.78  (define @t44 () (tptp.cons 3 tptp.nil))
% 0.53/0.78  (define @t45 () (tptp.cons 2 @t44))
% 0.53/0.78  (define @t46 () (tptp.cons 1 @t45))
% 0.53/0.78  (define @t47 () (tptp.in 2 @t46))
% 0.53/0.78  (define @t48 () (= (tptp.count @t10 @t11) (+ 1 (tptp.count @t10 @t7))))
% 0.53/0.78  (define @t49 () (not (= @t10 @t10)))
% 0.53/0.78  (define @t50 () (or @t49 @t48))
% 0.53/0.78  (define @t51 () (+ 1 @t27))
% 0.53/0.78  (define @t52 () (= @t28 @t51))
% 0.53/0.78  (define @t53 () (or @t31 @t31 @t52))
% 0.53/0.78  (define @t54 () (or @t31 @t52))
% 0.53/0.78  (define @t55 () (forall @t26 @t54))
% 0.53/0.78  (define @t56 () (forall @t14 @t55))
% 0.53/0.78  (define @t57 () (forall (@list @t10 @t7 @t1) @t54))
% 0.53/0.78  (define @t58 () (@list @t1 @t10 @t7))
% 0.53/0.78  (define @t59 () (forall @t58 @t54))
% 0.53/0.78  (define @t60 () (or @t30 @t29))
% 0.53/0.78  (define @t61 () (forall @t58 @t60))
% 0.53/0.78  (define @t62 () (tptp.count 2 tptp.nil))
% 0.53/0.78  (define @t63 () (tptp.count 2 @t44))
% 0.53/0.78  (define @t64 () (= @t63 @t62))
% 0.53/0.78  (define @t65 () (= 2 3))
% 0.53/0.78  (define @t66 () (or @t65 @t64))
% 0.53/0.78  (define @t67 () (@list false))
% 0.53/0.78  (define @t68 () (>= @t40 1))
% 0.53/0.78  (define @t69 () (+ 0 1))
% 0.53/0.78  (define @t70 () (>= @t40 @t69))
% 0.53/0.78  (define @t71 () (tptp.in 2 @t45))
% 0.53/0.78  (define @t72 () (tptp.count 2 @t45))
% 0.53/0.78  (define @t73 () (>= @t72 1))
% 0.53/0.78  (define @t74 () (forall @t25 (= @t41 @t68)))
% 0.53/0.78  (define @t75 () (= @t71 @t73))
% 0.53/0.78  (define @t76 () (= @t73 @t71))
% 0.53/0.78  (define @t77 () (forall @t14 (not @t13)))
% 0.53/0.78  (define @t78 () (not @t77))
% 0.53/0.78  (define @t79 () (not (= @t2 (tptp.cons @t8 @t7))))
% 0.53/0.78  (define @t80 () (not (= @t8 @t8)))
% 0.53/0.78  (define @t81 () (or @t79 @t80))
% 0.53/0.78  (define @t82 () (@list @t7))
% 0.53/0.78  (define @t83 () (not @t16))
% 0.53/0.78  (define @t84 () (not @t12))
% 0.53/0.78  (define @t85 () (= @t10 @t8))
% 0.53/0.78  (define @t86 () (@list @t10))
% 0.53/0.78  (define @t87 () (or @t83 @t84 @t83))
% 0.53/0.78  (define @t88 () (or @t84 @t83))
% 0.53/0.78  (define @t89 () (forall @t86 @t88))
% 0.53/0.78  (define @t90 () (forall @t82 @t89))
% 0.53/0.78  (define @t91 () (forall (@list @t7 @t10) @t88))
% 0.53/0.78  (define @t92 () (forall @t14 (not @t17)))
% 0.53/0.78  (define @t93 () (not @t92))
% 0.53/0.78  (define @t94 () (not (tptp.in 2 @t7)))
% 0.53/0.78  (define @t95 () (not (= @t46 @t11)))
% 0.53/0.78  (define @t96 () (or @t95 @t94))
% 0.53/0.78  (define @t97 () (forall @t14 @t96))
% 0.53/0.78  (define @t98 () (not @t97))
% 0.53/0.78  (define @t99 () (not (forall @t82 (not (= @t46 (tptp.cons 2 @t7))))))
% 0.53/0.78  (define @t100 () (or @t99 @t98))
% 0.53/0.78  (define @t101 () (= @t47 @t100))
% 0.53/0.78  (define @t102 () (forall @t22 (= @t20 (or (not (forall @t82 @t79)) (not (forall @t14 (or @t84 (not @t9))))))))
% 0.53/0.78  (define @t103 () (forall @t14 (or (not (= @t11 @t46)) @t94)))
% 0.53/0.78  (define @t104 () (not @t103))
% 0.53/0.78  (define @t105 () (or @t99 @t104))
% 0.53/0.78  (define @t106 () (= @t47 @t105))
% 0.53/0.78  (define @t107 () (not @t105))
% 0.53/0.78  (define @t108 () (@list true false))
% 0.53/0.78  (define @t109 () (not @t71))
% 0.53/0.78  (define @t110 () (not (= @t46 @t46)))
% 0.53/0.78  (define @t111 () (or @t110 @t109))
% 0.53/0.78  (define @t112 () (not @t73))
% 0.53/0.78  (define @t113 () (= @t62 0))
% 0.53/0.78  (define @t114 () (not @t113))
% 0.53/0.78  (define @t115 () (not @t64))
% 0.53/0.78  (define @t116 () (+ 1 @t63))
% 0.53/0.78  (define @t117 () (= @t72 @t116))
% 0.53/0.78  (define @t118 () (not @t117))
% 0.53/0.78  (define @t119 () (= 0 @t63))
% 0.53/0.78  (define @t120 () (= @t63 0))
% 0.53/0.78  (define @t121 () (* -1 1))
% 0.53/0.78  (define @t122 () (* -1 0))
% 0.53/0.78  (define @t123 () (+ @t122 @t121 1))
% 0.53/0.78  (define @t124 () (+ (* -1 @t72) @t63))
% 0.53/0.78  (define @t125 () (* -1 @t63))
% 0.53/0.78  (define @t126 () (+ @t72 @t125))
% 0.53/0.78  (define @t127 () (* -1 @t126))
% 0.53/0.78  (define @t128 () (+ @t125 @t127 @t72))
% 0.53/0.78  (define @t129 () (>= @t128 @t123))
% 0.53/0.78  (define @t130 () (= @t126 1))
% 0.53/0.78  (define @t131 () (and @t112 @t117 @t119))
% 0.53/0.78  (assume @p1 (forall @t4 (= (tptp.head @t3) @t1)))
% 0.53/0.78  (assume @p2 (forall @t4 (= (tptp.tail @t3) @t2)))
% 0.53/0.78  (assume @p3 (forall @t6 (or @t5 (= @t2 (tptp.cons (tptp.head @t2) (tptp.tail @t2))))))
% 0.53/0.78  (assume @p4 (forall @t4 (not (= @t3 tptp.nil))))
% 0.53/0.78  (assume @p5 @t23)
% 0.53/0.78  (assume @p6 (forall @t25 (= (tptp.inRange @t24 @t2) (or @t5 (exists (@list @t1 @t7) (and (= @t2 (tptp.cons @t1 @t7)) (<= 0 @t1) (< @t1 @t24) (tptp.inRange @t24 @t7)))))))
% 0.53/0.78  (assume @p7 (= (tptp.length tptp.nil) 0))
% 0.53/0.78  (assume @p8 (forall @t14 (= (tptp.length @t11) (+ 1 (tptp.length @t7)))))
% 0.53/0.78  (assume @p9 (forall @t26 (= (tptp.count @t1 tptp.nil) 0)))
% 0.53/0.78  (assume @p10 @t33)
% 0.53/0.78  (assume @p11 @t37)
% 0.53/0.78  (assume @p12 (forall @t6 (= (tptp.append tptp.nil @t2) @t2)))
% 0.53/0.78  (assume @p13 (forall (@list @t39 @t38 @t2) (= (tptp.append (tptp.cons @t39 @t38) @t2) (tptp.cons @t39 (tptp.append @t38 @t2)))))
% 0.53/0.78  (assume @p14 @t43)
% 0.53/0.78  (assume @p15 (not @t47))
% 0.53/0.78  (assume @p16 true)
% 0.53/0.78  (step @p17 :rule aci_norm :args ((= (or false @t48) @t48)))
% 0.53/0.78  (step @p18 :rule refl :args (@t48))
% 0.53/0.78  (step @p19 :rule evaluate :args ((not true)))
% 0.53/0.78  (step @p20 :rule eq-refl :args (@t10))
% 0.53/0.78  (step @p21 :rule cong :premises (@p20) :args (@t49))
% 0.53/0.78  (step @p22 :rule trans :premises (@p21 @p19))
% 0.53/0.78  (step @p23 :rule nary_cong :premises (@p22 @p18) :args (@t50))
% 0.53/0.78  (step @p24 :rule trans :premises (@p23 @p17))
% 0.53/0.78  (step @p25 :rule cong :premises (@p24) :args ((forall @t14 @t50)))
% 0.53/0.78  (step @p26 :rule quant-var-elim-eq :args ((= (forall @t26 @t53) @t50)))
% 0.53/0.78  (step @p27 :rule aci_norm :args ((= @t54 @t53)))
% 0.53/0.78  (step @p28 :rule cong :premises (@p27) :args (@t55))
% 0.53/0.78  (step @p29 :rule trans :premises (@p28 @p26))
% 0.53/0.78  (step @p30 :rule cong :premises (@p29) :args (@t56))
% 0.53/0.78  (step @p31 :rule quant-merge-prenex :args ((= @t56 @t57)))
% 0.53/0.78  (step @p32 :rule symm :premises (@p31))
% 0.53/0.78  (step @p33 :rule quant_var_reordering :args ((= @t59 @t57)))
% 0.53/0.78  (step @p34 :rule trans :premises (@p33 @p32 @p30))
% 0.53/0.78  (step @p35 :rule trans :premises (@p34 @p25))
% 0.53/0.78  (step @p36 :rule quant-unused-vars :args ((= (forall @t32 @t54) @t59)))
% 0.53/0.78  (step @p37 :rule trans :premises (@p36 @p35))
% 0.53/0.78  (step @p38 :rule bool-impl-elim :args (@t30 @t52))
% 0.53/0.78  (step @p39 :rule cong :premises (@p38) :args ((forall @t32 (=> @t30 @t52))))
% 0.53/0.78  (step @p40 :rule trans :premises (@p39 @p37))
% 0.53/0.78  (step @p41 :rule arith_poly_norm :args ((= @t34 @t51)))
% 0.53/0.78  (step @p42 :rule refl :args (@t28))
% 0.53/0.78  (step @p43 :rule cong :premises (@p42 @p41) :args (@t35))
% 0.53/0.78  (step @p44 :rule refl :args (@t30))
% 0.53/0.78  (step @p45 :rule cong :premises (@p44 @p43) :args (@t36))
% 0.53/0.78  (step @p46 :rule cong :premises (@p45) :args (@t37))
% 0.53/0.78  (step @p47 :rule trans :premises (@p46 @p40))
% 0.53/0.78  (step @p48 :rule eq_resolve :premises (@p11 @p47))
% 0.53/0.78  (step @p49 :rule instantiate :premises (@p48) :args ((@list 2 @t44)))
% 0.53/0.78  (step @p50 :rule quant-unused-vars :args ((= (forall @t32 @t60) @t61)))
% 0.53/0.78  (step @p51 :rule refl :args (@t29))
% 0.53/0.78  (step @p52 :rule bool-double-not-elim :args (@t30))
% 0.53/0.78  (step @p53 :rule nary_cong :premises (@p52 @p51) :args ((or (not @t31) @t29)))
% 0.53/0.78  (step @p54 :rule bool-impl-elim :args (@t31 @t29))
% 0.53/0.78  (step @p55 :rule trans :premises (@p54 @p53))
% 0.53/0.78  (step @p56 :rule cong :premises (@p55) :args (@t33))
% 0.53/0.78  (step @p57 :rule trans :premises (@p56 @p50))
% 0.53/0.78  (step @p58 :rule eq_resolve :premises (@p10 @p57))
% 0.53/0.78  (step @p59 :rule aci_norm :args ((= (or false @t64) @t64)))
% 0.53/0.78  (step @p60 :rule refl :args (@t64))
% 0.53/0.78  (step @p61 :rule evaluate :args (@t65))
% 0.53/0.78  (step @p62 :rule nary_cong :premises (@p61 @p60) :args (@t66))
% 0.53/0.78  (step @p63 :rule trans :premises (@p62 @p59))
% 0.53/0.78  (step @p64 :rule refl :args (@t61))
% 0.53/0.78  (step @p65 :rule cong :premises (@p64 @p63) :args ((=> @t61 @t66)))
% 0.53/0.78  (assume-push @p265 @t61)
% 0.53/0.78  (step @p67 :rule instantiate :premises (@p58) :args ((@list 2 3 tptp.nil)))
% 0.53/0.78  (step-pop @p266 :rule scope :premises (@p67))
% 0.53/0.78  (step @p68 :rule process_scope :premises (@p266) :args (@t66))
% 0.53/0.78  (step @p70 :rule eq_resolve :premises (@p68 @p65))
% 0.53/0.78  (step @p71 :rule implies_elim :premises (@p70))
% 0.53/0.78  (step @p72 :rule chain_m_resolution :premises (@p71 @p58) :args (@t64 @t67 (@list @t61)))
% 0.53/0.78  (step @p73 :rule bool-double-not-elim :args (@t68))
% 0.53/0.78  (step @p74 :rule evaluate :args (@t69))
% 0.53/0.78  (step @p75 :rule refl :args (@t40))
% 0.53/0.78  (step @p76 :rule cong :premises (@p75 @p74) :args (@t70))
% 0.53/0.78  (step @p77 :rule cong :premises (@p76) :args ((not @t70)))
% 0.53/0.78  (step @p78 :rule arith-leq-norm :args (@t40 0))
% 0.53/0.78  (step @p79 :rule trans :premises (@p78 @p77))
% 0.53/0.78  (step @p80 :rule cong :premises (@p79) :args ((not (<= @t40 0))))
% 0.53/0.78  (step @p81 :rule trans :premises (@p80 @p73))
% 0.53/0.78  (step @p82 :rule arith-elim-leq :args (@t40 0))
% 0.53/0.78  (step @p83 :rule symm :premises (@p82))
% 0.53/0.78  (step @p84 :rule cong :premises (@p83) :args ((not (>= 0 @t40))))
% 0.53/0.78  (step @p85 :rule arith-elim-gt :args (@t40 0))
% 0.53/0.78  (step @p86 :rule trans :premises (@p85 @p84))
% 0.53/0.78  (step @p87 :rule trans :premises (@p86 @p81))
% 0.53/0.78  (step @p88 :rule refl :args (@t41))
% 0.53/0.78  (step @p89 :rule cong :premises (@p88 @p87) :args (@t42))
% 0.53/0.78  (step @p90 :rule cong :premises (@p89) :args (@t43))
% 0.53/0.78  (step @p91 :rule eq_resolve :premises (@p14 @p90))
% 0.53/0.78  (step @p92 :rule eq-symm :args (@t71 @t73))
% 0.53/0.78  (step @p93 :rule refl :args (@t74))
% 0.53/0.78  (step @p94 :rule cong :premises (@p93 @p92) :args ((=> @t74 @t75)))
% 0.53/0.78  (assume-push @p267 @t74)
% 0.53/0.78  (step @p96 :rule instantiate :premises (@p91) :args ((@list 2 @t45)))
% 0.53/0.78  (step-pop @p268 :rule scope :premises (@p96))
% 0.53/0.78  (step @p97 :rule process_scope :premises (@p268) :args (@t75))
% 0.53/0.78  (step @p99 :rule eq_resolve :premises (@p97 @p94))
% 0.53/0.78  (step @p100 :rule implies_elim :premises (@p99))
% 0.53/0.78  (step @p101 :rule chain_m_resolution :premises (@p100 @p91) :args (@t76 @t67 (@list @t74)))
% 0.53/0.78  (step @p102 :rule bool-and-de-morgan :args (@t12 @t9 true))
% 0.53/0.78  (step @p103 :rule cong :premises (@p102) :args (@t77))
% 0.53/0.78  (step @p104 :rule cong :premises (@p103) :args (@t78))
% 0.53/0.78  (step @p105 :rule exists-elim :args ((= @t15 @t78)))
% 0.53/0.78  (step @p106 :rule trans :premises (@p105 @p104))
% 0.53/0.78  (step @p107 :rule aci_norm :args ((= (or @t79 false) @t79)))
% 0.53/0.78  (step @p108 :rule eq-refl :args (@t8))
% 0.53/0.78  (step @p109 :rule cong :premises (@p108) :args (@t80))
% 0.53/0.78  (step @p110 :rule trans :premises (@p109 @p19))
% 0.53/0.78  (step @p111 :rule refl :args (@t79))
% 0.53/0.78  (step @p112 :rule nary_cong :premises (@p111 @p110) :args (@t81))
% 0.53/0.78  (step @p113 :rule trans :premises (@p112 @p107))
% 0.53/0.78  (step @p114 :rule cong :premises (@p113) :args ((forall @t82 @t81)))
% 0.53/0.78  (step @p115 :rule quant-var-elim-eq :args ((= (forall @t86 (or (not @t85) @t84 @t83)) @t81)))
% 0.53/0.78  (step @p116 :rule refl :args (@t83))
% 0.53/0.78  (step @p117 :rule refl :args (@t84))
% 0.53/0.78  (step @p118 :rule arith_poly_norm :args ((= (* -1 (- @t8 @t10)) (* 1 (- @t10 @t8)))))
% 0.53/0.78  (step @p119 :rule arith_poly_norm_rel :premises (@p118) :args ((= @t16 @t85)))
% 0.53/0.78  (step @p120 :rule cong :premises (@p119) :args (@t83))
% 0.53/0.78  (step @p121 :rule nary_cong :premises (@p120 @p117 @p116) :args (@t87))
% 0.53/0.78  (step @p122 :rule aci_norm :args ((= @t88 @t87)))
% 0.53/0.78  (step @p123 :rule trans :premises (@p122 @p121))
% 0.53/0.78  (step @p124 :rule cong :premises (@p123) :args (@t89))
% 0.53/0.78  (step @p125 :rule trans :premises (@p124 @p115))
% 0.53/0.78  (step @p126 :rule cong :premises (@p125) :args (@t90))
% 0.53/0.78  (step @p127 :rule quant-merge-prenex :args ((= @t90 @t91)))
% 0.53/0.78  (step @p128 :rule symm :premises (@p127))
% 0.53/0.78  (step @p129 :rule quant_var_reordering :args ((= (forall @t14 @t88) @t91)))
% 0.53/0.78  (step @p130 :rule trans :premises (@p129 @p128 @p126))
% 0.53/0.78  (step @p131 :rule trans :premises (@p130 @p114))
% 0.53/0.78  (step @p132 :rule bool-and-de-morgan :args (@t12 @t16 true))
% 0.53/0.78  (step @p133 :rule cong :premises (@p132) :args (@t92))
% 0.53/0.78  (step @p134 :rule trans :premises (@p133 @p131))
% 0.53/0.78  (step @p135 :rule cong :premises (@p134) :args (@t93))
% 0.53/0.78  (step @p136 :rule exists-elim :args ((= @t18 @t93)))
% 0.53/0.78  (step @p137 :rule trans :premises (@p136 @p135))
% 0.53/0.78  (step @p138 :rule nary_cong :premises (@p137 @p106) :args (@t19))
% 0.53/0.78  (step @p139 :rule refl :args (@t20))
% 0.53/0.78  (step @p140 :rule cong :premises (@p139 @p138) :args (@t21))
% 0.53/0.78  (step @p141 :rule cong :premises (@p140) :args (@t23))
% 0.53/0.78  (step @p142 :rule eq_resolve :premises (@p5 @p141))
% 0.53/0.78  (step @p143 :rule refl :args (@t94))
% 0.53/0.78  (step @p144 :rule eq-symm :args (@t46 @t11))
% 0.53/0.78  (step @p145 :rule cong :premises (@p144) :args (@t95))
% 0.53/0.78  (step @p146 :rule nary_cong :premises (@p145 @p143) :args (@t96))
% 0.53/0.78  (step @p147 :rule cong :premises (@p146) :args (@t97))
% 0.53/0.78  (step @p148 :rule cong :premises (@p147) :args (@t98))
% 0.53/0.78  (step @p149 :rule refl :args (@t99))
% 0.53/0.78  (step @p150 :rule nary_cong :premises (@p149 @p148) :args (@t100))
% 0.53/0.78  (step @p151 :rule refl :args (@t47))
% 0.53/0.78  (step @p152 :rule cong :premises (@p151 @p150) :args (@t101))
% 0.53/0.78  (step @p153 :rule refl :args (@t102))
% 0.53/0.78  (step @p154 :rule cong :premises (@p153 @p152) :args ((=> @t102 @t101)))
% 0.53/0.78  (assume-push @p269 @t102)
% 0.53/0.78  (step @p156 :rule instantiate :premises (@p142) :args ((@list 2 @t46)))
% 0.53/0.78  (step-pop @p270 :rule scope :premises (@p156))
% 0.53/0.78  (step @p157 :rule process_scope :premises (@p270) :args (@t101))
% 0.53/0.78  (step @p159 :rule eq_resolve :premises (@p157 @p154))
% 0.53/0.78  (step @p160 :rule implies_elim :premises (@p159))
% 0.53/0.78  (step @p161 :rule chain_m_resolution :premises (@p160 @p142) :args (@t106 @t67 (@list @t102)))
% 0.53/0.78  (step @p162 :rule cnf_equiv_pos2 :args (@t106))
% 0.53/0.78  (step @p163 :rule reordering :premises (@p162) :args ((or @t47 @t107 (not @t106))))
% 0.53/0.78  (step @p164 :rule chain_m_resolution :premises (@p163 @p15 @p161) :args (@t107 @t108 (@list @t47 @t106)))
% 0.53/0.78  (step @p165 :rule bool-double-not-elim :args (@t103))
% 0.53/0.78  (step @p166 :rule refl :args (@t105))
% 0.53/0.78  (step @p167 :rule nary_cong :premises (@p166 @p165) :args ((or @t105 (not @t104))))
% 0.53/0.78  (step @p168 :rule cnf_or_neg :args (@t105 1))
% 0.53/0.78  (step @p169 :rule eq_resolve :premises (@p168 @p167))
% 0.53/0.78  (step @p170 :rule reordering :premises (@p169) :args ((or @t103 @t105)))
% 0.53/0.78  (step @p171 :rule chain_m_resolution :premises (@p170 @p164) :args (@t103 (@list true) (@list @t105)))
% 0.53/0.78  (step @p172 :rule aci_norm :args ((= (or false @t109) @t109)))
% 0.53/0.78  (step @p173 :rule refl :args (@t109))
% 0.53/0.78  (step @p174 :rule eq-refl :args (@t46))
% 0.53/0.78  (step @p175 :rule cong :premises (@p174) :args (@t110))
% 0.53/0.78  (step @p176 :rule trans :premises (@p175 @p19))
% 0.53/0.78  (step @p177 :rule nary_cong :premises (@p176 @p173) :args (@t111))
% 0.53/0.78  (step @p178 :rule trans :premises (@p177 @p172))
% 0.53/0.78  (step @p179 :rule refl :args (@t103))
% 0.53/0.78  (step @p180 :rule cong :premises (@p179 @p178) :args ((=> @t103 @t111)))
% 0.53/0.78  (assume-push @p271 @t103)
% 0.53/0.78  (step @p182 :rule instantiate :premises (@p171) :args ((@list 1 @t45)))
% 0.53/0.78  (step-pop @p272 :rule scope :premises (@p182))
% 0.53/0.78  (step @p183 :rule process_scope :premises (@p272) :args (@t111))
% 0.53/0.78  (step @p185 :rule eq_resolve :premises (@p183 @p180))
% 0.53/0.78  (step @p186 :rule implies_elim :premises (@p185))
% 0.53/0.78  (step @p187 :rule chain_m_resolution :premises (@p186 @p171) :args (@t109 @t67 (@list @t103)))
% 0.53/0.78  (step @p188 :rule cnf_equiv_pos1 :args (@t76))
% 0.53/0.78  (step @p189 :rule reordering :premises (@p188) :args ((or @t71 @t112 (not @t76))))
% 0.53/0.78  (step @p190 :rule chain_m_resolution :premises (@p189 @p187 @p101) :args (@t112 @t108 (@list @t71 @t76)))
% 0.53/0.78  (step @p191 :rule instantiate :premises (@p9) :args ((@list 2)))
% 0.53/0.78  (step @p192 :rule refl :args (@t114))
% 0.53/0.78  (step @p193 :rule bool-double-not-elim :args (@t73))
% 0.53/0.78  (step @p194 :rule refl :args (@t115))
% 0.53/0.78  (step @p195 :rule refl :args (@t118))
% 0.53/0.78  (step @p196 :rule nary_cong :premises (@p195 @p194 @p193 @p192) :args ((or @t118 @t115 (not @t112) @t114)))
% 0.53/0.78  (assume-push @p273 @t112)
% 0.53/0.78  (assume-push @p274 @t117)
% 0.53/0.78  (assume-push @p275 @t119)
% 0.53/0.78  (assume-push @p276 @t120)
% 0.53/0.78  (step @p201 :rule evaluate :args ((>= 0 0)))
% 0.53/0.78  (step @p202 :rule evaluate :args ((+ 0 -1 1)))
% 0.53/0.78  (step @p203 :rule refl :args (1))
% 0.53/0.78  (step @p204 :rule evaluate :args (@t121))
% 0.53/0.78  (step @p205 :rule evaluate :args (@t122))
% 0.53/0.78  (step @p206 :rule nary_cong :premises (@p205 @p204 @p203) :args (@t123))
% 0.53/0.78  (step @p207 :rule trans :premises (@p206 @p202))
% 0.53/0.78  (step @p208 :rule arith_poly_norm :args ((= (+ @t125 @t124 @t72) 0)))
% 0.53/0.78  (step @p209 :rule refl :args (@t72))
% 0.53/0.78  (step @p210 :rule arith_poly_norm :args ((= @t127 @t124)))
% 0.53/0.78  (step @p211 :rule refl :args (@t125))
% 0.53/0.78  (step @p212 :rule nary_cong :premises (@p211 @p210 @p209) :args (@t128))
% 0.53/0.78  (step @p213 :rule trans :premises (@p212 @p208))
% 0.53/0.78  (step @p214 :rule cong :premises (@p213 @p207) :args (@t129))
% 0.53/0.78  (step @p215 :rule trans :premises (@p214 @p201))
% 0.53/0.78  (step @p216 :rule cong :premises (@p215) :args ((not @t129)))
% 0.53/0.78  (step @p217 :rule trans :premises (@p216 @p19))
% 0.53/0.78  (step @p218 :rule arith-elim-lt :args (@t128 @t123))
% 0.53/0.78  (step @p219 :rule trans :premises (@p218 @p217))
% 0.53/0.78  (step @p220 :rule arith-elim-lt :args (@t72 1))
% 0.53/0.78  (step @p221 :rule symm :premises (@p220))
% 0.53/0.78  (step @p222 :rule eq_resolve :premises (@p190 @p221))
% 0.53/0.78  (step @p223 :rule arith_mult_neg :args (-1 @t130))
% 0.53/0.78  (step @p224 :rule arith_poly_norm :args ((= (* -1 (- @t126 1)) (* -1 (- @t72 @t116)))))
% 0.53/0.78  (step @p225 :rule arith_poly_norm_rel :premises (@p224) :args ((= @t130 @t117)))
% 0.53/0.78  (step @p226 :rule symm :premises (@p225))
% 0.53/0.78  (step @p227 :rule eq_resolve :premises (@p49 @p226))
% 0.53/0.78  (step @p228 :rule evaluate :args ((< -1 0)))
% 0.53/0.78  (step @p229 :rule true_elim :premises (@p228))
% 0.53/0.78  (step @p230 :rule and_intro :premises (@p229 @p227))
% 0.53/0.78  (step @p231 :rule modus_ponens :premises (@p230 @p223))
% 0.53/0.78  (step @p232 :rule arith_mult_neg :args (-1 @t120))
% 0.53/0.78  (step @p233 :rule and_intro :premises (@p229 @p276))
% 0.53/0.78  (step @p234 :rule modus_ponens :premises (@p233 @p232))
% 0.53/0.78  (step @p235 :rule arith_sum_ub :premises (@p234 @p231 @p222))
% 0.53/0.78  (step @p236 false :rule eq_resolve :premises (@p235 @p219))
% 0.53/0.78  (step-pop @p277 :rule scope :premises (@p236))
% 0.53/0.78  (step @p237 :rule process_scope :premises (@p277) :args (false))
% 0.53/0.78  (step @p239 :rule symm :premises (@p72))
% 0.53/0.78  (step @p240 :rule symm :premises (@p191))
% 0.53/0.78  (step @p241 :rule trans :premises (@p240 @p239))
% 0.53/0.78  (step @p242 :rule symm :premises (@p241))
% 0.53/0.79  (step @p243 false :rule contra :premises (@p242 @p237))
% 0.53/0.79  (step-pop @p278 :rule scope :premises (@p243))
% 0.53/0.79  (step-pop @p279 :rule scope :premises (@p278))
% 0.53/0.79  (step-pop @p280 :rule scope :premises (@p279))
% 0.53/0.79  (step @p244 :rule process_scope :premises (@p280) :args (false))
% 0.53/0.79  (assume-push @p281 @t117)
% 0.53/0.79  (assume-push @p282 @t64)
% 0.53/0.79  (assume-push @p283 @t112)
% 0.53/0.79  (assume-push @p284 @t113)
% 0.53/0.79  (step @p239 :rule symm :premises (@p72))
% 0.53/0.79  (step @p240 :rule symm :premises (@p191))
% 0.53/0.79  (step @p252 :rule trans :premises (@p240 @p239))
% 0.53/0.79  (step @p253 :rule and_intro :premises (@p190 @p49 @p252))
% 0.53/0.79  (step-pop @p285 :rule scope :premises (@p253))
% 0.53/0.79  (step-pop @p286 :rule scope :premises (@p285))
% 0.53/0.79  (step-pop @p287 :rule scope :premises (@p286))
% 0.53/0.79  (step-pop @p288 :rule scope :premises (@p287))
% 0.53/0.79  (step @p254 :rule process_scope :premises (@p288) :args (@t131))
% 0.53/0.79  (step @p259 :rule implies_elim :premises (@p254))
% 0.53/0.79  (step @p260 :rule resolution :premises (@p259 @p244) :args (true @t131))
% 0.53/0.79  (step @p261 :rule not_and :premises (@p260))
% 0.53/0.79  (step @p262 :rule eq_resolve :premises (@p261 @p196))
% 0.53/0.79  (step @p263 :rule reordering :premises (@p262) :args ((or @t118 @t73 @t115 @t114)))
% 0.53/0.79  (step @p264 false :rule chain_m_resolution :premises (@p263 @p191 @p190 @p72 @p49) :args (false (@list false true false false) (@list @t113 @t73 @t64 @t117)))
% 0.53/0.79  )
% 0.53/0.79  % SZS output end Proof
% 0.53/0.79  % cvc5 exiting
%------------------------------------------------------------------------------