↑ Up

cvc5---1.3.4.THM-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : cvc5---1.3.4
% Problem  : NUM638^1 : TPTP v9.2.1. Released v3.7.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM

% Computer : n024.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:40:07 AM UTC 2026

% Result   : Theorem 150.40s 150.78s
% Output   : Proof 150.40s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.06  % Problem  : NUM638^1 : TPTP v9.2.1. Released v3.7.0.
% 0.00/0.07  % Command  : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM
% 0.07/0.25  % Computer : n024.cluster.edu
% 0.07/0.25  % Model    : x86_64 x86_64
% 0.07/0.25  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.07/0.25  % Memory   : 8042.1875MB
% 0.07/0.25  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.07/0.25  % CPULimit : 300
% 0.07/0.25  % WCLimit  : 300
% 0.07/0.25  % DateTime : Tue Jun  2 06:39:15 EDT 2026
% 0.07/0.25  % CPUTime  : 
% 0.07/0.32  %----Proving TH0
% 150.40/150.78  --- Run --mbqi --mbqi-enum --mbqi-enum-choice-grammar --mbqi-enum-global-syms-grammar --sygus-grammar-ho-partial --no-cegqi --no-sygus-inst at 90s...
% 150.40/150.78  --- Run --mbqi --mbqi-enum --mbqi-enum-choice-grammar --mbqi-enum-global-syms-grammar --sygus-grammar-ho-partial --mbqi-enum-choice-grammar-all --no-cegqi --no-sygus-inst at 30s...
% 150.40/150.78  --- Run --mbqi --mbqi-enum --mbqi-enum-choice-grammar --mbqi-enum-global-syms-grammar --sygus-grammar-ho-partial --no-mbqi-nested-check --no-cegqi --no-sygus-inst at 30s...
% 150.40/150.78  --- Run --ho-elim --full-saturate-quant at 18s...
% 150.40/150.78  % SZS status Theorem
% 150.40/150.78  % SZS output start Proof
% 150.40/150.78  (
% 150.40/150.78  (declare-sort tptp.nat 0)
% 150.40/150.78  (declare-const tptp.some (-> (-> tptp.nat Bool) Bool))
% 150.40/150.78  (declare-const tptp.suc (-> tptp.nat tptp.nat))
% 150.40/150.78  (declare-const tptp.x tptp.nat)
% 150.40/150.78  (declare-const tptp.n_1 tptp.nat)
% 150.40/150.78  (define @t1 () (= tptp.x tptp.n_1))
% 150.40/150.78  (define @t2 () (@var "Xy" tptp.nat))
% 150.40/150.78  (define @t3 () (@var "Xx" tptp.nat))
% 150.40/150.78  (define @t4 () (= @t3 @t2))
% 150.40/150.78  (define @t5 () (_ tptp.suc @t2))
% 150.40/150.78  (define @t6 () (_ tptp.suc @t3))
% 150.40/150.78  (define @t7 () (= @t6 @t5))
% 150.40/150.78  (define @t8 () (@list @t3 @t2))
% 150.40/150.78  (define @t9 () (forall @t8 (=> @t7 @t4)))
% 150.40/150.78  (define @t10 () (@var "Xu" tptp.nat))
% 150.40/150.78  (define @t11 () (_ tptp.suc @t10))
% 150.40/150.78  (define @t12 () (= @t3 @t11))
% 150.40/150.78  (define @t13 () (@list @t10))
% 150.40/150.78  (define @t14 () (lambda @t13 @t12))
% 150.40/150.78  (define @t15 () (_ tptp.some @t14))
% 150.40/150.78  (define @t16 () (not (= @t3 tptp.n_1)))
% 150.40/150.78  (define @t17 () (=> @t16 @t15))
% 150.40/150.78  (define @t18 () (@list @t3))
% 150.40/150.78  (define @t19 () (forall @t18 @t17))
% 150.40/150.78  (define @t20 () (not (_ tptp.some (lambda @t13 (= tptp.x @t11)))))
% 150.40/150.78  (define @t21 () (@var "Xx_0" tptp.nat))
% 150.40/150.78  (define @t22 () (= tptp.x @t5))
% 150.40/150.78  (define @t23 () (=> @t22 (= @t21 @t2)))
% 150.40/150.78  (define @t24 () (_ tptp.suc @t21))
% 150.40/150.78  (define @t25 () (= tptp.x @t24))
% 150.40/150.78  (define @t26 () (=> @t25 @t23))
% 150.40/150.78  (define @t27 () (@list @t21 @t2))
% 150.40/150.78  (define @t28 () (forall @t27 @t26))
% 150.40/150.78  (define @t29 () (=> @t28 @t20))
% 150.40/150.78  (define @t30 () (@var "BOUND_VARIABLE_7514" tptp.nat))
% 150.40/150.78  (define @t31 () (@const 0 (@ho-elim-sort (-> tptp.nat tptp.nat))))
% 150.40/150.78  (define @t32 () (@const 1 (-> (@ho-elim-sort (-> tptp.nat tptp.nat)) tptp.nat tptp.nat)))
% 150.40/150.78  (define @t33 () (@var "BOUND_VARIABLE_7513" tptp.nat))
% 150.40/150.78  (define @t34 () (= @t33 (_ @t32 @t31 @t30)))
% 150.40/150.78  (define @t35 () (@const 2 (@ho-elim-sort (-> tptp.nat tptp.nat Bool))))
% 150.40/150.78  (define @t36 () (@const 3 (-> (@ho-elim-sort (-> tptp.nat tptp.nat Bool)) tptp.nat (@ho-elim-sort (-> tptp.nat Bool)))))
% 150.40/150.78  (define @t37 () (@const 4 (-> (@ho-elim-sort (-> tptp.nat Bool)) tptp.nat Bool)))
% 150.40/150.78  (define @t38 () (_ @t37 (_ @t36 @t35 @t33) @t30))
% 150.40/150.78  (define @t39 () (@list @t33 @t30))
% 150.40/150.78  (define @t40 () (forall @t39 (= @t34 @t38)))
% 150.40/150.78  (define @t41 () (@const 5 (-> tptp.nat tptp.nat Bool)))
% 150.40/150.78  (define @t42 () (forall @t39 (= (= @t33 (tptp.suc @t30)) (_ @t41 @t33 @t30))))
% 150.40/150.78  (define @t43 () (@var "z" tptp.nat))
% 150.40/150.78  (define @t44 () (_ @t36 @t35 tptp.x))
% 150.40/150.78  (define @t45 () (@const 6 (@ho-elim-sort (-> tptp.nat Bool))))
% 150.40/150.78  (define @t46 () (@list @t43))
% 150.40/150.78  (define @t47 () (forall @t46 (= (_ @t37 @t45 @t43) (_ @t37 @t44 @t43))))
% 150.40/150.78  (define @t48 () (@quantifiers_skolemize @t47 0))
% 150.40/150.78  (define @t49 () (@var "y" (@ho-elim-sort (-> tptp.nat Bool))))
% 150.40/150.78  (define @t50 () (@var "x" (@ho-elim-sort (-> tptp.nat Bool))))
% 150.40/150.78  (define @t51 () (@var "ii" (@ho-elim-sort (-> tptp.nat Bool))))
% 150.40/150.78  (define @t52 () (@var "u" (@ho-elim-sort (-> (@ho-elim-sort (-> tptp.nat Bool)) Bool))))
% 150.40/150.78  (define @t53 () (@const 7 (-> (@ho-elim-sort (-> (@ho-elim-sort (-> tptp.nat Bool)) Bool)) (@ho-elim-sort (-> tptp.nat Bool)) Bool)))
% 150.40/150.78  (define @t54 () (@var "e" Bool))
% 150.40/150.78  (define @t55 () (@var "i" (@ho-elim-sort (-> tptp.nat Bool))))
% 150.40/150.78  (define @t56 () (@var "v" (@ho-elim-sort (-> (@ho-elim-sort (-> tptp.nat Bool)) Bool))))
% 150.40/150.78  (define @t57 () (_ @t53 @t56 @t51))
% 150.40/150.78  (define @t58 () (@list @t51))
% 150.40/150.78  (define @t59 () (@list @t56))
% 150.40/150.78  (define @t60 () (forall (@list @t52 @t54 @t55) (not (forall @t59 (not (forall @t58 (= @t57 (ite (= @t55 @t51) @t54 (_ @t53 @t52 @t51)))))))))
% 150.40/150.78  (define @t61 () (= @t45 @t51))
% 150.40/150.78  (define @t62 () (@const 8 (@ho-elim-sort (-> (@ho-elim-sort (-> tptp.nat Bool)) Bool))))
% 150.40/150.78  (define @t63 () (_ @t53 @t62 @t51))
% 150.40/150.78  (define @t64 () (= @t57 (ite @t61 false @t63)))
% 150.40/150.78  (define @t65 () (forall @t58 @t64))
% 150.40/150.78  (define @t66 () (not @t65))
% 150.40/150.78  (define @t67 () (forall @t59 @t66))
% 150.40/150.78  (define @t68 () (not @t67))
% 150.40/150.78  (define @t69 () (and (not @t61) @t63))
% 150.40/150.78  (define @t70 () (forall @t59 (not (forall @t58 (= @t57 @t69)))))
% 150.40/150.78  (define @t71 () (not @t70))
% 150.40/150.78  (define @t72 () (@list false))
% 150.40/150.78  (define @t73 () (@quantifiers_skolemize @t70 0))
% 150.40/150.78  (define @t74 () (_ @t53 @t73 @t51))
% 150.40/150.78  (define @t75 () (forall @t58 (= @t69 @t74)))
% 150.40/150.78  (define @t76 () (forall @t58 (= @t74 @t69)))
% 150.40/150.78  (define @t77 () (not (not @t76)))
% 150.40/150.78  (define @t78 () (@list true))
% 150.40/150.78  (define @t79 () (@var "y" (@ho-elim-sort (-> (@ho-elim-sort (-> tptp.nat Bool)) Bool))))
% 150.40/150.78  (define @t80 () (@var "x" (@ho-elim-sort (-> (@ho-elim-sort (-> tptp.nat Bool)) Bool))))
% 150.40/150.78  (define @t81 () (@var "z" (@ho-elim-sort (-> tptp.nat Bool))))
% 150.40/150.78  (define @t82 () (@list @t81))
% 150.40/150.78  (define @t83 () (forall @t82 (= (_ @t53 @t62 @t81) (_ @t53 @t73 @t81))))
% 150.40/150.78  (define @t84 () (@quantifiers_skolemize @t83 0))
% 150.40/150.78  (define @t85 () (_ @t53 @t73 @t84))
% 150.40/150.78  (define @t86 () (_ @t53 @t62 @t84))
% 150.40/150.78  (define @t87 () (= @t86 @t85))
% 150.40/150.78  (define @t88 () (= @t45 @t84))
% 150.40/150.78  (define @t89 () (not @t88))
% 150.40/150.78  (define @t90 () (and @t89 @t86))
% 150.40/150.78  (define @t91 () (= @t90 @t85))
% 150.40/150.78  (define @t92 () (= @t85 @t90))
% 150.40/150.78  (define @t93 () (not @t92))
% 150.40/150.78  (define @t94 () (not @t90))
% 150.40/150.78  (define @t95 () (not @t86))
% 150.40/150.78  (define @t96 () (= @t2 @t21))
% 150.40/150.78  (define @t97 () (_ @t32 @t31 @t2))
% 150.40/150.78  (define @t98 () (forall @t27 (or (not (= tptp.x (_ @t32 @t31 @t21))) (not (= tptp.x @t97)) @t96)))
% 150.40/150.78  (define @t99 () (@quantifiers_skolemize @t98 0))
% 150.40/150.78  (define @t100 () (_ @t32 @t31 @t99))
% 150.40/150.78  (define @t101 () (= tptp.x @t100))
% 150.40/150.78  (define @t102 () (@quantifiers_skolemize @t98 1))
% 150.40/150.78  (define @t103 () (= @t99 @t102))
% 150.40/150.78  (define @t104 () (_ @t32 @t31 @t102))
% 150.40/150.78  (define @t105 () (= tptp.x @t104))
% 150.40/150.78  (define @t106 () (not @t105))
% 150.40/150.78  (define @t107 () (not @t101))
% 150.40/150.78  (define @t108 () (or @t107 @t106 @t103))
% 150.40/150.78  (define @t109 () (_ @t32 @t31 @t3))
% 150.40/150.78  (define @t110 () (not (= @t109 @t97)))
% 150.40/150.78  (define @t111 () (or @t110 @t4))
% 150.40/150.78  (define @t112 () (forall @t8 @t111))
% 150.40/150.78  (define @t113 () (tptp.suc @t2))
% 150.40/150.78  (define @t114 () (tptp.suc @t3))
% 150.40/150.78  (define @t115 () (not @t7))
% 150.40/150.78  (define @t116 () (or @t115 @t4))
% 150.40/150.78  (define @t117 () (= @t100 @t104))
% 150.40/150.78  (define @t118 () (not @t117))
% 150.40/150.78  (define @t119 () (= @t102 @t99))
% 150.40/150.78  (define @t120 () (or @t118 @t119))
% 150.40/150.78  (define @t121 () (forall @t8 (or (not (= @t97 @t109)) @t4)))
% 150.40/150.78  (define @t122 () (or @t118 @t103))
% 150.40/150.78  (define @t123 () (and @t101 @t105))
% 150.40/150.78  (define @t124 () (not @t108))
% 150.40/150.78  (define @t125 () (not @t98))
% 150.40/150.78  (define @t126 () (or @t107 @t106 @t119))
% 150.40/150.78  (define @t127 () (not @t126))
% 150.40/150.78  (define @t128 () (_ @t53 @t62 @t45))
% 150.40/150.78  (define @t129 () (not @t128))
% 150.40/150.78  (define @t130 () (@const 9 (-> tptp.nat Bool)))
% 150.40/150.78  (define @t131 () (tptp.suc @t21))
% 150.40/150.78  (define @t132 () (forall @t27 (or (not (= tptp.x @t131)) (not (= tptp.x @t113)) @t96)))
% 150.40/150.78  (define @t133 () (=> @t132 (not (_ tptp.some @t130))))
% 150.40/150.78  (define @t134 () (not @t22))
% 150.40/150.78  (define @t135 () (not @t25))
% 150.40/150.78  (define @t136 () (or @t135 @t134 @t96))
% 150.40/150.78  (define @t137 () (=> @t22 @t96))
% 150.40/150.78  (define @t138 () (and @t129 @t88 @t86))
% 150.40/150.78  (define @t139 () (not @t87))
% 150.40/150.78  (define @t140 () (not @t83))
% 150.40/150.78  (define @t141 () (= @t62 @t73))
% 150.40/150.78  (define @t142 () (or @t140 @t141))
% 150.40/150.78  (define @t143 () (@list false false))
% 150.40/150.78  (define @t144 () (= tptp.n_1 @t3))
% 150.40/150.78  (define @t145 () (forall @t18 (or @t144 (_ @t53 @t62 (_ @t36 @t35 @t3)))))
% 150.40/150.78  (define @t146 () (forall @t18 (or @t144 (tptp.some (_ @t41 @t3)))))
% 150.40/150.78  (define @t147 () (tptp.suc @t10))
% 150.40/150.78  (define @t148 () (= @t3 @t147))
% 150.40/150.78  (define @t149 () (lambda @t13 @t148))
% 150.40/150.78  (define @t150 () (tptp.some @t149))
% 150.40/150.78  (define @t151 () (or @t144 @t15))
% 150.40/150.78  (define @t152 () (not @t144))
% 150.40/150.78  (define @t153 () (_ @t53 @t62 @t44))
% 150.40/150.78  (define @t154 () (or (= tptp.n_1 tptp.x) @t153))
% 150.40/150.78  (define @t155 () (or @t1 @t153))
% 150.40/150.78  (define @t156 () (@list true false))
% 150.40/150.78  (define @t157 () (_ @t53 @t73 @t44))
% 150.40/150.78  (define @t158 () (and @t153 @t141))
% 150.40/150.78  (define @t159 () (= @t45 @t44))
% 150.40/150.78  (define @t160 () (not @t159))
% 150.40/150.78  (define @t161 () (and @t160 @t153))
% 150.40/150.78  (define @t162 () (= @t161 @t157))
% 150.40/150.78  (define @t163 () (not @t47))
% 150.40/150.78  (define @t164 () (or @t163 @t159))
% 150.40/150.78  (define @t165 () (_ @t37 @t44 @t48))
% 150.40/150.78  (define @t166 () (_ @t37 @t45 @t48))
% 150.40/150.78  (define @t167 () (= @t166 @t165))
% 150.40/150.78  (define @t168 () (not @t167))
% 150.40/150.78  (define @t169 () (@var "BOUND_VARIABLE_7521" tptp.nat))
% 150.40/150.78  (define @t170 () (_ @t37 @t45 @t169))
% 150.40/150.78  (define @t171 () (= tptp.x (_ @t32 @t31 @t169)))
% 150.40/150.78  (define @t172 () (@list @t169))
% 150.40/150.78  (define @t173 () (forall @t172 (= @t170 @t171)))
% 150.40/150.78  (define @t174 () (forall @t172 (= (_ @t130 @t169) (= tptp.x (tptp.suc @t169)))))
% 150.40/150.78  (define @t175 () (= tptp.x (_ @t32 @t31 @t48)))
% 150.40/150.78  (define @t176 () (forall @t172 (= @t171 @t170)))
% 150.40/150.78  (define @t177 () (= @t175 @t166))
% 150.40/150.78  (define @t178 () (= @t166 @t175))
% 150.40/150.78  (define @t179 () (not @t178))
% 150.40/150.78  (define @t180 () (not @t166))
% 150.40/150.78  (define @t181 () (= @t165 @t175))
% 150.40/150.78  (define @t182 () (not @t181))
% 150.40/150.78  (define @t183 () (not @t175))
% 150.40/150.78  (assume @p1 (not @t1))
% 150.40/150.78  (assume @p2 @t9)
% 150.40/150.78  (assume @p3 @t19)
% 150.40/150.78  (assume @p4 (not (not @t29)))
% 150.40/150.78  (assume @p5 true)
% 150.40/150.78  (step @p6 :rule eq-symm :args (@t34 @t38))
% 150.40/150.78  (step @p7 :rule cong :premises (@p6) :args (@t40))
% 150.40/150.78  ; WARNING: add trust step for TRUST
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM
% 150.40/150.78  (step @p8 :rule trust :premises () :args ((= @t42 @t40)))
% 150.40/150.78  (step @p9 :rule trans :premises (@p8 @p7))
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM_LEMMA
% 150.40/150.78  (step @p10 :rule trust :premises () :args (@t42))
% 150.40/150.78  (step @p11 :rule eq_resolve :premises (@p10 @p9))
% 150.40/150.78  (step @p12 :rule instantiate :premises (@p11) :args ((@list tptp.x @t48)))
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM_LEMMA
% 150.40/150.78  (step @p13 :rule trust :premises () :args ((forall (@list @t50 @t49) (or (not (forall @t46 (= (_ @t37 @t50 @t43) (_ @t37 @t49 @t43)))) (= @t50 @t49)))))
% 150.40/150.78  (step @p14 :rule instantiate :premises (@p13) :args ((@list @t45 @t44)))
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM_LEMMA
% 150.40/150.78  (step @p15 :rule trust :premises () :args (@t60))
% 150.40/150.78  (step @p16 :rule ite-then-false :args (@t61 @t63))
% 150.40/150.78  (step @p17 :rule refl :args (@t57))
% 150.40/150.78  (step @p18 :rule cong :premises (@p17 @p16) :args (@t64))
% 150.40/150.78  (step @p19 :rule cong :premises (@p18) :args (@t65))
% 150.40/150.78  (step @p20 :rule cong :premises (@p19) :args (@t66))
% 150.40/150.78  (step @p21 :rule cong :premises (@p20) :args (@t67))
% 150.40/150.78  (step @p22 :rule cong :premises (@p21) :args (@t68))
% 150.40/150.78  (step @p23 :rule refl :args (@t60))
% 150.40/150.78  (step @p24 :rule cong :premises (@p23 @p22) :args ((=> @t60 @t68)))
% 150.40/150.78  (assume-push @p378 @t60)
% 150.40/150.78  (step @p26 :rule instantiate :premises (@p15) :args ((@list @t62 false @t45)))
% 150.40/150.78  (step-pop @p379 :rule scope :premises (@p26))
% 150.40/150.78  (step @p27 :rule process_scope :premises (@p379) :args (@t68))
% 150.40/150.78  (step @p29 :rule eq_resolve :premises (@p27 @p24))
% 150.40/150.78  (step @p30 :rule implies_elim :premises (@p29))
% 150.40/150.78  (step @p31 :rule chain_m_resolution :premises (@p30 @p15) :args (@t71 @t72 (@list @t60)))
% 150.40/150.78  (step @p32 :rule refl :args (@t75))
% 150.40/150.78  (step @p33 :rule bool-double-not-elim :args (@t70))
% 150.40/150.78  (step @p34 :rule nary_cong :premises (@p33 @p32) :args ((or (not @t71) @t75)))
% 150.40/150.78  (step @p35 :rule eq-symm :args (@t74 @t69))
% 150.40/150.78  (step @p36 :rule cong :premises (@p35) :args (@t76))
% 150.40/150.78  (step @p37 :rule bool-double-not-elim :args (@t76))
% 150.40/150.78  (step @p38 :rule trans :premises (@p37 @p36))
% 150.40/150.78  (step @p39 :rule refl :args (@t71))
% 150.40/150.78  (step @p40 :rule cong :premises (@p39 @p38) :args ((=> @t71 @t77)))
% 150.40/150.78  (assume-push @p380 @t71)
% 150.40/150.78  (step @p42 :rule skolemize :premises (@p31))
% 150.40/150.78  (step-pop @p381 :rule scope :premises (@p42))
% 150.40/150.78  (step @p43 :rule process_scope :premises (@p381) :args (@t77))
% 150.40/150.78  (step @p45 :rule eq_resolve :premises (@p43 @p40))
% 150.40/150.78  (step @p46 :rule implies_elim :premises (@p45))
% 150.40/150.78  (step @p47 :rule eq_resolve :premises (@p46 @p34))
% 150.40/150.78  (step @p48 :rule chain_m_resolution :premises (@p47 @p31) :args (@t75 @t78 (@list @t70)))
% 150.40/150.78  (step @p49 :rule instantiate :premises (@p48) :args ((@list @t44)))
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM_LEMMA
% 150.40/150.78  (step @p50 :rule trust :premises () :args ((forall (@list @t80 @t79) (or (not (forall @t82 (= (_ @t53 @t80 @t81) (_ @t53 @t79 @t81)))) (= @t80 @t79)))))
% 150.40/150.78  (step @p51 :rule instantiate :premises (@p50) :args ((@list @t62 @t73)))
% 150.40/150.78  (step @p52 :rule cnf_equiv_neg2 :args (@t87))
% 150.40/150.78  (step @p53 :rule eq-symm :args (@t90 @t85))
% 150.40/150.78  (step @p54 :rule cong :premises (@p32 @p53) :args ((=> @t75 @t91)))
% 150.40/150.78  (assume-push @p382 @t75)
% 150.40/150.78  (step @p56 :rule instantiate :premises (@p48) :args ((@list @t84)))
% 150.40/150.78  (step-pop @p383 :rule scope :premises (@p56))
% 150.40/150.78  (step @p57 :rule process_scope :premises (@p383) :args (@t91))
% 150.40/150.78  (step @p59 :rule eq_resolve :premises (@p57 @p54))
% 150.40/150.78  (step @p60 :rule implies_elim :premises (@p59))
% 150.40/150.78  (step @p61 :rule chain_m_resolution :premises (@p60 @p48) :args (@t92 @t72 (@list @t75)))
% 150.40/150.78  (step @p62 :rule cnf_equiv_pos2 :args (@t92))
% 150.40/150.78  (step @p63 :rule reordering :premises (@p62) :args ((or @t85 @t94 @t93)))
% 150.40/150.78  (step @p64 :rule refl :args (@t95))
% 150.40/150.78  (step @p65 :rule bool-double-not-elim :args (@t88))
% 150.40/150.78  (step @p66 :rule refl :args (@t90))
% 150.40/150.78  (step @p67 :rule nary_cong :premises (@p66 @p65 @p64) :args ((or @t90 (not @t89) @t95)))
% 150.40/150.78  (step @p68 :rule cnf_and_neg :args (@t90))
% 150.40/150.78  (step @p69 :rule eq_resolve :premises (@p68 @p67))
% 150.40/150.78  (step @p70 :rule reordering :premises (@p69) :args ((or @t95 @t88 @t90)))
% 150.40/150.78  (step @p71 :rule bool-double-not-elim :args (@t101))
% 150.40/150.78  (step @p72 :rule refl :args (@t108))
% 150.40/150.78  (step @p73 :rule nary_cong :premises (@p72 @p71) :args ((or @t108 (not @t107))))
% 150.40/150.78  (step @p74 :rule cnf_or_neg :args (@t108 0))
% 150.40/150.78  (step @p75 :rule eq_resolve :premises (@p74 @p73))
% 150.40/150.78  (step @p76 :rule reordering :premises (@p75) :args ((or @t101 @t108)))
% 150.40/150.78  (step @p77 :rule bool-double-not-elim :args (@t105))
% 150.40/150.78  (step @p78 :rule nary_cong :premises (@p72 @p77) :args ((or @t108 (not @t106))))
% 150.40/150.78  (step @p79 :rule cnf_or_neg :args (@t108 1))
% 150.40/150.78  (step @p80 :rule eq_resolve :premises (@p79 @p78))
% 150.40/150.78  (step @p81 :rule reordering :premises (@p80) :args ((or @t105 @t108)))
% 150.40/150.78  (step @p82 :rule cnf_or_neg :args (@t108 2))
% 150.40/150.78  (step @p83 :rule refl :args (@t4))
% 150.40/150.78  (step @p84 :rule eq-symm :args (@t109 @t97))
% 150.40/150.78  (step @p85 :rule cong :premises (@p84) :args (@t110))
% 150.40/150.78  (step @p86 :rule nary_cong :premises (@p85 @p83) :args (@t111))
% 150.40/150.78  (step @p87 :rule cong :premises (@p86) :args (@t112))
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM
% 150.40/150.78  (step @p88 :rule trust :premises () :args ((= (forall @t8 (or (not (= @t114 @t113)) @t4)) @t112)))
% 150.40/150.78  (step @p89 :rule refl :args (@t4))
% 150.40/150.78  (step @p90 :rule refl :args (@t113))
% 150.40/150.78  (step @p91 :rule refl :args (@t5))
% 150.40/150.78  (step @p92 :rule cong :premises (@p91 @p90) :args ((= @t5 @t113)))
% 150.40/150.78  (step @p93 :rule symm :premises (@p92))
% 150.40/150.78  (step @p94 :rule eq_resolve :premises (@p91 @p93))
% 150.40/150.78  (step @p95 :rule refl :args (@t114))
% 150.40/150.78  (step @p96 :rule refl :args (@t6))
% 150.40/150.78  (step @p97 :rule cong :premises (@p96 @p95) :args ((= @t6 @t114)))
% 150.40/150.78  (step @p98 :rule symm :premises (@p97))
% 150.40/150.78  (step @p99 :rule eq_resolve :premises (@p96 @p98))
% 150.40/150.78  (step @p100 :rule cong :premises (@p99 @p94) :args (@t7))
% 150.40/150.78  (step @p101 :rule cong :premises (@p100) :args (@t115))
% 150.40/150.78  (step @p102 :rule nary_cong :premises (@p101 @p89) :args (@t116))
% 150.40/150.78  (step @p103 :rule cong :premises (@p102) :args ((forall @t8 @t116)))
% 150.40/150.78  (step @p104 :rule bool-impl-elim :args (@t7 @t4))
% 150.40/150.78  (step @p105 :rule cong :premises (@p104) :args (@t9))
% 150.40/150.78  (step @p106 :rule trans :premises (@p105 @p103))
% 150.40/150.78  (step @p107 :rule trans :premises (@p106 @p88 @p87))
% 150.40/150.78  (step @p108 :rule eq_resolve :premises (@p2 @p107))
% 150.40/150.78  (step @p109 :rule eq-symm :args (@t102 @t99))
% 150.40/150.78  (step @p110 :rule refl :args (@t118))
% 150.40/150.78  (step @p111 :rule nary_cong :premises (@p110 @p109) :args (@t120))
% 150.40/150.78  (step @p112 :rule refl :args (@t121))
% 150.40/150.78  (step @p113 :rule cong :premises (@p112 @p111) :args ((=> @t121 @t120)))
% 150.40/150.78  (assume-push @p384 @t121)
% 150.40/150.78  (step @p115 :rule instantiate :premises (@p108) :args ((@list @t102 @t99)))
% 150.40/150.78  (step-pop @p385 :rule scope :premises (@p115))
% 150.40/150.78  (step @p116 :rule process_scope :premises (@p385) :args (@t120))
% 150.40/150.78  (step @p118 :rule eq_resolve :premises (@p116 @p113))
% 150.40/150.78  (step @p119 :rule implies_elim :premises (@p118))
% 150.40/150.78  (step @p120 :rule chain_m_resolution :premises (@p119 @p108) :args (@t122 @t72 (@list @t121)))
% 150.40/150.78  (step @p121 :rule cnf_or_pos :args (@t122))
% 150.40/150.78  (step @p122 :rule reordering :premises (@p121) :args ((or @t103 @t118 (not @t122))))
% 150.40/150.78  (assume-push @p386 @t101)
% 150.40/150.78  (assume-push @p387 @t105)
% 150.40/150.78  (assume-push @p388 @t105)
% 150.40/150.78  (assume-push @p389 @t101)
% 150.40/150.78  (step @p127 :rule symm :premises (@p386))
% 150.40/150.78  (step @p128 :rule trans :premises (@p127 @p387))
% 150.40/150.78  (step-pop @p390 :rule scope :premises (@p128))
% 150.40/150.78  (step-pop @p391 :rule scope :premises (@p390))
% 150.40/150.78  (step @p129 :rule process_scope :premises (@p391) :args (@t117))
% 150.40/150.78  (step @p132 :rule and_intro :premises (@p387 @p386))
% 150.40/150.78  (step @p133 :rule modus_ponens :premises (@p132 @p129))
% 150.40/150.78  (step-pop @p392 :rule scope :premises (@p133))
% 150.40/150.78  (step-pop @p393 :rule scope :premises (@p392))
% 150.40/150.78  (step @p134 :rule process_scope :premises (@p393) :args (@t117))
% 150.40/150.78  (step @p137 :rule implies_elim :premises (@p134))
% 150.40/150.78  (step @p138 :rule cnf_and_neg :args (@t123))
% 150.40/150.78  (step @p139 :rule resolution :premises (@p138 @p137) :args (true @t123))
% 150.40/150.78  (step @p140 :rule chain_m_resolution :premises (@p139 @p122 @p120 @p82 @p81 @p76) :args (@t108 (@list true false true false false) (@list @t117 @t122 @t103 @t105 @t101)))
% 150.40/150.78  (step @p141 :rule refl :args (@t124))
% 150.40/150.78  (step @p142 :rule bool-double-not-elim :args (@t98))
% 150.40/150.78  (step @p143 :rule nary_cong :premises (@p142 @p141) :args ((or (not @t125) @t124)))
% 150.40/150.78  (step @p144 :rule refl :args (@t106))
% 150.40/150.78  (step @p145 :rule refl :args (@t107))
% 150.40/150.78  (step @p146 :rule nary_cong :premises (@p145 @p144 @p109) :args (@t126))
% 150.40/150.78  (step @p147 :rule cong :premises (@p146) :args (@t127))
% 150.40/150.78  (step @p148 :rule refl :args (@t125))
% 150.40/150.78  (step @p149 :rule cong :premises (@p148 @p147) :args ((=> @t125 @t127)))
% 150.40/150.78  (assume-push @p394 @t125)
% 150.40/150.78  (step @p151 :rule skolemize :premises (@p394))
% 150.40/150.78  (step-pop @p395 :rule scope :premises (@p151))
% 150.40/150.78  (step @p152 :rule process_scope :premises (@p395) :args (@t127))
% 150.40/150.78  (step @p154 :rule eq_resolve :premises (@p152 @p149))
% 150.40/150.78  (step @p155 :rule implies_elim :premises (@p154))
% 150.40/150.78  (step @p156 :rule eq_resolve :premises (@p155 @p143))
% 150.40/150.78  (step @p157 :rule chain_m_resolution :premises (@p156 @p140) :args (@t98 @t72 (@list @t108)))
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM
% 150.40/150.78  (step @p158 :rule trust :premises () :args ((= @t133 (=> @t98 @t129))))
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM
% 150.40/150.78  (step @p159 :rule trust :premises () :args ((= (=> @t132 @t20) @t133)))
% 150.40/150.78  (step @p160 :rule refl :args (@t20))
% 150.40/150.78  (step @p161 :rule refl :args (@t96))
% 150.40/150.78  (step @p162 :rule refl :args (tptp.x))
% 150.40/150.78  (step @p163 :rule cong :premises (@p162 @p94) :args (@t22))
% 150.40/150.78  (step @p164 :rule cong :premises (@p163) :args (@t134))
% 150.40/150.78  (step @p165 :rule refl :args (@t131))
% 150.40/150.78  (step @p166 :rule refl :args (@t24))
% 150.40/150.78  (step @p167 :rule cong :premises (@p166 @p165) :args ((= @t24 @t131)))
% 150.40/150.78  (step @p168 :rule symm :premises (@p167))
% 150.40/150.78  (step @p169 :rule eq_resolve :premises (@p166 @p168))
% 150.40/150.78  (step @p170 :rule cong :premises (@p162 @p169) :args (@t25))
% 150.40/150.78  (step @p171 :rule cong :premises (@p170) :args (@t135))
% 150.40/150.78  (step @p172 :rule nary_cong :premises (@p171 @p164 @p161) :args (@t136))
% 150.40/150.78  (step @p173 :rule cong :premises (@p172) :args ((forall @t27 @t136)))
% 150.40/150.78  (step @p174 :rule aci_norm :args ((= (or @t135 (or @t134 @t96)) @t136)))
% 150.40/150.78  (step @p175 :rule bool-impl-elim :args (@t22 @t96))
% 150.40/150.78  (step @p176 :rule refl :args (@t135))
% 150.40/150.78  (step @p177 :rule nary_cong :premises (@p176 @p175) :args ((or @t135 @t137)))
% 150.40/150.78  (step @p178 :rule trans :premises (@p177 @p174))
% 150.40/150.78  (step @p179 :rule bool-impl-elim :args (@t25 @t137))
% 150.40/150.78  (step @p180 :rule trans :premises (@p179 @p178))
% 150.40/150.78  (step @p181 :rule cong :premises (@p180) :args ((forall @t27 (=> @t25 @t137))))
% 150.40/150.78  (step @p182 :rule trans :premises (@p181 @p173))
% 150.40/150.78  (step @p183 :rule eq-symm :args (@t21 @t2))
% 150.40/150.78  (step @p184 :rule refl :args (@t22))
% 150.40/150.78  (step @p185 :rule cong :premises (@p184 @p183) :args (@t23))
% 150.40/150.78  (step @p186 :rule refl :args (@t25))
% 150.40/150.78  (step @p187 :rule cong :premises (@p186 @p185) :args (@t26))
% 150.40/150.78  (step @p188 :rule cong :premises (@p187) :args (@t28))
% 150.40/150.78  (step @p189 :rule trans :premises (@p188 @p182))
% 150.40/150.78  (step @p190 :rule cong :premises (@p189 @p160) :args (@t29))
% 150.40/150.78  (step @p191 :rule bool-double-not-elim :args (@t29))
% 150.40/150.78  (step @p192 :rule trans :premises (@p191 @p190))
% 150.40/150.78  (step @p193 :rule trans :premises (@p192 @p159 @p158))
% 150.40/150.78  (step @p194 :rule eq_resolve :premises (@p4 @p193))
% 150.40/150.78  (step @p195 :rule implies_elim :premises (@p194))
% 150.40/150.78  (step @p196 :rule reordering :premises (@p195) :args ((or @t129 @t125)))
% 150.40/150.78  (step @p197 :rule chain_m_resolution :premises (@p196 @p157) :args (@t129 @t72 (@list @t98)))
% 150.40/150.78  (step @p198 :rule refl :args (@t89))
% 150.40/150.78  (step @p199 :rule bool-double-not-elim :args (@t128))
% 150.40/150.78  (step @p200 :rule nary_cong :premises (@p199 @p64 @p198) :args ((or (not @t129) @t95 @t89)))
% 150.40/150.78  (assume-push @p396 @t129)
% 150.40/150.78  (assume-push @p397 @t88)
% 150.40/150.78  (assume-push @p398 @t86)
% 150.40/150.78  (step @p204 :rule evaluate :args ((= true false)))
% 150.40/150.78  (step @p205 :rule false_intro :premises (@p396))
% 150.40/150.78  (step @p206 :rule symm :premises (@p397))
% 150.40/150.78  (step @p207 :rule refl :args (@t62))
% 150.40/150.78  (step @p208 :rule cong :premises (@p207 @p206) :args (@t86))
% 150.40/150.78  (step @p209 :rule true_intro :premises (@p398))
% 150.40/150.78  (step @p210 :rule symm :premises (@p209))
% 150.40/150.78  (step @p211 :rule trans :premises (@p210 @p208 @p205))
% 150.40/150.78  (step @p212 false :rule eq_resolve :premises (@p211 @p204))
% 150.40/150.78  (step-pop @p399 :rule scope :premises (@p212))
% 150.40/150.78  (step-pop @p400 :rule scope :premises (@p399))
% 150.40/150.78  (step-pop @p401 :rule scope :premises (@p400))
% 150.40/150.78  (step @p213 :rule process_scope :premises (@p401) :args (false))
% 150.40/150.78  (assume-push @p402 @t129)
% 150.40/150.78  (assume-push @p403 @t86)
% 150.40/150.78  (assume-push @p404 @t88)
% 150.40/150.78  (step @p220 :rule and_intro :premises (@p402 @p404 @p403))
% 150.40/150.78  (step-pop @p405 :rule scope :premises (@p220))
% 150.40/150.78  (step-pop @p406 :rule scope :premises (@p405))
% 150.40/150.78  (step-pop @p407 :rule scope :premises (@p406))
% 150.40/150.78  (step @p221 :rule process_scope :premises (@p407) :args (@t138))
% 150.40/150.78  (step @p225 :rule implies_elim :premises (@p221))
% 150.40/150.78  (step @p226 :rule resolution :premises (@p225 @p213) :args (true @t138))
% 150.40/150.78  (step @p227 :rule not_and :premises (@p226))
% 150.40/150.78  (step @p228 :rule eq_resolve :premises (@p227 @p200))
% 150.40/150.78  (step @p229 :rule chain_m_resolution :premises (@p228 @p197 @p70 @p63 @p61 @p52) :args ((or @t87 @t95) (@list true false true false true) (@list @t128 @t88 @t90 @t92 @t85)))
% 150.40/150.78  (step @p230 :rule cnf_equiv_neg1 :args (@t87))
% 150.40/150.78  (step @p231 :rule reordering :premises (@p230) :args ((or @t86 @t85 @t87)))
% 150.40/150.78  (step @p232 :rule cnf_and_pos :args (@t90 1))
% 150.40/150.78  (step @p233 :rule reordering :premises (@p232) :args ((or @t86 @t94)))
% 150.40/150.78  (step @p234 :rule cnf_equiv_pos1 :args (@t92))
% 150.40/150.78  (step @p235 :rule reordering :premises (@p234) :args ((or (not @t85) @t90 @t93)))
% 150.40/150.78  (step @p236 :rule chain_m_resolution :premises (@p235 @p61 @p233 @p231 @p229) :args (@t87 (@list false true false true) (@list @t92 @t90 @t85 @t86)))
% 150.40/150.78  (step @p237 :rule refl :args (@t139))
% 150.40/150.78  (step @p238 :rule bool-double-not-elim :args (@t83))
% 150.40/150.78  (step @p239 :rule nary_cong :premises (@p238 @p237) :args ((or (not @t140) @t139)))
% 150.40/150.78  (assume-push @p408 @t140)
% 150.40/150.78  (step @p241 :rule skolemize :premises (@p408))
% 150.40/150.78  (step-pop @p409 :rule scope :premises (@p241))
% 150.40/150.78  (step @p242 :rule process_scope :premises (@p409) :args (@t139))
% 150.40/150.78  (step @p244 :rule implies_elim :premises (@p242))
% 150.40/150.78  (step @p245 :rule eq_resolve :premises (@p244 @p239))
% 150.40/150.78  (step @p246 :rule chain_m_resolution :premises (@p245 @p236) :args (@t83 @t72 (@list @t87)))
% 150.40/150.78  (step @p247 :rule cnf_or_pos :args (@t142))
% 150.40/150.78  (step @p248 :rule reordering :premises (@p247) :args ((or @t140 @t141 (not @t142))))
% 150.40/150.78  (step @p249 :rule chain_m_resolution :premises (@p248 @p246 @p51) :args (@t141 @t143 (@list @t83 @t142)))
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM
% 150.40/150.78  (step @p250 :rule trust :premises () :args ((= @t146 @t145)))
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM
% 150.40/150.78  (step @p251 :rule trust :premises () :args ((= (forall @t18 (or @t144 @t150)) @t146)))
% 150.40/150.78  (step @p252 :rule refl :args ((tptp.some @t14)))
% 150.40/150.78  (step @p253 :rule refl :args (@t147))
% 150.40/150.78  (step @p254 :rule refl :args (@t3))
% 150.40/150.78  (step @p255 :rule cong :premises (@p254 @p253) :args (@t148))
% 150.40/150.78  (step @p256 :rule cong :premises (@p255) :args (@t149))
% 150.40/150.78  (step @p257 :rule cong :premises (@p256) :args (@t150))
% 150.40/150.78  (step @p258 :rule trans :premises (@p257 @p252))
% 150.40/150.78  (step @p259 :rule refl :args (tptp.some))
% 150.40/150.78  (step @p260 :rule ho_cong :premises (@p259 @p256))
% 150.40/150.78  (step @p261 :rule cong :premises (@p260 @p258) :args ((= (_ tptp.some @t149) @t150)))
% 150.40/150.78  (step @p262 :rule symm :premises (@p261))
% 150.40/150.78  (step @p263 :rule refl :args (@t15))
% 150.40/150.78  (step @p264 :rule eq_resolve :premises (@p263 @p262))
% 150.40/150.78  (step @p265 :rule refl :args (@t11))
% 150.40/150.78  (step @p266 :rule cong :premises (@p265 @p253) :args ((= @t11 @t147)))
% 150.40/150.78  (step @p267 :rule symm :premises (@p266))
% 150.40/150.78  (step @p268 :rule eq_resolve :premises (@p265 @p267))
% 150.40/150.78  (step @p269 :rule cong :premises (@p254 @p268) :args (@t12))
% 150.40/150.78  (step @p270 :rule cong :premises (@p269) :args (@t14))
% 150.40/150.78  (step @p271 :rule ho_cong :premises (@p259 @p270))
% 150.40/150.78  (step @p272 :rule trans :premises (@p271 @p264))
% 150.40/150.78  (step @p273 :rule refl :args (@t144))
% 150.40/150.78  (step @p274 :rule nary_cong :premises (@p273 @p272) :args (@t151))
% 150.40/150.78  (step @p275 :rule cong :premises (@p274) :args ((forall @t18 @t151)))
% 150.40/150.78  (step @p276 :rule bool-double-not-elim :args (@t144))
% 150.40/150.78  (step @p277 :rule nary_cong :premises (@p276 @p263) :args ((or (not @t152) @t15)))
% 150.40/150.78  (step @p278 :rule bool-impl-elim :args (@t152 @t15))
% 150.40/150.78  (step @p279 :rule trans :premises (@p278 @p277))
% 150.40/150.78  (step @p280 :rule cong :premises (@p279) :args ((forall @t18 (=> @t152 @t15))))
% 150.40/150.78  (step @p281 :rule trans :premises (@p280 @p275))
% 150.40/150.78  (step @p282 :rule refl :args (@t15))
% 150.40/150.78  (step @p283 :rule eq-symm :args (@t3 tptp.n_1))
% 150.40/150.78  (step @p284 :rule cong :premises (@p283) :args (@t16))
% 150.40/150.78  (step @p285 :rule cong :premises (@p284 @p282) :args (@t17))
% 150.40/150.78  (step @p286 :rule cong :premises (@p285) :args (@t19))
% 150.40/150.78  (step @p287 :rule trans :premises (@p286 @p281))
% 150.40/150.78  (step @p288 :rule trans :premises (@p287 @p251 @p250))
% 150.40/150.78  (step @p289 :rule eq_resolve :premises (@p3 @p288))
% 150.40/150.78  (step @p290 :rule refl :args (@t153))
% 150.40/150.78  (step @p291 :rule eq-symm :args (tptp.n_1 tptp.x))
% 150.40/150.78  (step @p292 :rule nary_cong :premises (@p291 @p290) :args (@t154))
% 150.40/150.78  (step @p293 :rule refl :args (@t145))
% 150.40/150.78  (step @p294 :rule cong :premises (@p293 @p292) :args ((=> @t145 @t154)))
% 150.40/150.78  (assume-push @p410 @t145)
% 150.40/150.78  (step @p296 :rule instantiate :premises (@p289) :args ((@list tptp.x)))
% 150.40/150.78  (step-pop @p411 :rule scope :premises (@p296))
% 150.40/150.78  (step @p297 :rule process_scope :premises (@p411) :args (@t154))
% 150.40/150.78  (step @p299 :rule eq_resolve :premises (@p297 @p294))
% 150.40/150.78  (step @p300 :rule implies_elim :premises (@p299))
% 150.40/150.78  (step @p301 :rule chain_m_resolution :premises (@p300 @p289) :args (@t155 @t72 (@list @t145)))
% 150.40/150.78  (step @p302 :rule cnf_or_pos :args (@t155))
% 150.40/150.78  (step @p303 :rule reordering :premises (@p302) :args ((or @t1 @t153 (not @t155))))
% 150.40/150.78  (step @p304 :rule chain_m_resolution :premises (@p303 @p1 @p301) :args (@t153 @t156 (@list @t1 @t155)))
% 150.40/150.78  (assume-push @p412 @t153)
% 150.40/150.78  (assume-push @p413 @t141)
% 150.40/150.78  (assume-push @p414 @t153)
% 150.40/150.78  (assume-push @p415 @t141)
% 150.40/150.78  (step @p309 :rule true_intro :premises (@p304))
% 150.40/150.78  (step @p310 :rule refl :args (@t44))
% 150.40/150.78  (step @p311 :rule symm :premises (@p413))
% 150.40/150.78  (step @p312 :rule cong :premises (@p311 @p310) :args (@t157))
% 150.40/150.78  (step @p313 :rule trans :premises (@p312 @p309))
% 150.40/150.78  (step @p314 :rule true_elim :premises (@p313))
% 150.40/150.78  (step-pop @p416 :rule scope :premises (@p314))
% 150.40/150.78  (step-pop @p417 :rule scope :premises (@p416))
% 150.40/150.78  (step @p315 :rule process_scope :premises (@p417) :args (@t157))
% 150.40/150.78  (step @p318 :rule and_intro :premises (@p304 @p413))
% 150.40/150.78  (step @p319 :rule modus_ponens :premises (@p318 @p315))
% 150.40/150.78  (step-pop @p418 :rule scope :premises (@p319))
% 150.40/150.78  (step-pop @p419 :rule scope :premises (@p418))
% 150.40/150.78  (step @p320 :rule process_scope :premises (@p419) :args (@t157))
% 150.40/150.78  (step @p323 :rule implies_elim :premises (@p320))
% 150.40/150.78  (step @p324 :rule cnf_and_neg :args (@t158))
% 150.40/150.78  (step @p325 :rule resolution :premises (@p324 @p323) :args (true @t158))
% 150.40/150.78  (step @p326 :rule reordering :premises (@p325) :args ((or (not @t153) @t157 (not @t141))))
% 150.40/150.78  (step @p327 :rule chain_m_resolution :premises (@p326 @p304 @p249) :args (@t157 @t143 (@list @t153 @t141)))
% 150.40/150.78  (step @p328 :rule cnf_equiv_pos2 :args (@t162))
% 150.40/150.78  (step @p329 :rule reordering :premises (@p328) :args ((or @t161 (not @t157) (not @t162))))
% 150.40/150.78  (step @p330 :rule chain_m_resolution :premises (@p329 @p327 @p49) :args (@t161 @t143 (@list @t157 @t162)))
% 150.40/150.78  (step @p331 :rule cnf_and_pos :args (@t161 0))
% 150.40/150.78  (step @p332 :rule reordering :premises (@p331) :args ((or @t160 (not @t161))))
% 150.40/150.78  (step @p333 :rule chain_m_resolution :premises (@p332 @p330) :args (@t160 @t72 (@list @t161)))
% 150.40/150.78  (step @p334 :rule cnf_or_pos :args (@t164))
% 150.40/150.78  (step @p335 :rule reordering :premises (@p334) :args ((or @t159 @t163 (not @t164))))
% 150.40/150.78  (step @p336 :rule chain_m_resolution :premises (@p335 @p333 @p14) :args (@t163 @t156 (@list @t159 @t164)))
% 150.40/150.78  (step @p337 :rule refl :args (@t168))
% 150.40/150.78  (step @p338 :rule bool-double-not-elim :args (@t47))
% 150.40/150.78  (step @p339 :rule nary_cong :premises (@p338 @p337) :args ((or (not @t163) @t168)))
% 150.40/150.78  (assume-push @p420 @t163)
% 150.40/150.78  (step @p341 :rule skolemize :premises (@p420))
% 150.40/150.78  (step-pop @p421 :rule scope :premises (@p341))
% 150.40/150.78  (step @p342 :rule process_scope :premises (@p421) :args (@t168))
% 150.40/150.78  (step @p344 :rule implies_elim :premises (@p342))
% 150.40/150.78  (step @p345 :rule eq_resolve :premises (@p344 @p339))
% 150.40/150.78  (step @p346 :rule chain_m_resolution :premises (@p345 @p336) :args (@t168 @t78 (@list @t47)))
% 150.40/150.78  (step @p347 :rule cnf_equiv_neg2 :args (@t167))
% 150.40/150.78  (step @p348 :rule eq-symm :args (@t170 @t171))
% 150.40/150.78  (step @p349 :rule cong :premises (@p348) :args (@t173))
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM
% 150.40/150.78  (step @p350 :rule trust :premises () :args ((= @t174 @t173)))
% 150.40/150.78  (step @p351 :rule trans :premises (@p350 @p349))
% 150.40/150.78  ; trust TRUST PREPROCESS_HO_ELIM_LEMMA
% 150.40/150.79  (step @p352 :rule trust :premises () :args (@t174))
% 150.40/150.79  (step @p353 :rule eq_resolve :premises (@p352 @p351))
% 150.40/150.79  (step @p354 :rule eq-symm :args (@t175 @t166))
% 150.40/150.79  (step @p355 :rule refl :args (@t176))
% 150.40/150.79  (step @p356 :rule cong :premises (@p355 @p354) :args ((=> @t176 @t177)))
% 150.40/150.79  (assume-push @p422 @t176)
% 150.40/150.79  (step @p358 :rule instantiate :premises (@p353) :args ((@list @t48)))
% 150.40/150.79  (step-pop @p423 :rule scope :premises (@p358))
% 150.40/150.79  (step @p359 :rule process_scope :premises (@p423) :args (@t177))
% 150.40/150.79  (step @p361 :rule eq_resolve :premises (@p359 @p356))
% 150.40/150.79  (step @p362 :rule implies_elim :premises (@p361))
% 150.40/150.79  (step @p363 :rule chain_m_resolution :premises (@p362 @p353) :args (@t178 @t72 (@list @t176)))
% 150.40/150.79  (step @p364 :rule cnf_equiv_pos1 :args (@t178))
% 150.40/150.79  (step @p365 :rule reordering :premises (@p364) :args ((or @t180 @t175 @t179)))
% 150.40/150.79  (step @p366 :rule cnf_equiv_pos2 :args (@t181))
% 150.40/150.79  (step @p367 :rule reordering :premises (@p366) :args ((or @t165 @t183 @t182)))
% 150.40/150.79  (step @p368 :rule chain_m_resolution :premises (@p367 @p12 @p365 @p363 @p347 @p346) :args (@t180 (@list false false false true true) (@list @t181 @t175 @t178 @t165 @t167)))
% 150.40/150.79  (step @p369 :rule cnf_equiv_neg1 :args (@t167))
% 150.40/150.79  (step @p370 :rule reordering :premises (@p369) :args ((or @t166 @t165 @t167)))
% 150.40/150.79  (step @p371 :rule chain_m_resolution :premises (@p370 @p368 @p346) :args (@t165 (@list true true) (@list @t166 @t167)))
% 150.40/150.79  (step @p372 :rule cnf_equiv_pos2 :args (@t178))
% 150.40/150.79  (step @p373 :rule reordering :premises (@p372) :args ((or @t166 @t183 @t179)))
% 150.40/150.79  (step @p374 :rule chain_m_resolution :premises (@p373 @p368 @p363) :args (@t183 @t156 (@list @t166 @t178)))
% 150.40/150.79  (step @p375 :rule cnf_equiv_pos1 :args (@t181))
% 150.40/150.79  (step @p376 :rule reordering :premises (@p375) :args ((or (not @t165) @t175 @t182)))
% 150.40/150.79  (step @p377 false :rule chain_m_resolution :premises (@p376 @p374 @p371 @p12) :args (false (@list true false false) (@list @t175 @t165 @t181)))
% 150.40/150.79  )
% 150.40/150.79  % SZS output end Proof
% 150.40/150.79  % cvc5 exiting
%------------------------------------------------------------------------------