↑ Up

cvc5---1.3.4.THM-Prf.s

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

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

% Result   : Theorem 0.38s 0.58s
% Output   : Proof 0.38s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : SEV242^5 : TPTP v9.2.1. Released v4.0.0.
% 0.12/0.13  % Command  : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM
% 0.16/0.34  % Computer : n019.cluster.edu
% 0.16/0.34  % Model    : x86_64 x86_64
% 0.16/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.16/0.34  % Memory   : 8042.1875MB
% 0.16/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.16/0.34  % CPULimit : 300
% 0.16/0.34  % WCLimit  : 300
% 0.16/0.34  % DateTime : Tue Jun  2 18:22:19 EDT 2026
% 0.16/0.35  % CPUTime  : 
% 0.29/0.50  %----Proving TH0
% 0.38/0.58  --- Run --mbqi --mbqi-enum --mbqi-enum-choice-grammar --mbqi-enum-global-syms-grammar --sygus-grammar-ho-partial --no-cegqi --no-sygus-inst at 90s...
% 0.38/0.58  % SZS status Theorem
% 0.38/0.58  % SZS output start Proof
% 0.38/0.58  (
% 0.38/0.58  (declare-sort $$unsorted 0)
% 0.38/0.58  (define @t1 () (@var "Xz" $$unsorted))
% 0.38/0.58  (define @t2 () (@var "V" (-> $$unsorted Bool)))
% 0.38/0.58  (define @t3 () (_ @t2 @t1))
% 0.38/0.58  (define @t4 () (@var "U" (-> $$unsorted Bool)))
% 0.38/0.58  (define @t5 () (_ @t4 @t1))
% 0.38/0.58  (define @t6 () (or @t5 @t3))
% 0.38/0.58  (define @t7 () (@list @t1))
% 0.38/0.58  (define @t8 () (lambda @t7 @t6))
% 0.38/0.58  (define @t9 () (@var "T" (-> (-> $$unsorted Bool) Bool)))
% 0.38/0.58  (define @t10 () (_ @t9 @t8))
% 0.38/0.58  (define @t11 () (@var "Xx" $$unsorted))
% 0.38/0.58  (define @t12 () (@var "S" (-> $$unsorted Bool)))
% 0.38/0.58  (define @t13 () (_ @t12 @t11))
% 0.38/0.58  (define @t14 () (or (= @t12 @t4) (= @t12 @t2)))
% 0.38/0.58  (define @t15 () (and @t14 @t13))
% 0.38/0.58  (define @t16 () (@list @t12))
% 0.38/0.58  (define @t17 () (exists @t16 @t15))
% 0.38/0.58  (define @t18 () (@list @t11))
% 0.38/0.58  (define @t19 () (lambda @t18 @t17))
% 0.38/0.58  (define @t20 () (=> (_ @t9 @t19) @t10))
% 0.38/0.58  (define @t21 () (@list @t9 @t4 @t2))
% 0.38/0.58  (define @t22 () (forall @t21 @t20))
% 0.38/0.58  (define @t23 () (@var "Q" (-> $$unsorted Bool)))
% 0.38/0.58  (define @t24 () (@var "P" (-> $$unsorted Bool)))
% 0.38/0.58  (define @t25 () (= @t24 @t23))
% 0.38/0.58  (define @t26 () (@var "X" $$unsorted))
% 0.38/0.58  (define @t27 () (_ @t23 @t26))
% 0.38/0.58  (define @t28 () (_ @t24 @t26))
% 0.38/0.58  (define @t29 () (= @t28 @t27))
% 0.38/0.58  (define @t30 () (@list @t26))
% 0.38/0.58  (define @t31 () (forall @t30 @t29))
% 0.38/0.58  (define @t32 () (=> @t31 @t25))
% 0.38/0.58  (define @t33 () (@list @t24 @t23))
% 0.38/0.58  (define @t34 () (forall @t33 @t32))
% 0.38/0.58  (define @t35 () (=> @t34 @t22))
% 0.38/0.58  (define @t36 () (not @t35))
% 0.38/0.58  (define @t37 () (_ @t2 @t1))
% 0.38/0.58  (define @t38 () (_ @t4 @t1))
% 0.38/0.58  (define @t39 () (or @t38 @t37))
% 0.38/0.58  (define @t40 () (lambda @t7 @t39))
% 0.38/0.58  (define @t41 () (_ @t9 @t40))
% 0.38/0.58  (define @t42 () (_ @t2 @t11))
% 0.38/0.58  (define @t43 () (not @t42))
% 0.38/0.58  (define @t44 () (_ @t4 @t11))
% 0.38/0.58  (define @t45 () (not @t44))
% 0.38/0.58  (define @t46 () (and @t45 @t43))
% 0.38/0.58  (define @t47 () (not @t46))
% 0.38/0.58  (define @t48 () (lambda @t18 @t47))
% 0.38/0.58  (define @t49 () (_ @t9 @t48))
% 0.38/0.58  (define @t50 () (forall @t21 (or (not @t49) @t41)))
% 0.38/0.58  (define @t51 () (@quantifiers_skolemize @t50 2))
% 0.38/0.58  (define @t52 () (_ @t51 @t11))
% 0.38/0.58  (define @t53 () (@quantifiers_skolemize @t50 1))
% 0.38/0.58  (define @t54 () (_ @t53 @t11))
% 0.38/0.58  (define @t55 () (or @t54 @t52))
% 0.38/0.58  (define @t56 () (not @t52))
% 0.38/0.58  (define @t57 () (not @t54))
% 0.38/0.58  (define @t58 () (not (and @t57 @t56)))
% 0.38/0.58  (define @t59 () (lambda @t18 @t58))
% 0.38/0.58  (define @t60 () (@purify @t59))
% 0.38/0.58  (define @t61 () (_ @t60 @t11))
% 0.38/0.58  (define @t62 () (= @t58 @t61))
% 0.38/0.58  (define @t63 () (_ @t59 @t11))
% 0.38/0.58  (define @t64 () (= @t61 @t63))
% 0.38/0.58  (define @t65 () (forall @t18 @t64))
% 0.38/0.58  (define @t66 () (@const 0 $$unsorted))
% 0.38/0.58  (define @t67 () (@list @t66))
% 0.38/0.58  (define @t68 () (lambda @t18 (not (and (not (_ @t4 @t11)) (not (_ @t2 @t11))))))
% 0.38/0.58  (define @t69 () (_ @t9 @t48))
% 0.38/0.58  (define @t70 () (not @t69))
% 0.38/0.58  (define @t71 () (or @t70 @t10))
% 0.38/0.58  (define @t72 () (not (= @t2 @t2)))
% 0.38/0.58  (define @t73 () (or @t72 @t43))
% 0.38/0.58  (define @t74 () (@var "BOUND_VARIABLE_7488" (-> $$unsorted Bool)))
% 0.38/0.58  (define @t75 () (not (_ @t74 @t11)))
% 0.38/0.58  (define @t76 () (not (= @t2 @t74)))
% 0.38/0.58  (define @t77 () (@list @t74))
% 0.38/0.58  (define @t78 () (or @t76 @t76 @t75))
% 0.38/0.58  (define @t79 () (or @t76 @t75))
% 0.38/0.58  (define @t80 () (forall @t77 @t79))
% 0.38/0.58  (define @t81 () (not (= @t4 @t4)))
% 0.38/0.58  (define @t82 () (or @t81 @t45))
% 0.38/0.58  (define @t83 () (@var "BOUND_VARIABLE_7479" (-> $$unsorted Bool)))
% 0.38/0.58  (define @t84 () (not (_ @t83 @t11)))
% 0.38/0.58  (define @t85 () (not (= @t4 @t83)))
% 0.38/0.58  (define @t86 () (@list @t83))
% 0.38/0.58  (define @t87 () (or @t85 @t85 @t84))
% 0.38/0.58  (define @t88 () (or @t85 @t84))
% 0.38/0.58  (define @t89 () (forall @t86 @t88))
% 0.38/0.58  (define @t90 () (_ @t12 @t11))
% 0.38/0.58  (define @t91 () (not @t90))
% 0.38/0.58  (define @t92 () (= @t2 @t12))
% 0.38/0.58  (define @t93 () (not @t92))
% 0.38/0.58  (define @t94 () (or @t93 @t91))
% 0.38/0.58  (define @t95 () (forall @t16 @t94))
% 0.38/0.58  (define @t96 () (@list @t12))
% 0.38/0.58  (define @t97 () (= @t4 @t12))
% 0.38/0.58  (define @t98 () (not @t97))
% 0.38/0.58  (define @t99 () (or @t98 @t91))
% 0.38/0.58  (define @t100 () (forall @t16 @t99))
% 0.38/0.58  (define @t101 () (and @t100 @t95))
% 0.38/0.58  (define @t102 () (and @t98 @t93))
% 0.38/0.58  (define @t103 () (not @t13))
% 0.38/0.58  (define @t104 () (or @t102 @t103))
% 0.38/0.58  (define @t105 () (or @t97 @t92))
% 0.38/0.58  (define @t106 () (and @t105 @t13))
% 0.38/0.58  (define @t107 () (forall @t16 (not @t106)))
% 0.38/0.58  (define @t108 () (not @t107))
% 0.38/0.58  (define @t109 () (_ @t23 @t26))
% 0.38/0.58  (define @t110 () (_ @t24 @t26))
% 0.38/0.58  (define @t111 () (forall @t30 (= @t110 @t109)))
% 0.38/0.58  (define @t112 () (or (_ @t53 @t1) (_ @t51 @t1)))
% 0.38/0.58  (define @t113 () (lambda @t7 @t112))
% 0.38/0.58  (define @t114 () (@purify @t113))
% 0.38/0.58  (define @t115 () (@quantifiers_skolemize @t50 0))
% 0.38/0.58  (define @t116 () (_ @t115 @t114))
% 0.38/0.58  (define @t117 () (_ @t115 @t60))
% 0.38/0.58  (define @t118 () (not @t117))
% 0.38/0.58  (define @t119 () (or @t118 @t116))
% 0.38/0.58  (define @t120 () (not @t119))
% 0.38/0.58  (define @t121 () (not @t50))
% 0.38/0.58  (define @t122 () (_ @t115 @t113))
% 0.38/0.58  (define @t123 () (_ @t115 @t59))
% 0.38/0.58  (define @t124 () (not @t123))
% 0.38/0.58  (define @t125 () (or @t124 @t122))
% 0.38/0.58  (define @t126 () (not @t125))
% 0.38/0.58  (define @t127 () (@list true))
% 0.38/0.58  (define @t128 () (@list @t119))
% 0.38/0.58  (define @t129 () (not @t116))
% 0.38/0.58  (define @t130 () (= @t114 @t60))
% 0.38/0.58  (define @t131 () (not @t130))
% 0.38/0.58  (define @t132 () (and @t129 @t130 @t117))
% 0.38/0.58  (define @t133 () (@list true false))
% 0.38/0.58  (define @t134 () (_ @t60 @t66))
% 0.38/0.58  (define @t135 () (_ @t114 @t66))
% 0.38/0.58  (define @t136 () (= @t135 @t134))
% 0.38/0.58  (define @t137 () (not @t136))
% 0.38/0.58  (define @t138 () (_ @t114 @t1))
% 0.38/0.58  (define @t139 () (_ @t113 @t1))
% 0.38/0.58  (define @t140 () (= @t138 @t139))
% 0.38/0.58  (define @t141 () (forall @t7 @t140))
% 0.38/0.58  (define @t142 () (or (_ @t53 @t66) (_ @t51 @t66)))
% 0.38/0.58  (define @t143 () (forall @t7 (= @t112 @t138)))
% 0.38/0.58  (define @t144 () (= @t142 @t135))
% 0.38/0.58  (define @t145 () (= @t135 @t142))
% 0.38/0.58  (define @t146 () (not @t145))
% 0.38/0.58  (define @t147 () (not @t135))
% 0.38/0.58  (define @t148 () (= @t134 @t142))
% 0.38/0.58  (define @t149 () (not @t148))
% 0.38/0.58  (define @t150 () (not @t142))
% 0.38/0.58  (assume @p1 @t36)
% 0.38/0.58  (assume @p2 true)
% 0.38/0.58  (step @p3 :rule eq-symm :args (@t55 @t61))
% 0.38/0.58  (step @p4 :rule cong :premises (@p3) :args ((forall @t18 (= @t55 @t61))))
% 0.38/0.58  (step @p5 :rule refl :args (@t61))
% 0.38/0.58  (step @p6 :rule bool-double-not-elim :args (@t52))
% 0.38/0.58  (step @p7 :rule bool-double-not-elim :args (@t54))
% 0.38/0.58  (step @p8 :rule nary_cong :premises (@p7 @p6) :args ((or (not @t57) (not @t56))))
% 0.38/0.58  (step @p9 :rule bool-and-de-morgan :args (@t57 @t56 true))
% 0.38/0.58  (step @p10 :rule trans :premises (@p9 @p8))
% 0.38/0.58  (step @p11 :rule cong :premises (@p10 @p5) :args (@t62))
% 0.38/0.58  (step @p12 :rule cong :premises (@p11) :args ((forall @t18 @t62)))
% 0.38/0.58  (step @p13 :rule trans :premises (@p12 @p4))
% 0.38/0.58  (step @p14 :rule eq-symm :args (@t61 @t58))
% 0.38/0.58  (step @p15 :rule beta-reduce :args ((= @t63 @t58)))
% 0.38/0.58  (step @p16 :rule refl :args (@t61))
% 0.38/0.58  (step @p17 :rule cong :premises (@p16 @p15) :args (@t64))
% 0.38/0.58  (step @p18 :rule trans :premises (@p17 @p14))
% 0.38/0.58  (step @p19 :rule cong :premises (@p18) :args (@t65))
% 0.38/0.58  (step @p20 :rule trans :premises (@p19 @p13))
% 0.38/0.58  (step @p21 :rule quant-unused-vars :args ((= (forall @t18 true) true)))
% 0.38/0.58  (step @p22 :rule eq-refl :args (@t63))
% 0.38/0.58  (step @p23 :rule cong :premises (@p22) :args ((forall @t18 (= @t63 @t63))))
% 0.38/0.58  (step @p24 :rule trans :premises (@p23 @p21))
% 0.38/0.58  (step @p25 :rule refl :args (@t63))
% 0.38/0.58  (step @p26 :rule refl :args (@t11))
% 0.38/0.58  (step @p27 :rule skolem_intro :args (@t60))
% 0.38/0.58  (step @p28 :rule ho_cong :premises (@p27 @p26))
% 0.38/0.58  (step @p29 :rule cong :premises (@p28 @p25) :args (@t64))
% 0.38/0.58  (step @p30 :rule cong :premises (@p29) :args (@t65))
% 0.38/0.58  (step @p31 :rule trans :premises (@p30 @p24))
% 0.38/0.58  (step @p32 :rule true_elim :premises (@p31))
% 0.38/0.58  (step @p33 :rule eq_resolve :premises (@p32 @p20))
% 0.38/0.58  (step @p34 :rule instantiate :premises (@p33) :args (@t67))
% 0.38/0.58  (step @p35 :rule refl :args ((_ @t9 @t8)))
% 0.38/0.58  (step @p36 :rule refl :args (@t37))
% 0.38/0.58  (step @p37 :rule refl :args (@t38))
% 0.38/0.58  (step @p38 :rule nary_cong :premises (@p37 @p36) :args (@t39))
% 0.38/0.58  (step @p39 :rule cong :premises (@p38) :args (@t40))
% 0.38/0.58  (step @p40 :rule cong :premises (@p39) :args (@t41))
% 0.38/0.58  (step @p41 :rule trans :premises (@p40 @p35))
% 0.38/0.58  (step @p42 :rule refl :args (@t9))
% 0.38/0.58  (step @p43 :rule ho_cong :premises (@p42 @p39))
% 0.38/0.58  (step @p44 :rule cong :premises (@p43 @p41) :args ((= (_ @t9 @t40) @t41)))
% 0.38/0.58  (step @p45 :rule symm :premises (@p44))
% 0.38/0.58  (step @p46 :rule refl :args (@t10))
% 0.38/0.58  (step @p47 :rule eq_resolve :premises (@p46 @p45))
% 0.38/0.58  (step @p48 :rule refl :args (@t3))
% 0.38/0.58  (step @p49 :rule cong :premises (@p48 @p36) :args ((= @t3 @t37)))
% 0.38/0.58  (step @p50 :rule symm :premises (@p49))
% 0.38/0.58  (step @p51 :rule eq_resolve :premises (@p48 @p50))
% 0.38/0.58  (step @p52 :rule refl :args (@t5))
% 0.38/0.58  (step @p53 :rule cong :premises (@p52 @p37) :args ((= @t5 @t38)))
% 0.38/0.58  (step @p54 :rule symm :premises (@p53))
% 0.38/0.58  (step @p55 :rule eq_resolve :premises (@p52 @p54))
% 0.38/0.58  (step @p56 :rule nary_cong :premises (@p55 @p51) :args (@t6))
% 0.38/0.58  (step @p57 :rule cong :premises (@p56) :args (@t8))
% 0.38/0.58  (step @p58 :rule ho_cong :premises (@p42 @p57))
% 0.38/0.58  (step @p59 :rule trans :premises (@p58 @p47))
% 0.38/0.58  (step @p60 :rule refl :args ((_ @t9 @t68)))
% 0.38/0.58  (step @p61 :rule refl :args (@t42))
% 0.38/0.58  (step @p62 :rule cong :premises (@p61) :args (@t43))
% 0.38/0.58  (step @p63 :rule refl :args (@t44))
% 0.38/0.58  (step @p64 :rule cong :premises (@p63) :args (@t45))
% 0.38/0.58  (step @p65 :rule nary_cong :premises (@p64 @p62) :args (@t46))
% 0.38/0.58  (step @p66 :rule cong :premises (@p65) :args (@t47))
% 0.38/0.58  (step @p67 :rule cong :premises (@p66) :args (@t48))
% 0.38/0.58  (step @p68 :rule cong :premises (@p67) :args (@t49))
% 0.38/0.58  (step @p69 :rule trans :premises (@p68 @p60))
% 0.38/0.58  (step @p70 :rule ho_cong :premises (@p42 @p67))
% 0.38/0.58  (step @p71 :rule cong :premises (@p70 @p69) :args ((= @t69 @t49)))
% 0.38/0.58  (step @p72 :rule symm :premises (@p71))
% 0.38/0.58  (step @p73 :rule refl :args ((_ @t9 @t68)))
% 0.38/0.58  (step @p74 :rule eq_resolve :premises (@p73 @p72))
% 0.38/0.58  (step @p75 :rule cong :premises (@p74) :args (@t70))
% 0.38/0.58  (step @p76 :rule nary_cong :premises (@p75 @p59) :args (@t71))
% 0.38/0.58  (step @p77 :rule cong :premises (@p76) :args ((forall @t21 @t71)))
% 0.38/0.58  (step @p78 :rule bool-impl-elim :args (@t69 @t10))
% 0.38/0.58  (step @p79 :rule cong :premises (@p78) :args ((forall @t21 (=> @t69 @t10))))
% 0.38/0.58  (step @p80 :rule trans :premises (@p79 @p77))
% 0.38/0.58  (step @p81 :rule refl :args (@t10))
% 0.38/0.58  (step @p82 :rule aci_norm :args ((= (or false @t43) @t43)))
% 0.38/0.58  (step @p83 :rule refl :args (@t43))
% 0.38/0.58  (step @p84 :rule evaluate :args ((not true)))
% 0.38/0.58  (step @p85 :rule eq-refl :args (@t2))
% 0.38/0.58  (step @p86 :rule cong :premises (@p85) :args (@t72))
% 0.38/0.58  (step @p87 :rule trans :premises (@p86 @p84))
% 0.38/0.58  (step @p88 :rule nary_cong :premises (@p87 @p83) :args (@t73))
% 0.38/0.58  (step @p89 :rule trans :premises (@p88 @p82))
% 0.38/0.58  (step @p90 :rule quant-var-elim-eq :args ((= (forall @t77 (or (not (= @t74 @t2)) @t76 @t75)) @t73)))
% 0.38/0.58  (step @p91 :rule refl :args (@t75))
% 0.38/0.58  (step @p92 :rule refl :args (@t76))
% 0.38/0.58  (step @p93 :rule eq-symm :args (@t2 @t74))
% 0.38/0.58  (step @p94 :rule cong :premises (@p93) :args (@t76))
% 0.38/0.58  (step @p95 :rule nary_cong :premises (@p94 @p92 @p91) :args (@t78))
% 0.38/0.58  (step @p96 :rule aci_norm :args ((= @t79 @t78)))
% 0.38/0.58  (step @p97 :rule trans :premises (@p96 @p95))
% 0.38/0.58  (step @p98 :rule cong :premises (@p97) :args (@t80))
% 0.38/0.58  (step @p99 :rule trans :premises (@p98 @p90))
% 0.38/0.58  (step @p100 :rule trans :premises (@p99 @p89))
% 0.38/0.58  (step @p101 :rule aci_norm :args ((= (or false @t45) @t45)))
% 0.38/0.58  (step @p102 :rule refl :args (@t45))
% 0.38/0.58  (step @p103 :rule eq-refl :args (@t4))
% 0.38/0.58  (step @p104 :rule cong :premises (@p103) :args (@t81))
% 0.38/0.58  (step @p105 :rule trans :premises (@p104 @p84))
% 0.38/0.58  (step @p106 :rule nary_cong :premises (@p105 @p102) :args (@t82))
% 0.38/0.58  (step @p107 :rule trans :premises (@p106 @p101))
% 0.38/0.58  (step @p108 :rule quant-var-elim-eq :args ((= (forall @t86 (or (not (= @t83 @t4)) @t85 @t84)) @t82)))
% 0.38/0.58  (step @p109 :rule refl :args (@t84))
% 0.38/0.58  (step @p110 :rule refl :args (@t85))
% 0.38/0.58  (step @p111 :rule eq-symm :args (@t4 @t83))
% 0.38/0.58  (step @p112 :rule cong :premises (@p111) :args (@t85))
% 0.38/0.58  (step @p113 :rule nary_cong :premises (@p112 @p110 @p109) :args (@t87))
% 0.38/0.58  (step @p114 :rule aci_norm :args ((= @t88 @t87)))
% 0.38/0.58  (step @p115 :rule trans :premises (@p114 @p113))
% 0.38/0.58  (step @p116 :rule cong :premises (@p115) :args (@t89))
% 0.38/0.58  (step @p117 :rule trans :premises (@p116 @p108))
% 0.38/0.58  (step @p118 :rule trans :premises (@p117 @p107))
% 0.38/0.58  (step @p119 :rule nary_cong :premises (@p118 @p100) :args ((and @t89 @t80)))
% 0.38/0.58  (step @p120 :rule alpha_equiv :args (@t95 @t96 (@list @t74)))
% 0.38/0.58  (step @p121 :rule alpha_equiv :args (@t100 @t96 (@list @t83)))
% 0.38/0.58  (step @p122 :rule nary_cong :premises (@p121 @p120) :args (@t101))
% 0.38/0.58  (step @p123 :rule quant-miniscope-and :args ((= (forall @t16 (and @t99 @t94)) @t101)))
% 0.38/0.58  (step @p124 :rule trans :premises (@p123 @p122))
% 0.38/0.58  (step @p125 :rule trans :premises (@p124 @p119))
% 0.38/0.58  (step @p126 :rule bool-or-and-distrib :args (@t98 @t93 true @t91 false))
% 0.38/0.58  (step @p127 :rule cong :premises (@p126) :args ((forall @t16 (or @t102 @t91))))
% 0.38/0.58  (step @p128 :rule trans :premises (@p127 @p125))
% 0.38/0.58  (step @p129 :rule refl :args (@t90))
% 0.38/0.58  (step @p130 :rule refl :args (@t13))
% 0.38/0.58  (step @p131 :rule cong :premises (@p130 @p129) :args ((= @t13 @t90)))
% 0.38/0.58  (step @p132 :rule symm :premises (@p131))
% 0.38/0.58  (step @p133 :rule eq_resolve :premises (@p130 @p132))
% 0.38/0.58  (step @p134 :rule cong :premises (@p133) :args (@t103))
% 0.38/0.58  (step @p135 :rule refl :args (@t102))
% 0.38/0.58  (step @p136 :rule nary_cong :premises (@p135 @p134) :args (@t104))
% 0.38/0.58  (step @p137 :rule cong :premises (@p136) :args ((forall @t16 @t104)))
% 0.38/0.58  (step @p138 :rule trans :premises (@p137 @p128))
% 0.38/0.58  (step @p139 :rule refl :args (@t103))
% 0.38/0.58  (step @p140 :rule bool-or-de-morgan :args (@t97 @t92 false))
% 0.38/0.58  (step @p141 :rule nary_cong :premises (@p140 @p139) :args ((or (not @t105) @t103)))
% 0.38/0.58  (step @p142 :rule bool-and-de-morgan :args (@t105 @t13 true))
% 0.38/0.58  (step @p143 :rule trans :premises (@p142 @p141))
% 0.38/0.58  (step @p144 :rule cong :premises (@p143) :args (@t107))
% 0.38/0.58  (step @p145 :rule trans :premises (@p144 @p138))
% 0.38/0.58  (step @p146 :rule cong :premises (@p145) :args (@t108))
% 0.38/0.58  (step @p147 :rule exists-elim :args ((= (exists @t16 @t106) @t108)))
% 0.38/0.58  (step @p148 :rule trans :premises (@p147 @p146))
% 0.38/0.58  (step @p149 :rule refl :args (@t13))
% 0.38/0.58  (step @p150 :rule eq-symm :args (@t12 @t2))
% 0.38/0.58  (step @p151 :rule eq-symm :args (@t12 @t4))
% 0.38/0.58  (step @p152 :rule nary_cong :premises (@p151 @p150) :args (@t14))
% 0.38/0.58  (step @p153 :rule nary_cong :premises (@p152 @p149) :args (@t15))
% 0.38/0.58  (step @p154 :rule cong :premises (@p153) :args (@t17))
% 0.38/0.58  (step @p155 :rule trans :premises (@p154 @p148))
% 0.38/0.58  (step @p156 :rule cong :premises (@p155) :args (@t19))
% 0.38/0.58  (step @p157 :rule refl :args (@t9))
% 0.38/0.58  (step @p158 :rule ho_cong :premises (@p157 @p156))
% 0.38/0.58  (step @p159 :rule cong :premises (@p158 @p81) :args (@t20))
% 0.38/0.58  (step @p160 :rule cong :premises (@p159) :args (@t22))
% 0.38/0.58  (step @p161 :rule trans :premises (@p160 @p80))
% 0.38/0.58  (step @p162 :rule bool-impl-elim :args (@t111 @t25))
% 0.38/0.58  (step @p163 :rule cong :premises (@p162) :args ((forall @t33 (=> @t111 @t25))))
% 0.38/0.58  (step @p164 :rule refl :args (@t25))
% 0.38/0.58  (step @p165 :rule refl :args (@t109))
% 0.38/0.58  (step @p166 :rule refl :args (@t27))
% 0.38/0.58  (step @p167 :rule cong :premises (@p166 @p165) :args ((= @t27 @t109)))
% 0.38/0.58  (step @p168 :rule symm :premises (@p167))
% 0.38/0.58  (step @p169 :rule eq_resolve :premises (@p166 @p168))
% 0.38/0.58  (step @p170 :rule refl :args (@t110))
% 0.38/0.58  (step @p171 :rule refl :args (@t28))
% 0.38/0.58  (step @p172 :rule cong :premises (@p171 @p170) :args ((= @t28 @t110)))
% 0.38/0.58  (step @p173 :rule symm :premises (@p172))
% 0.38/0.58  (step @p174 :rule eq_resolve :premises (@p171 @p173))
% 0.38/0.58  (step @p175 :rule cong :premises (@p174 @p169) :args (@t29))
% 0.38/0.58  (step @p176 :rule cong :premises (@p175) :args (@t31))
% 0.38/0.58  (step @p177 :rule cong :premises (@p176 @p164) :args (@t32))
% 0.38/0.58  (step @p178 :rule cong :premises (@p177) :args (@t34))
% 0.38/0.58  (step @p179 :rule trans :premises (@p178 @p163))
% 0.38/0.58  (step @p180 :rule cong :premises (@p179 @p161) :args (@t35))
% 0.38/0.58  (step @p181 :rule cong :premises (@p180) :args (@t36))
% 0.38/0.58  (step @p182 :rule eq_resolve :premises (@p1 @p181))
% 0.38/0.58  (step @p183 :rule not_implies_elim2 :premises (@p182))
% 0.38/0.58  (step @p184 :rule refl :args (@t120))
% 0.38/0.58  (step @p185 :rule bool-double-not-elim :args (@t50))
% 0.38/0.58  (step @p186 :rule nary_cong :premises (@p185 @p184) :args ((or (not @t121) @t120)))
% 0.38/0.58  (step @p187 :rule eq-refl :args (@t113))
% 0.38/0.58  (step @p188 :rule skolem_intro :args (@t114))
% 0.38/0.58  (step @p189 :rule refl :args (@t113))
% 0.38/0.58  (step @p190 :rule cong :premises (@p189 @p188) :args ((= @t113 @t114)))
% 0.38/0.58  (step @p191 :rule trans :premises (@p190 @p187))
% 0.38/0.58  (step @p192 :rule true_elim :premises (@p191))
% 0.38/0.58  (step @p193 :rule cong :premises (@p192) :args (@t122))
% 0.38/0.58  (step @p194 :rule eq-refl :args (@t59))
% 0.38/0.58  (step @p195 :rule refl :args (@t59))
% 0.38/0.58  (step @p196 :rule cong :premises (@p195 @p27) :args ((= @t59 @t60)))
% 0.38/0.58  (step @p197 :rule trans :premises (@p196 @p194))
% 0.38/0.58  (step @p198 :rule true_elim :premises (@p197))
% 0.38/0.58  (step @p199 :rule cong :premises (@p198) :args (@t123))
% 0.38/0.58  (step @p200 :rule cong :premises (@p199) :args (@t124))
% 0.38/0.58  (step @p201 :rule nary_cong :premises (@p200 @p193) :args (@t125))
% 0.38/0.58  (step @p202 :rule cong :premises (@p201) :args (@t126))
% 0.38/0.58  (step @p203 :rule refl :args (@t121))
% 0.38/0.58  (step @p204 :rule cong :premises (@p203 @p202) :args ((=> @t121 @t126)))
% 0.38/0.58  (assume-push @p300 @t121)
% 0.38/0.58  (step @p206 :rule skolemize :premises (@p183))
% 0.38/0.58  (step-pop @p301 :rule scope :premises (@p206))
% 0.38/0.58  (step @p207 :rule process_scope :premises (@p301) :args (@t126))
% 0.38/0.58  (step @p209 :rule eq_resolve :premises (@p207 @p204))
% 0.38/0.58  (step @p210 :rule implies_elim :premises (@p209))
% 0.38/0.58  (step @p211 :rule eq_resolve :premises (@p210 @p186))
% 0.38/0.58  (step @p212 :rule chain_m_resolution :premises (@p211 @p183) :args (@t120 @t127 (@list @t50)))
% 0.38/0.58  (step @p213 :rule bool-double-not-elim :args (@t117))
% 0.38/0.58  (step @p214 :rule refl :args (@t119))
% 0.38/0.58  (step @p215 :rule nary_cong :premises (@p214 @p213) :args ((or @t119 (not @t118))))
% 0.38/0.58  (step @p216 :rule cnf_or_neg :args (@t119 0))
% 0.38/0.58  (step @p217 :rule eq_resolve :premises (@p216 @p215))
% 0.38/0.58  (step @p218 :rule reordering :premises (@p217) :args ((or @t117 @t119)))
% 0.38/0.58  (step @p219 :rule chain_m_resolution :premises (@p218 @p212) :args (@t117 @t127 @t128))
% 0.38/0.58  (step @p220 :rule cnf_or_neg :args (@t119 1))
% 0.38/0.58  (step @p221 :rule chain_m_resolution :premises (@p220 @p212) :args (@t129 @t127 @t128))
% 0.38/0.58  (step @p222 :rule refl :args (@t131))
% 0.38/0.58  (step @p223 :rule bool-double-not-elim :args (@t116))
% 0.38/0.58  (step @p224 :rule refl :args (@t118))
% 0.38/0.58  (step @p225 :rule nary_cong :premises (@p224 @p223 @p222) :args ((or @t118 (not @t129) @t131)))
% 0.38/0.58  (assume-push @p302 @t129)
% 0.38/0.58  (assume-push @p303 @t130)
% 0.38/0.58  (assume-push @p304 @t117)
% 0.38/0.58  (step @p229 :rule evaluate :args ((= true false)))
% 0.38/0.58  (step @p230 :rule false_intro :premises (@p221))
% 0.38/0.58  (step @p231 :rule symm :premises (@p303))
% 0.38/0.58  (step @p232 :rule cong :premises (@p231) :args (@t117))
% 0.38/0.58  (step @p233 :rule true_intro :premises (@p219))
% 0.38/0.58  (step @p234 :rule symm :premises (@p233))
% 0.38/0.58  (step @p235 :rule trans :premises (@p234 @p232 @p230))
% 0.38/0.58  (step @p236 false :rule eq_resolve :premises (@p235 @p229))
% 0.38/0.58  (step-pop @p305 :rule scope :premises (@p236))
% 0.38/0.58  (step-pop @p306 :rule scope :premises (@p305))
% 0.38/0.58  (step-pop @p307 :rule scope :premises (@p306))
% 0.38/0.58  (step @p237 :rule process_scope :premises (@p307) :args (false))
% 0.38/0.58  (assume-push @p308 @t117)
% 0.38/0.58  (assume-push @p309 @t129)
% 0.38/0.58  (assume-push @p310 @t130)
% 0.38/0.58  (step @p244 :rule and_intro :premises (@p221 @p310 @p219))
% 0.38/0.58  (step-pop @p311 :rule scope :premises (@p244))
% 0.38/0.58  (step-pop @p312 :rule scope :premises (@p311))
% 0.38/0.58  (step-pop @p313 :rule scope :premises (@p312))
% 0.38/0.58  (step @p245 :rule process_scope :premises (@p313) :args (@t132))
% 0.38/0.58  (step @p249 :rule implies_elim :premises (@p245))
% 0.38/0.58  (step @p250 :rule resolution :premises (@p249 @p237) :args (true @t132))
% 0.38/0.58  (step @p251 :rule not_and :premises (@p250))
% 0.38/0.58  (step @p252 :rule eq_resolve :premises (@p251 @p225))
% 0.38/0.58  (step @p253 :rule reordering :premises (@p252) :args ((or @t116 @t118 @t131)))
% 0.38/0.58  (step @p254 :rule chain_m_resolution :premises (@p253 @p221 @p219) :args (@t131 @t133 (@list @t116 @t117)))
% 0.38/0.58  ; WARNING: add trust step for TRUST
% 0.38/0.58  ; trust TRUST THEORY_LEMMA
% 0.38/0.58  (step @p255 :rule trust :premises () :args ((or @t130 @t137)))
% 0.38/0.58  (step @p256 :rule chain_m_resolution :premises (@p255 @p254) :args (@t137 @t127 (@list @t130)))
% 0.38/0.58  (step @p257 :rule cnf_equiv_neg2 :args (@t136))
% 0.38/0.58  (step @p258 :rule eq-symm :args (@t138 @t112))
% 0.38/0.58  (step @p259 :rule beta-reduce :args ((= @t139 @t112)))
% 0.38/0.58  (step @p260 :rule refl :args (@t138))
% 0.38/0.58  (step @p261 :rule cong :premises (@p260 @p259) :args (@t140))
% 0.38/0.58  (step @p262 :rule trans :premises (@p261 @p258))
% 0.38/0.58  (step @p263 :rule cong :premises (@p262) :args (@t141))
% 0.38/0.58  (step @p264 :rule quant-unused-vars :args ((= (forall @t7 true) true)))
% 0.38/0.58  (step @p265 :rule eq-refl :args (@t139))
% 0.38/0.58  (step @p266 :rule cong :premises (@p265) :args ((forall @t7 (= @t139 @t139))))
% 0.38/0.58  (step @p267 :rule trans :premises (@p266 @p264))
% 0.38/0.58  (step @p268 :rule refl :args (@t139))
% 0.38/0.58  (step @p269 :rule refl :args (@t1))
% 0.38/0.58  (step @p270 :rule ho_cong :premises (@p188 @p269))
% 0.38/0.58  (step @p271 :rule cong :premises (@p270 @p268) :args (@t140))
% 0.38/0.58  (step @p272 :rule cong :premises (@p271) :args (@t141))
% 0.38/0.58  (step @p273 :rule trans :premises (@p272 @p267))
% 0.38/0.58  (step @p274 :rule true_elim :premises (@p273))
% 0.38/0.58  (step @p275 :rule eq_resolve :premises (@p274 @p263))
% 0.38/0.58  (step @p276 :rule eq-symm :args (@t142 @t135))
% 0.38/0.58  (step @p277 :rule refl :args (@t143))
% 0.38/0.58  (step @p278 :rule cong :premises (@p277 @p276) :args ((=> @t143 @t144)))
% 0.38/0.58  (assume-push @p314 @t143)
% 0.38/0.58  (step @p280 :rule instantiate :premises (@p275) :args (@t67))
% 0.38/0.58  (step-pop @p315 :rule scope :premises (@p280))
% 0.38/0.58  (step @p281 :rule process_scope :premises (@p315) :args (@t144))
% 0.38/0.58  (step @p283 :rule eq_resolve :premises (@p281 @p278))
% 0.38/0.58  (step @p284 :rule implies_elim :premises (@p283))
% 0.38/0.58  (step @p285 :rule chain_m_resolution :premises (@p284 @p275) :args (@t145 (@list false) (@list @t143)))
% 0.38/0.58  (step @p286 :rule cnf_equiv_pos1 :args (@t145))
% 0.38/0.58  (step @p287 :rule reordering :premises (@p286) :args ((or @t147 @t142 @t146)))
% 0.38/0.58  (step @p288 :rule cnf_equiv_pos2 :args (@t148))
% 0.38/0.58  (step @p289 :rule reordering :premises (@p288) :args ((or @t134 @t150 @t149)))
% 0.38/0.58  (step @p290 :rule chain_m_resolution :premises (@p289 @p34 @p287 @p285 @p257 @p256) :args (@t147 (@list false false false true true) (@list @t148 @t142 @t145 @t134 @t136)))
% 0.38/0.58  (step @p291 :rule cnf_equiv_neg1 :args (@t136))
% 0.38/0.58  (step @p292 :rule reordering :premises (@p291) :args ((or @t135 @t134 @t136)))
% 0.38/0.58  (step @p293 :rule chain_m_resolution :premises (@p292 @p290 @p256) :args (@t134 (@list true true) (@list @t135 @t136)))
% 0.38/0.58  (step @p294 :rule cnf_equiv_pos2 :args (@t145))
% 0.38/0.58  (step @p295 :rule reordering :premises (@p294) :args ((or @t135 @t150 @t146)))
% 0.38/0.58  (step @p296 :rule chain_m_resolution :premises (@p295 @p290 @p285) :args (@t150 @t133 (@list @t135 @t145)))
% 0.38/0.58  (step @p297 :rule cnf_equiv_pos1 :args (@t148))
% 0.38/0.58  (step @p298 :rule reordering :premises (@p297) :args ((or (not @t134) @t142 @t149)))
% 0.38/0.58  (step @p299 false :rule chain_m_resolution :premises (@p298 @p296 @p293 @p34) :args (false (@list true false false) (@list @t142 @t134 @t148)))
% 0.38/0.58  )
% 0.38/0.58  % SZS output end Proof
% 0.38/0.58  % cvc5 exiting
%------------------------------------------------------------------------------