%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : ALG279^5 : TPTP v9.2.1. Bugfixed v5.3.0. % Transfm : none % Format : tptp:raw % Command : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM % Computer : n020.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:05:44 AM UTC 2026 % Result : Theorem 170.74s 171.29s % Output : Proof 170.74s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : ALG279^5 : TPTP v9.2.1. Bugfixed v5.3.0. % 0.12/0.13 % Command : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM % 0.16/0.34 % Computer : n020.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 : Wed Jun 3 01:57:40 EDT 2026 % 0.16/0.35 % CPUTime : % 0.27/0.49 %----Proving TH0 % 170.74/171.29 --- Run --mbqi --mbqi-enum --mbqi-enum-choice-grammar --mbqi-enum-global-syms-grammar --sygus-grammar-ho-partial --no-cegqi --no-sygus-inst at 90s... % 170.74/171.29 --- 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... % 170.74/171.29 --- 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... % 170.74/171.29 --- Run --ho-elim --full-saturate-quant at 18s... % 170.74/171.29 --- Run --ho-elim --no-e-matching --full-saturate-quant at 12s... % 170.74/171.29 % SZS status Theorem % 170.74/171.29 % SZS output start Proof % 170.74/171.29 ( % 170.74/171.29 (declare-sort tptp.g 0) % 170.74/171.29 (define tptp.cGRP_RIGHT_INVERSE () (let ((_let_1 (@var "Xe" tptp.g))) (let ((_let_2 (@var "Xb" tptp.g))) (let ((_let_3 (@var "Xa" tptp.g))) (let ((_let_4 (@var "Xf" (-> tptp.g tptp.g tptp.g)))) (lambda (@list _let_4 _let_1) (forall (@list _let_3) (exists (@list _let_2) (= (_ (_ _let_4 _let_3) _let_2) _let_1))))))))) % 170.74/171.29 (define tptp.cGRP_RIGHT_UNIT () (let ((_let_1 (@var "Xa" tptp.g))) (let ((_let_2 (@var "Xe" tptp.g))) (let ((_let_3 (@var "Xf" (-> tptp.g tptp.g tptp.g)))) (lambda (@list _let_3 _let_2) (forall (@list _let_1) (= (_ (_ _let_3 _let_1) _let_2) _let_1))))))) % 170.74/171.29 (define @t1 () (@var "Xa" tptp.g)) % 170.74/171.29 (define @t2 () (@var "Xe" tptp.g)) % 170.74/171.29 (define @t3 () (@var "Xf" (-> tptp.g tptp.g tptp.g))) % 170.74/171.29 (define @t4 () (_ (_ @t3 @t2) @t1)) % 170.74/171.29 (define @t5 () (@list @t1)) % 170.74/171.29 (define @t6 () (forall @t5 (= @t4 @t1))) % 170.74/171.29 (define @t7 () (@var "Xc" tptp.g)) % 170.74/171.29 (define @t8 () (@var "Xb" tptp.g)) % 170.74/171.29 (define @t9 () (_ (_ @t3 @t8) @t7)) % 170.74/171.29 (define @t10 () (_ @t3 @t1)) % 170.74/171.29 (define @t11 () (_ @t10 @t9)) % 170.74/171.29 (define @t12 () (_ @t10 @t8)) % 170.74/171.29 (define @t13 () (_ (_ @t3 @t12) @t7)) % 170.74/171.29 (define @t14 () (= @t13 @t11)) % 170.74/171.29 (define @t15 () (@list @t8 @t7 @t1)) % 170.74/171.29 (define @t16 () (forall @t15 @t14)) % 170.74/171.29 (define @t17 () (and @t16 (_ (_ tptp.cGRP_RIGHT_UNIT @t3) @t2) (_ (_ tptp.cGRP_RIGHT_INVERSE @t3) @t2))) % 170.74/171.29 (define @t18 () (=> @t17 @t6)) % 170.74/171.29 (define @t19 () (@list @t3 @t2)) % 170.74/171.29 (define @t20 () (forall @t19 @t18)) % 170.74/171.29 (define @t21 () (not @t20)) % 170.74/171.29 (define @t22 () (@list @t8)) % 170.74/171.29 (define @t23 () (exists @t22 (= @t12 @t2))) % 170.74/171.29 (define @t24 () (forall @t5 @t23)) % 170.74/171.29 (define @t25 () (lambda @t19 @t24)) % 170.74/171.29 (define @t26 () (_ @t10 @t2)) % 170.74/171.29 (define @t27 () (forall @t5 (= @t26 @t1))) % 170.74/171.29 (define @t28 () (lambda @t19 @t27)) % 170.74/171.29 (define @t29 () (@var "BOUND_VARIABLE_7526" tptp.g)) % 170.74/171.29 (define @t30 () (@var "BOUND_VARIABLE_7536" (@ho-elim-sort (-> tptp.g tptp.g tptp.g)))) % 170.74/171.29 (define @t31 () (@const 0 (-> (@ho-elim-sort (-> tptp.g tptp.g tptp.g)) tptp.g (@ho-elim-sort (-> tptp.g tptp.g))))) % 170.74/171.29 (define @t32 () (@const 1 (-> (@ho-elim-sort (-> tptp.g tptp.g)) tptp.g tptp.g))) % 170.74/171.29 (define @t33 () (= @t29 (_ @t32 (_ @t31 @t30 @t2) @t29))) % 170.74/171.29 (define @t34 () (_ @t31 @t30 @t1)) % 170.74/171.29 (define @t35 () (_ @t32 @t34 @t8)) % 170.74/171.29 (define @t36 () (not (forall @t5 (not (forall @t22 (not (= @t2 @t35))))))) % 170.74/171.29 (define @t37 () (not (forall @t5 (= @t1 (_ @t32 @t34 @t2))))) % 170.74/171.29 (define @t38 () (_ @t32 (_ @t31 @t30 @t35) @t7)) % 170.74/171.29 (define @t39 () (_ @t32 @t34 (_ @t32 (_ @t31 @t30 @t8) @t7))) % 170.74/171.29 (define @t40 () (forall @t15 (= @t38 @t39))) % 170.74/171.29 (define @t41 () (not @t40)) % 170.74/171.29 (define @t42 () (or @t41 @t37 @t36 @t33)) % 170.74/171.29 (define @t43 () (@list @t30 @t2 @t29)) % 170.74/171.29 (define @t44 () (forall @t43 @t42)) % 170.74/171.29 (define @t45 () (not @t44)) % 170.74/171.29 (define @t46 () (= @t29 (_ @t3 @t2 @t29))) % 170.74/171.29 (define @t47 () (_ @t3 @t1 @t8)) % 170.74/171.29 (define @t48 () (forall @t5 (not (forall @t22 (not (= @t2 @t47)))))) % 170.74/171.29 (define @t49 () (not @t48)) % 170.74/171.29 (define @t50 () (_ @t3 @t1 @t2)) % 170.74/171.29 (define @t51 () (forall @t5 (= @t1 @t50))) % 170.74/171.29 (define @t52 () (not @t51)) % 170.74/171.29 (define @t53 () (_ @t3 @t8 @t7)) % 170.74/171.29 (define @t54 () (_ @t3 @t1 @t53)) % 170.74/171.29 (define @t55 () (_ @t3 @t47 @t7)) % 170.74/171.29 (define @t56 () (forall @t15 (= @t55 @t54))) % 170.74/171.29 (define @t57 () (not @t56)) % 170.74/171.29 (define @t58 () (or @t57 @t52 @t49 @t46)) % 170.74/171.29 (define @t59 () (forall (@list @t3 @t2 @t29) @t58)) % 170.74/171.29 (define @t60 () (@list @t29)) % 170.74/171.29 (define @t61 () (forall @t60 @t58)) % 170.74/171.29 (define @t62 () (forall @t60 @t46)) % 170.74/171.29 (define @t63 () (or @t57 @t52 @t49 @t62)) % 170.74/171.29 (define @t64 () (_ @t3 @t2 @t1)) % 170.74/171.29 (define @t65 () (forall @t5 (= @t1 @t64))) % 170.74/171.29 (define @t66 () (or @t57 @t52 @t49 @t65)) % 170.74/171.29 (define @t67 () (or @t57 @t52 @t49)) % 170.74/171.29 (define @t68 () (and @t56 @t51 @t48)) % 170.74/171.29 (define @t69 () (= @t1 @t4)) % 170.74/171.29 (define @t70 () (@list @t2)) % 170.74/171.29 (define @t71 () (lambda @t70 @t48)) % 170.74/171.29 (define @t72 () (_ (lambda @t19 @t48) @t3)) % 170.74/171.29 (define @t73 () (lambda @t70 @t51)) % 170.74/171.29 (define @t74 () (_ (lambda @t19 @t51) @t3)) % 170.74/171.29 (define @t75 () (and @t16 (_ @t74 @t2) (_ @t72 @t2))) % 170.74/171.29 (define @t76 () (=> @t75 @t6)) % 170.74/171.29 (define @t77 () (forall @t19 @t76)) % 170.74/171.29 (define @t78 () (= @t2 @t12)) % 170.74/171.29 (define @t79 () (not @t78)) % 170.74/171.29 (define @t80 () (forall @t22 @t79)) % 170.74/171.29 (define @t81 () (not @t80)) % 170.74/171.29 (define @t82 () (= @t1 @t26)) % 170.74/171.29 (define @t83 () (forall @t43 (or (not (forall @t15 (= @t39 @t38))) @t37 @t36 @t33))) % 170.74/171.29 (define @t84 () (@quantifiers_skolemize @t83 2)) % 170.74/171.29 (define @t85 () (@quantifiers_skolemize @t83 1)) % 170.74/171.29 (define @t86 () (@quantifiers_skolemize @t83 0)) % 170.74/171.29 (define @t87 () (_ @t31 @t86 @t85)) % 170.74/171.29 (define @t88 () (_ @t32 @t87 @t84)) % 170.74/171.29 (define @t89 () (= @t84 @t88)) % 170.74/171.29 (define @t90 () (_ @t31 @t86 @t1)) % 170.74/171.29 (define @t91 () (_ @t32 @t90 @t8)) % 170.74/171.29 (define @t92 () (forall @t5 (not (forall @t22 (not (= @t85 @t91)))))) % 170.74/171.29 (define @t93 () (not @t92)) % 170.74/171.29 (define @t94 () (forall @t5 (= @t1 (_ @t32 @t90 @t85)))) % 170.74/171.29 (define @t95 () (not @t94)) % 170.74/171.29 (define @t96 () (forall @t15 (= (_ @t32 @t90 (_ @t32 (_ @t31 @t86 @t8) @t7)) (_ @t32 (_ @t31 @t86 @t91) @t7)))) % 170.74/171.29 (define @t97 () (not @t96)) % 170.74/171.29 (define @t98 () (or @t97 @t95 @t93 @t89)) % 170.74/171.29 (define @t99 () (not @t89)) % 170.74/171.29 (define @t100 () (@list true)) % 170.74/171.29 (define @t101 () (@list @t98)) % 170.74/171.29 (define @t102 () (@list @t84)) % 170.74/171.29 (define @t103 () (_ @t31 @t86 @t84)) % 170.74/171.29 (define @t104 () (forall @t22 (not (= @t85 (_ @t32 @t103 @t8))))) % 170.74/171.29 (define @t105 () (@quantifiers_skolemize @t104 0)) % 170.74/171.29 (define @t106 () (_ @t32 @t103 @t105)) % 170.74/171.29 (define @t107 () (= @t85 @t106)) % 170.74/171.29 (define @t108 () (not @t104)) % 170.74/171.29 (define @t109 () (not @t107)) % 170.74/171.29 (define @t110 () (not @t109)) % 170.74/171.29 (define @t111 () (@list @t105)) % 170.74/171.29 (define @t112 () (_ @t32 @t87 @t85)) % 170.74/171.29 (define @t113 () (= @t85 @t112)) % 170.74/171.29 (define @t114 () (= @t85 @t84)) % 170.74/171.29 (define @t115 () (and @t113 @t114)) % 170.74/171.29 (define @t116 () (not @t114)) % 170.74/171.29 (define @t117 () (ite @t114 @t84 @t88)) % 170.74/171.29 (define @t118 () (@purify @t117)) % 170.74/171.29 (define @t119 () (= @t117 @t88)) % 170.74/171.29 (define @t120 () (= @t117 @t84)) % 170.74/171.29 (define @t121 () (= @t88 @t118)) % 170.74/171.29 (define @t122 () (_ @t31 @t86 @t105)) % 170.74/171.29 (define @t123 () (forall @t22 (not (= @t85 (_ @t32 @t122 @t8))))) % 170.74/171.29 (define @t124 () (@quantifiers_skolemize @t123 0)) % 170.74/171.29 (define @t125 () (_ @t32 @t122 @t124)) % 170.74/171.29 (define @t126 () (= @t85 @t125)) % 170.74/171.29 (define @t127 () (not @t123)) % 170.74/171.29 (define @t128 () (not @t126)) % 170.74/171.29 (define @t129 () (not @t128)) % 170.74/171.29 (define @t130 () (_ @t32 @t122 @t84)) % 170.74/171.29 (define @t131 () (_ @t31 @t86 @t106)) % 170.74/171.29 (define @t132 () (_ @t32 @t131 @t84)) % 170.74/171.29 (define @t133 () (_ @t32 @t103 @t130)) % 170.74/171.29 (define @t134 () (= @t133 @t132)) % 170.74/171.29 (define @t135 () (not @t134)) % 170.74/171.29 (define @t136 () (_ @t31 @t86 @t130)) % 170.74/171.29 (define @t137 () (_ @t32 @t136 @t105)) % 170.74/171.29 (define @t138 () (_ @t31 @t86 @t137)) % 170.74/171.29 (define @t139 () (_ @t32 @t138 @t124)) % 170.74/171.29 (define @t140 () (= (_ @t32 @t136 @t125) @t139)) % 170.74/171.29 (define @t141 () (not @t140)) % 170.74/171.29 (define @t142 () (_ @t32 @t122 @t106)) % 170.74/171.29 (define @t143 () (= @t142 @t137)) % 170.74/171.29 (define @t144 () (not @t143)) % 170.74/171.29 (define @t145 () (_ @t32 @t136 @t85)) % 170.74/171.29 (define @t146 () (_ @t32 @t103 @t85)) % 170.74/171.29 (define @t147 () (= (_ @t32 @t122 @t146) @t145)) % 170.74/171.29 (define @t148 () (not @t147)) % 170.74/171.29 (define @t149 () (not @t121)) % 170.74/171.29 (define @t150 () (= @t105 (_ @t32 @t122 @t85))) % 170.74/171.29 (define @t151 () (not @t150)) % 170.74/171.29 (define @t152 () (= @t84 @t146)) % 170.74/171.29 (define @t153 () (not @t152)) % 170.74/171.29 (define @t154 () (and @t134 @t135)) % 170.74/171.29 (assume @p1 @t21) % 170.74/171.29 (assume @p2 true) % 170.74/171.29 (step @p3 (= tptp.cGRP_RIGHT_INVERSE @t25) :rule refl :args (@t25)) % 170.74/171.29 (step @p4 (= tptp.cGRP_RIGHT_UNIT @t28) :rule refl :args (@t28)) % 170.74/171.29 (step @p5 :rule refl :args (@t33)) % 170.74/171.29 (step @p6 :rule refl :args (@t36)) % 170.74/171.29 (step @p7 :rule refl :args (@t37)) % 170.74/171.29 (step @p8 :rule eq-symm :args (@t38 @t39)) % 170.74/171.29 (step @p9 :rule cong :premises (@p8) :args (@t40)) % 170.74/171.29 (step @p10 :rule cong :premises (@p9) :args (@t41)) % 170.74/171.29 (step @p11 :rule nary_cong :premises (@p10 @p7 @p6 @p5) :args (@t42)) % 170.74/171.29 (step @p12 :rule cong :premises (@p11) :args (@t44)) % 170.74/171.29 (step @p13 :rule cong :premises (@p12) :args (@t45)) % 170.74/171.29 ; WARNING: add trust step for TRUST % 170.74/171.29 ; trust TRUST PREPROCESS_HO_ELIM % 170.74/171.29 (step @p14 :rule trust :premises () :args ((= (not @t59) @t45))) % 170.74/171.29 (step @p15 :rule quant-merge-prenex :args ((= (forall @t19 @t61) @t59))) % 170.74/171.29 (step @p16 :rule alpha_equiv :args (@t62 (@list @t29) (@list @t1))) % 170.74/171.29 (step @p17 :rule refl :args (@t49)) % 170.74/171.29 (step @p18 :rule refl :args (@t52)) % 170.74/171.29 (step @p19 :rule refl :args (@t57)) % 170.74/171.29 (step @p20 :rule nary_cong :premises (@p19 @p18 @p17 @p16) :args (@t63)) % 170.74/171.29 (step @p21 :rule quant-miniscope-or :args ((= @t61 @t63))) % 170.74/171.29 (step @p22 :rule trans :premises (@p21 @p20)) % 170.74/171.29 (step @p23 :rule symm :premises (@p22)) % 170.74/171.29 (step @p24 :rule cong :premises (@p23) :args ((forall @t19 @t66))) % 170.74/171.29 (step @p25 :rule trans :premises (@p24 @p15)) % 170.74/171.29 (step @p26 :rule aci_norm :args ((= (or @t67 @t65) @t66))) % 170.74/171.29 (step @p27 :rule refl :args (@t65)) % 170.74/171.29 (step @p28 :rule aci_norm :args ((= (or @t57 (or @t52 @t49)) @t67))) % 170.74/171.29 (step @p29 :rule bool-and-de-morgan :args (@t51 @t48 true)) % 170.74/171.29 (step @p30 :rule nary_cong :premises (@p19 @p29) :args ((or @t57 (not (and @t51 @t48))))) % 170.74/171.29 (step @p31 :rule bool-and-de-morgan :args (@t56 @t51 (and @t48))) % 170.74/171.29 (step @p32 :rule trans :premises (@p31 @p30)) % 170.74/171.29 (step @p33 :rule trans :premises (@p32 @p28)) % 170.74/171.29 (step @p34 :rule nary_cong :premises (@p33 @p27) :args ((or (not @t68) @t65))) % 170.74/171.29 (step @p35 :rule trans :premises (@p34 @p26)) % 170.74/171.29 (step @p36 :rule bool-impl-elim :args (@t68 @t65)) % 170.74/171.29 (step @p37 :rule trans :premises (@p36 @p35)) % 170.74/171.29 (step @p38 :rule cong :premises (@p37) :args ((forall @t19 (=> @t68 @t65)))) % 170.74/171.29 (step @p39 :rule trans :premises (@p38 @p25)) % 170.74/171.29 (step @p40 :rule refl :args (@t64)) % 170.74/171.29 (step @p41 :rule refl :args (@t4)) % 170.74/171.29 (step @p42 :rule cong :premises (@p41 @p40) :args ((= @t4 @t64))) % 170.74/171.29 (step @p43 :rule symm :premises (@p42)) % 170.74/171.29 (step @p44 :rule eq_resolve :premises (@p41 @p43)) % 170.74/171.29 (step @p45 :rule refl :args (@t1)) % 170.74/171.29 (step @p46 :rule cong :premises (@p45 @p44) :args (@t69)) % 170.74/171.29 (step @p47 :rule cong :premises (@p46) :args ((forall @t5 @t69))) % 170.74/171.29 (step @p48 :rule eq-symm :args (@t4 @t1)) % 170.74/171.29 (step @p49 :rule cong :premises (@p48) :args (@t6)) % 170.74/171.29 (step @p50 :rule trans :premises (@p49 @p47)) % 170.74/171.29 (step @p51 :rule beta-reduce :args ((= (_ @t71 @t2) @t48))) % 170.74/171.29 (step @p52 :rule refl :args (@t2)) % 170.74/171.29 (step @p53 :rule beta-reduce :args ((= @t72 @t71))) % 170.74/171.29 (step @p54 :rule ho_cong :premises (@p53 @p52)) % 170.74/171.29 (step @p55 :rule trans :premises (@p54 @p51)) % 170.74/171.29 (step @p56 :rule beta-reduce :args ((= (_ @t73 @t2) @t51))) % 170.74/171.29 (step @p57 :rule beta-reduce :args ((= @t74 @t73))) % 170.74/171.29 (step @p58 :rule ho_cong :premises (@p57 @p52)) % 170.74/171.29 (step @p59 :rule trans :premises (@p58 @p56)) % 170.74/171.29 (step @p60 :rule refl :args ((_ @t3 @t1 @t9))) % 170.74/171.29 (step @p61 :rule refl :args (@t53)) % 170.74/171.29 (step @p62 :rule cong :premises (@p45 @p61) :args (@t54)) % 170.74/171.29 (step @p63 :rule trans :premises (@p62 @p60)) % 170.74/171.29 (step @p64 :rule refl :args (@t10)) % 170.74/171.29 (step @p65 :rule ho_cong :premises (@p64 @p61)) % 170.74/171.29 (step @p66 :rule cong :premises (@p65 @p63) :args ((= (_ @t10 @t53) @t54))) % 170.74/171.29 (step @p67 :rule symm :premises (@p66)) % 170.74/171.29 (step @p68 :rule refl :args (@t11)) % 170.74/171.29 (step @p69 :rule eq_resolve :premises (@p68 @p67)) % 170.74/171.29 (step @p70 :rule refl :args (@t9)) % 170.74/171.29 (step @p71 :rule cong :premises (@p70 @p61) :args ((= @t9 @t53))) % 170.74/171.29 (step @p72 :rule symm :premises (@p71)) % 170.74/171.29 (step @p73 :rule eq_resolve :premises (@p70 @p72)) % 170.74/171.29 (step @p74 :rule ho_cong :premises (@p64 @p73)) % 170.74/171.29 (step @p75 :rule trans :premises (@p74 @p69)) % 170.74/171.29 (step @p76 :rule refl :args ((_ @t3 @t12 @t7))) % 170.74/171.29 (step @p77 :rule refl :args (@t7)) % 170.74/171.29 (step @p78 :rule refl :args (@t47)) % 170.74/171.29 (step @p79 :rule cong :premises (@p78 @p77) :args (@t55)) % 170.74/171.29 (step @p80 :rule trans :premises (@p79 @p76)) % 170.74/171.29 (step @p81 :rule refl :args (@t3)) % 170.74/171.29 (step @p82 :rule ho_cong :premises (@p81 @p78)) % 170.74/171.29 (step @p83 :rule ho_cong :premises (@p82 @p77)) % 170.74/171.29 (step @p84 :rule cong :premises (@p83 @p80) :args ((= (_ (_ @t3 @t47) @t7) @t55))) % 170.74/171.29 (step @p85 :rule symm :premises (@p84)) % 170.74/171.29 (step @p86 :rule refl :args (@t13)) % 170.74/171.29 (step @p87 :rule eq_resolve :premises (@p86 @p85)) % 170.74/171.29 (step @p88 :rule refl :args (@t12)) % 170.74/171.29 (step @p89 :rule cong :premises (@p88 @p78) :args ((= @t12 @t47))) % 170.74/171.29 (step @p90 :rule symm :premises (@p89)) % 170.74/171.29 (step @p91 :rule eq_resolve :premises (@p88 @p90)) % 170.74/171.29 (step @p92 :rule ho_cong :premises (@p81 @p91)) % 170.74/171.29 (step @p93 :rule ho_cong :premises (@p92 @p77)) % 170.74/171.29 (step @p94 :rule trans :premises (@p93 @p87)) % 170.74/171.29 (step @p95 :rule cong :premises (@p94 @p75) :args (@t14)) % 170.74/171.29 (step @p96 :rule cong :premises (@p95) :args (@t16)) % 170.74/171.29 (step @p97 :rule nary_cong :premises (@p96 @p59 @p55) :args (@t75)) % 170.74/171.29 (step @p98 :rule cong :premises (@p97 @p50) :args (@t76)) % 170.74/171.29 (step @p99 :rule cong :premises (@p98) :args (@t77)) % 170.74/171.29 (step @p100 :rule trans :premises (@p99 @p39)) % 170.74/171.29 (step @p101 :rule cong :premises (@p100) :args ((not @t77))) % 170.74/171.29 (step @p102 :rule refl :args (@t6)) % 170.74/171.29 (step @p103 :rule refl :args (@t3)) % 170.74/171.29 (step @p104 :rule refl :args (@t2)) % 170.74/171.29 (step @p105 :rule cong :premises (@p104 @p91) :args (@t78)) % 170.74/171.29 (step @p106 :rule cong :premises (@p105) :args (@t79)) % 170.74/171.29 (step @p107 :rule cong :premises (@p106) :args (@t80)) % 170.74/171.29 (step @p108 :rule cong :premises (@p107) :args (@t81)) % 170.74/171.29 (step @p109 :rule exists-elim :args ((= (exists @t22 @t78) @t81))) % 170.74/171.29 (step @p110 :rule trans :premises (@p109 @p108)) % 170.74/171.29 (step @p111 :rule eq-symm :args (@t12 @t2)) % 170.74/171.29 (step @p112 :rule cong :premises (@p111) :args (@t23)) % 170.74/171.29 (step @p113 :rule trans :premises (@p112 @p110)) % 170.74/171.29 (step @p114 :rule cong :premises (@p113) :args (@t24)) % 170.74/171.29 (step @p115 :rule cong :premises (@p114) :args (@t25)) % 170.74/171.29 (step @p116 :rule trans :premises (@p3 @p115)) % 170.74/171.29 (step @p117 :rule ho_cong :premises (@p116 @p103)) % 170.74/171.29 (step @p118 :rule ho_cong :premises (@p117 @p52)) % 170.74/171.29 (step @p119 :rule refl :args (@t50)) % 170.74/171.29 (step @p120 :rule refl :args (@t26)) % 170.74/171.29 (step @p121 :rule cong :premises (@p120 @p119) :args ((= @t26 @t50))) % 170.74/171.29 (step @p122 :rule symm :premises (@p121)) % 170.74/171.29 (step @p123 :rule eq_resolve :premises (@p120 @p122)) % 170.74/171.29 (step @p124 :rule cong :premises (@p45 @p123) :args (@t82)) % 170.74/171.29 (step @p125 :rule cong :premises (@p124) :args ((forall @t5 @t82))) % 170.74/171.29 (step @p126 :rule eq-symm :args (@t26 @t1)) % 170.74/171.29 (step @p127 :rule cong :premises (@p126) :args (@t27)) % 170.74/171.29 (step @p128 :rule trans :premises (@p127 @p125)) % 170.74/171.29 (step @p129 :rule cong :premises (@p128) :args (@t28)) % 170.74/171.29 (step @p130 :rule trans :premises (@p4 @p129)) % 170.74/171.29 (step @p131 :rule ho_cong :premises (@p130 @p103)) % 170.74/171.29 (step @p132 :rule ho_cong :premises (@p131 @p52)) % 170.74/171.29 (step @p133 :rule refl :args (@t16)) % 170.74/171.29 (step @p134 :rule nary_cong :premises (@p133 @p132 @p118) :args (@t17)) % 170.74/171.29 (step @p135 :rule cong :premises (@p134 @p102) :args (@t18)) % 170.74/171.29 (step @p136 :rule cong :premises (@p135) :args (@t20)) % 170.74/171.29 (step @p137 :rule cong :premises (@p136) :args (@t21)) % 170.74/171.29 (step @p138 :rule trans :premises (@p137 @p101)) % 170.74/171.29 (step @p139 :rule trans :premises (@p138 @p14 @p13)) % 170.74/171.29 (step @p140 :rule eq_resolve :premises (@p1 @p139)) % 170.74/171.29 (step @p141 :rule skolemize :premises (@p140)) % 170.74/171.29 (step @p142 :rule cnf_or_neg :args (@t98 3)) % 170.74/171.29 (step @p143 :rule chain_m_resolution :premises (@p142 @p141) :args (@t99 @t100 @t101)) % 170.74/171.29 (step @p144 :rule bool-double-not-elim :args (@t92)) % 170.74/171.29 (step @p145 :rule refl :args (@t98)) % 170.74/171.29 (step @p146 :rule nary_cong :premises (@p145 @p144) :args ((or @t98 (not @t93)))) % 170.74/171.29 (step @p147 :rule cnf_or_neg :args (@t98 2)) % 170.74/171.29 (step @p148 :rule eq_resolve :premises (@p147 @p146)) % 170.74/171.29 (step @p149 :rule reordering :premises (@p148) :args ((or @t92 @t98))) % 170.74/171.29 (step @p150 :rule chain_m_resolution :premises (@p149 @p141) :args (@t92 @t100 @t101)) % 170.74/171.29 (step @p151 :rule instantiate :premises (@p150) :args (@t102)) % 170.74/171.29 (step @p152 :rule refl :args (@t107)) % 170.74/171.29 (step @p153 :rule bool-double-not-elim :args (@t104)) % 170.74/171.29 (step @p154 :rule nary_cong :premises (@p153 @p152) :args ((or (not @t108) @t107))) % 170.74/171.29 (step @p155 :rule bool-double-not-elim :args (@t107)) % 170.74/171.29 (step @p156 :rule refl :args (@t108)) % 170.74/171.29 (step @p157 :rule cong :premises (@p156 @p155) :args ((=> @t108 @t110))) % 170.74/171.29 (assume-push @p340 @t108) % 170.74/171.29 (step @p159 :rule skolemize :premises (@p151)) % 170.74/171.29 (step-pop @p341 :rule scope :premises (@p159)) % 170.74/171.29 (step @p160 :rule process_scope :premises (@p341) :args (@t110)) % 170.74/171.29 (step @p162 :rule eq_resolve :premises (@p160 @p157)) % 170.74/171.29 (step @p163 :rule implies_elim :premises (@p162)) % 170.74/171.29 (step @p164 :rule eq_resolve :premises (@p163 @p154)) % 170.74/171.29 (step @p165 :rule chain_m_resolution :premises (@p164 @p151) :args (@t107 @t100 (@list @t104))) % 170.74/171.29 (step @p166 :rule bool-double-not-elim :args (@t94)) % 170.74/171.29 (step @p167 :rule nary_cong :premises (@p145 @p166) :args ((or @t98 (not @t95)))) % 170.74/171.29 (step @p168 :rule cnf_or_neg :args (@t98 1)) % 170.74/171.29 (step @p169 :rule eq_resolve :premises (@p168 @p167)) % 170.74/171.29 (step @p170 :rule reordering :premises (@p169) :args ((or @t94 @t98))) % 170.74/171.29 (step @p171 :rule chain_m_resolution :premises (@p170 @p141) :args (@t94 @t100 @t101)) % 170.74/171.29 (step @p172 :rule instantiate :premises (@p171) :args (@t102)) % 170.74/171.29 (step @p173 :rule instantiate :premises (@p171) :args (@t111)) % 170.74/171.29 (step @p174 :rule instantiate :premises (@p171) :args ((@list @t85))) % 170.74/171.29 (assume-push @p342 @t113) % 170.74/171.29 (assume-push @p343 @t114) % 170.74/171.29 (assume-push @p344 @t114) % 170.74/171.29 (assume-push @p345 @t113) % 170.74/171.29 (step @p179 :rule refl :args (@t87)) % 170.74/171.29 (step @p180 :rule cong :premises (@p179 @p343) :args (@t112)) % 170.74/171.29 (step @p181 :rule symm :premises (@p343)) % 170.74/171.29 (step @p182 :rule trans :premises (@p181 @p174 @p180)) % 170.74/171.29 (step-pop @p346 :rule scope :premises (@p182)) % 170.74/171.29 (step-pop @p347 :rule scope :premises (@p346)) % 170.74/171.29 (step @p183 :rule process_scope :premises (@p347) :args (@t89)) % 170.74/171.29 (step @p186 :rule and_intro :premises (@p343 @p174)) % 170.74/171.29 (step @p187 :rule modus_ponens :premises (@p186 @p183)) % 170.74/171.29 (step-pop @p348 :rule scope :premises (@p187)) % 170.74/171.29 (step-pop @p349 :rule scope :premises (@p348)) % 170.74/171.29 (step @p188 :rule process_scope :premises (@p349) :args (@t89)) % 170.74/171.29 (step @p191 :rule implies_elim :premises (@p188)) % 170.74/171.29 (step @p192 :rule cnf_and_neg :args (@t115)) % 170.74/171.29 (step @p193 :rule resolution :premises (@p192 @p191) :args (true @t115)) % 170.74/171.29 (step @p194 :rule reordering :premises (@p193) :args ((or @t89 (not @t113) @t116))) % 170.74/171.29 (step @p195 :rule chain_m_resolution :premises (@p194 @p174 @p143) :args (@t116 (@list false true) (@list @t113 @t89))) % 170.74/171.29 (step @p196 :rule eq-symm :args (@t118 @t88)) % 170.74/171.29 (step @p197 :rule eq-symm :args (@t118 @t84)) % 170.74/171.29 (step @p198 :rule refl :args (@t114)) % 170.74/171.29 (step @p199 :rule cong :premises (@p198 @p197 @p196) :args ((ite @t114 (= @t118 @t84) (= @t118 @t88)))) % 170.74/171.29 (step @p200 :rule refl :args (@t88)) % 170.74/171.29 (step @p201 :rule eq-refl :args (@t117)) % 170.74/171.29 (step @p202 :rule skolem_intro :args (@t118)) % 170.74/171.29 (step @p203 :rule refl :args (@t117)) % 170.74/171.29 (step @p204 :rule cong :premises (@p203 @p202) :args ((= @t117 @t118))) % 170.74/171.29 (step @p205 :rule trans :premises (@p204 @p201)) % 170.74/171.29 (step @p206 :rule true_elim :premises (@p205)) % 170.74/171.29 (step @p207 :rule cong :premises (@p206 @p200) :args (@t119)) % 170.74/171.29 (step @p208 :rule refl :args (@t84)) % 170.74/171.29 (step @p209 :rule cong :premises (@p206 @p208) :args (@t120)) % 170.74/171.29 (step @p210 :rule cong :premises (@p198 @p209 @p207) :args ((ite @t114 @t120 @t119))) % 170.74/171.29 (step @p211 :rule ite_eq :args (@t117)) % 170.74/171.29 (step @p212 :rule eq_resolve :premises (@p211 @p210)) % 170.74/171.29 (step @p213 :rule eq_resolve :premises (@p212 @p199)) % 170.74/171.29 (step @p214 :rule ite_elim2 :premises (@p213)) % 170.74/171.29 (step @p215 :rule chain_m_resolution :premises (@p214 @p195) :args (@t121 @t100 (@list @t114))) % 170.74/171.29 (step @p216 :rule instantiate :premises (@p150) :args (@t111)) % 170.74/171.29 (step @p217 :rule refl :args (@t126)) % 170.74/171.29 (step @p218 :rule bool-double-not-elim :args (@t123)) % 170.74/171.29 (step @p219 :rule nary_cong :premises (@p218 @p217) :args ((or (not @t127) @t126))) % 170.74/171.29 (step @p220 :rule bool-double-not-elim :args (@t126)) % 170.74/171.29 (step @p221 :rule refl :args (@t127)) % 170.74/171.29 (step @p222 :rule cong :premises (@p221 @p220) :args ((=> @t127 @t129))) % 170.74/171.29 (assume-push @p350 @t127) % 170.74/171.29 (step @p224 :rule skolemize :premises (@p216)) % 170.74/171.29 (step-pop @p351 :rule scope :premises (@p224)) % 170.74/171.29 (step @p225 :rule process_scope :premises (@p351) :args (@t129)) % 170.74/171.29 (step @p227 :rule eq_resolve :premises (@p225 @p222)) % 170.74/171.29 (step @p228 :rule implies_elim :premises (@p227)) % 170.74/171.29 (step @p229 :rule eq_resolve :premises (@p228 @p219)) % 170.74/171.29 (step @p230 :rule chain_m_resolution :premises (@p229 @p216) :args (@t126 @t100 (@list @t123))) % 170.74/171.29 (step @p231 :rule bool-double-not-elim :args (@t96)) % 170.74/171.29 (step @p232 :rule nary_cong :premises (@p145 @p231) :args ((or @t98 (not @t97)))) % 170.74/171.29 (step @p233 :rule cnf_or_neg :args (@t98 0)) % 170.74/171.29 (step @p234 :rule eq_resolve :premises (@p233 @p232)) % 170.74/171.29 (step @p235 :rule reordering :premises (@p234) :args ((or @t96 @t98))) % 170.74/171.29 (step @p236 :rule chain_m_resolution :premises (@p235 @p141) :args (@t96 @t100 @t101)) % 170.74/171.29 (step @p237 :rule instantiate :premises (@p236) :args ((@list @t84 @t85 @t105))) % 170.74/171.29 (step @p238 :rule instantiate :premises (@p236) :args ((@list @t84 @t105 @t105))) % 170.74/171.29 (step @p239 :rule instantiate :premises (@p236) :args ((@list @t105 @t124 @t130))) % 170.74/171.29 (step @p240 :rule instantiate :premises (@p236) :args ((@list @t105 @t84 @t84))) % 170.74/171.29 (step @p241 :rule refl :args (@t135)) % 170.74/171.29 (step @p242 :rule refl :args (@t141)) % 170.74/171.29 (step @p243 :rule refl :args (@t144)) % 170.74/171.29 (step @p244 :rule refl :args (@t148)) % 170.74/171.29 (step @p245 :rule refl :args (@t128)) % 170.74/171.29 (step @p246 :rule refl :args (@t149)) % 170.74/171.29 (step @p247 :rule refl :args (@t151)) % 170.74/171.29 (step @p248 :rule refl :args (@t153)) % 170.74/171.29 (step @p249 :rule refl :args (@t109)) % 170.74/171.29 (step @p250 :rule bool-double-not-elim :args (@t89)) % 170.74/171.29 (step @p251 :rule nary_cong :premises (@p250 @p249 @p248 @p247 @p246 @p245 @p244 @p243 @p242 @p241) :args ((or (not @t99) @t109 @t153 @t151 @t149 @t128 @t148 @t144 @t141 @t135))) % 170.74/171.29 (assume-push @p352 @t134) % 170.74/171.29 (assume-push @p353 @t135) % 170.74/171.29 (step @p254 :rule evaluate :args ((= false true))) % 170.74/171.29 (step @p255 :rule true_intro :premises (@p240)) % 170.74/171.29 (step @p256 :rule false_intro :premises (@p353)) % 170.74/171.29 (step @p257 :rule symm :premises (@p256)) % 170.74/171.29 (step @p258 :rule trans :premises (@p257 @p255)) % 170.74/171.29 (step @p259 false :rule eq_resolve :premises (@p258 @p254)) % 170.74/171.29 (step-pop @p354 :rule scope :premises (@p259)) % 170.74/171.29 (step-pop @p355 :rule scope :premises (@p354)) % 170.74/171.29 (step @p260 :rule process_scope :premises (@p355) :args (false)) % 170.74/171.29 (assume-push @p356 @t99) % 170.74/171.29 (assume-push @p357 @t107) % 170.74/171.29 (assume-push @p358 @t152) % 170.74/171.29 (assume-push @p359 @t150) % 170.74/171.29 (assume-push @p360 @t121) % 170.74/171.29 (assume-push @p361 @t126) % 170.74/171.29 (assume-push @p362 @t147) % 170.74/171.29 (assume-push @p363 @t143) % 170.74/171.29 (assume-push @p364 @t140) % 170.74/171.29 (assume-push @p365 @t134) % 170.74/171.29 (assume-push @p366 @t143) % 170.74/171.29 (assume-push @p367 @t147) % 170.74/171.29 (assume-push @p368 @t121) % 170.74/171.29 (assume-push @p369 @t140) % 170.74/171.29 (assume-push @p370 @t150) % 170.74/171.29 (assume-push @p371 @t152) % 170.74/171.29 (assume-push @p372 @t107) % 170.74/171.29 (assume-push @p373 @t126) % 170.74/171.29 (assume-push @p374 @t99) % 170.74/171.29 (step @p282 :rule false_intro :premises (@p143)) % 170.74/171.29 (step @p283 :rule symm :premises (@p360)) % 170.74/171.29 (step @p284 :rule cong :premises (@p208 @p283) :args ((= @t84 @t118))) % 170.74/171.29 (step @p285 :rule trans :premises (@p284 @p282)) % 170.74/171.29 (step @p286 :rule symm :premises (@p165)) % 170.74/171.29 (step @p287 :rule refl :args (@t86)) % 170.74/171.29 (step @p288 :rule cong :premises (@p287 @p286) :args (@t131)) % 170.74/171.29 (step @p289 :rule cong :premises (@p288 @p208) :args (@t132)) % 170.74/171.29 (step @p290 :rule trans :premises (@p289 @p360)) % 170.74/171.29 (step @p291 :rule symm :premises (@p172)) % 170.74/171.29 (step @p292 :rule symm :premises (@p230)) % 170.74/171.29 (step @p293 :rule refl :args (@t124)) % 170.74/171.29 (step @p294 :rule symm :premises (@p173)) % 170.74/171.29 (step @p295 :rule refl :args (@t122)) % 170.74/171.29 (step @p296 :rule cong :premises (@p295 @p286) :args (@t142)) % 170.74/171.29 (step @p297 :rule symm :premises (@p238)) % 170.74/171.29 (step @p298 :rule trans :premises (@p297 @p296 @p294)) % 170.74/171.29 (step @p299 :rule cong :premises (@p287 @p298) :args (@t138)) % 170.74/171.29 (step @p300 :rule cong :premises (@p299 @p293) :args (@t139)) % 170.74/171.29 (step @p301 :rule refl :args (@t136)) % 170.74/171.29 (step @p302 :rule cong :premises (@p301 @p230) :args (@t145)) % 170.74/171.29 (step @p303 :rule cong :premises (@p295 @p172) :args (@t130)) % 170.74/171.29 (step @p304 :rule trans :premises (@p303 @p237 @p302 @p239 @p300 @p292)) % 170.74/171.29 (step @p305 :rule refl :args (@t103)) % 170.74/171.29 (step @p306 :rule cong :premises (@p305 @p304) :args (@t133)) % 170.74/171.29 (step @p307 :rule trans :premises (@p306 @p291)) % 170.74/171.29 (step @p308 :rule cong :premises (@p307 @p290) :args (@t134)) % 170.74/171.29 (step @p309 :rule trans :premises (@p308 @p285)) % 170.74/171.29 (step @p310 :rule false_elim :premises (@p309)) % 170.74/171.29 (step-pop @p375 :rule scope :premises (@p310)) % 170.74/171.29 (step-pop @p376 :rule scope :premises (@p375)) % 170.74/171.29 (step-pop @p377 :rule scope :premises (@p376)) % 170.74/171.29 (step-pop @p378 :rule scope :premises (@p377)) % 170.74/171.29 (step-pop @p379 :rule scope :premises (@p378)) % 170.74/171.29 (step-pop @p380 :rule scope :premises (@p379)) % 170.74/171.29 (step-pop @p381 :rule scope :premises (@p380)) % 170.74/171.29 (step-pop @p382 :rule scope :premises (@p381)) % 170.74/171.29 (step-pop @p383 :rule scope :premises (@p382)) % 170.74/171.29 (step @p311 :rule process_scope :premises (@p383) :args (@t135)) % 170.74/171.29 (step @p321 :rule and_intro :premises (@p238 @p237 @p360 @p239 @p173 @p172 @p165 @p230 @p143)) % 170.74/171.29 (step @p322 :rule modus_ponens :premises (@p321 @p311)) % 170.74/171.29 (step @p323 :rule and_intro :premises (@p240 @p322)) % 170.74/171.29 (step-pop @p384 :rule scope :premises (@p323)) % 170.74/171.29 (step-pop @p385 :rule scope :premises (@p384)) % 170.74/171.29 (step-pop @p386 :rule scope :premises (@p385)) % 170.74/171.29 (step-pop @p387 :rule scope :premises (@p386)) % 170.74/171.29 (step-pop @p388 :rule scope :premises (@p387)) % 170.74/171.29 (step-pop @p389 :rule scope :premises (@p388)) % 170.74/171.29 (step-pop @p390 :rule scope :premises (@p389)) % 170.74/171.29 (step-pop @p391 :rule scope :premises (@p390)) % 170.74/171.29 (step-pop @p392 :rule scope :premises (@p391)) % 170.74/171.29 (step-pop @p393 :rule scope :premises (@p392)) % 170.74/171.29 (step @p324 :rule process_scope :premises (@p393) :args (@t154)) % 170.74/171.29 (step @p335 :rule implies_elim :premises (@p324)) % 170.74/171.29 (step @p336 :rule resolution :premises (@p335 @p260) :args (true @t154)) % 170.74/171.29 (step @p337 :rule not_and :premises (@p336)) % 170.74/171.29 (step @p338 :rule eq_resolve :premises (@p337 @p251)) % 170.74/171.29 (step @p339 false :rule chain_m_resolution :premises (@p338 @p240 @p239 @p238 @p237 @p230 @p215 @p173 @p172 @p165 @p143) :args (false (@list false false false false false false false false false true) (@list @t134 @t140 @t143 @t147 @t126 @t121 @t150 @t152 @t107 @t89))) % 170.74/171.29 ) % 170.74/171.29 % SZS output end Proof % 170.74/171.29 % cvc5 exiting %------------------------------------------------------------------------------