%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : ALG277^5 : TPTP v9.2.1. Bugfixed v5.3.0. % Transfm : none % Format : tptp:raw % Command : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM % Computer : n011.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:43 AM UTC 2026 % Result : Theorem 170.83s 171.19s % Output : Proof 170.83s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : ALG277^5 : TPTP v9.2.1. Bugfixed v5.3.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 : n011.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:56:50 EDT 2026 % 0.16/0.35 % CPUTime : % 0.28/0.50 %----Proving TH0 % 170.83/171.19 --- 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.83/171.19 --- 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.83/171.19 --- 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.83/171.19 --- Run --ho-elim --full-saturate-quant at 18s... % 170.83/171.19 --- Run --ho-elim --no-e-matching --full-saturate-quant at 12s... % 170.83/171.19 % SZS status Theorem % 170.83/171.19 % SZS output start Proof % 170.83/171.19 ( % 170.83/171.19 (declare-sort tptp.g 0) % 170.83/171.19 (define tptp.cGRP_ASSOC () (let ((_let_1 (@var "Xc" tptp.g))) (let ((_let_2 (@var "Xb" tptp.g))) (let ((_let_3 (@var "Xf" (-> tptp.g tptp.g tptp.g)))) (let ((_let_4 (@var "Xa" tptp.g))) (let ((_let_5 (_ _let_3 _let_4))) (lambda (@list _let_3) (forall (@list _let_4 _let_2 _let_1) (= (_ (_ _let_3 (_ _let_5 _let_2)) _let_1) (_ _let_5 (_ (_ _let_3 _let_2) _let_1))))))))))) % 170.83/171.19 (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.83/171.19 (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.83/171.19 (define tptp.cGROUP3 () (let ((_let_1 (@var "Xe" tptp.g))) (let ((_let_2 (@var "Xf" (-> tptp.g tptp.g tptp.g)))) (lambda (@list _let_2 _let_1) (and (_ tptp.cGRP_ASSOC _let_2) (_ (_ tptp.cGRP_RIGHT_UNIT _let_2) _let_1) (_ (_ tptp.cGRP_RIGHT_INVERSE _let_2) _let_1)))))) % 170.83/171.19 (define @t1 () (@var "Xa" tptp.g)) % 170.83/171.19 (define @t2 () (@var "Xe" tptp.g)) % 170.83/171.19 (define @t3 () (@var "Xf" (-> tptp.g tptp.g tptp.g))) % 170.83/171.19 (define @t4 () (_ (_ @t3 @t2) @t1)) % 170.83/171.19 (define @t5 () (@list @t1)) % 170.83/171.19 (define @t6 () (forall @t5 (= @t4 @t1))) % 170.83/171.19 (define @t7 () (=> (_ (_ tptp.cGROUP3 @t3) @t2) @t6)) % 170.83/171.19 (define @t8 () (@list @t3 @t2)) % 170.83/171.19 (define @t9 () (forall @t8 @t7)) % 170.83/171.19 (define @t10 () (not @t9)) % 170.83/171.19 (define @t11 () (@var "Xc" tptp.g)) % 170.83/171.19 (define @t12 () (@var "Xb" tptp.g)) % 170.83/171.19 (define @t13 () (_ (_ @t3 @t12) @t11)) % 170.83/171.19 (define @t14 () (_ @t3 @t1)) % 170.83/171.19 (define @t15 () (_ @t14 @t13)) % 170.83/171.19 (define @t16 () (_ @t14 @t12)) % 170.83/171.19 (define @t17 () (_ (_ @t3 @t16) @t11)) % 170.83/171.19 (define @t18 () (= @t17 @t15)) % 170.83/171.19 (define @t19 () (@list @t1 @t12 @t11)) % 170.83/171.19 (define @t20 () (forall @t19 @t18)) % 170.83/171.19 (define @t21 () (@list @t3)) % 170.83/171.19 (define @t22 () (lambda @t21 @t20)) % 170.83/171.19 (define @t23 () (= @t16 @t2)) % 170.83/171.19 (define @t24 () (@list @t12)) % 170.83/171.19 (define @t25 () (exists @t24 @t23)) % 170.83/171.19 (define @t26 () (forall @t5 @t25)) % 170.83/171.19 (define @t27 () (lambda @t8 @t26)) % 170.83/171.19 (define @t28 () (_ @t14 @t2)) % 170.83/171.19 (define @t29 () (forall @t5 (= @t28 @t1))) % 170.83/171.19 (define @t30 () (lambda @t8 @t29)) % 170.83/171.19 (define @t31 () (and (_ tptp.cGRP_ASSOC @t3) (_ (_ tptp.cGRP_RIGHT_UNIT @t3) @t2) (_ (_ tptp.cGRP_RIGHT_INVERSE @t3) @t2))) % 170.83/171.19 (define @t32 () (lambda @t8 @t31)) % 170.83/171.19 (define @t33 () (@var "BOUND_VARIABLE_7563" tptp.g)) % 170.83/171.19 (define @t34 () (@var "BOUND_VARIABLE_7573" (@ho-elim-sort (-> tptp.g tptp.g tptp.g)))) % 170.83/171.19 (define @t35 () (@const 0 (-> (@ho-elim-sort (-> tptp.g tptp.g tptp.g)) tptp.g (@ho-elim-sort (-> tptp.g tptp.g))))) % 170.83/171.19 (define @t36 () (@const 1 (-> (@ho-elim-sort (-> tptp.g tptp.g)) tptp.g tptp.g))) % 170.83/171.19 (define @t37 () (= @t33 (_ @t36 (_ @t35 @t34 @t2) @t33))) % 170.83/171.19 (define @t38 () (_ @t35 @t34 @t1)) % 170.83/171.19 (define @t39 () (_ @t36 @t38 @t12)) % 170.83/171.19 (define @t40 () (not (= @t39 @t2))) % 170.83/171.19 (define @t41 () (forall @t24 @t40)) % 170.83/171.19 (define @t42 () (not @t41)) % 170.83/171.19 (define @t43 () (forall @t5 @t42)) % 170.83/171.19 (define @t44 () (not @t43)) % 170.83/171.19 (define @t45 () (not (forall @t5 (= @t1 (_ @t36 @t38 @t2))))) % 170.83/171.19 (define @t46 () (_ @t36 (_ @t35 @t34 @t39) @t11)) % 170.83/171.19 (define @t47 () (_ @t36 @t38 (_ @t36 (_ @t35 @t34 @t12) @t11))) % 170.83/171.19 (define @t48 () (forall @t19 (= @t46 @t47))) % 170.83/171.19 (define @t49 () (not @t48)) % 170.83/171.19 (define @t50 () (or @t49 @t45 @t44 @t37)) % 170.83/171.19 (define @t51 () (@list @t34 @t2 @t33)) % 170.83/171.19 (define @t52 () (forall @t51 @t50)) % 170.83/171.19 (define @t53 () (not @t52)) % 170.83/171.19 (define @t54 () (= @t33 (_ @t3 @t2 @t33))) % 170.83/171.19 (define @t55 () (_ @t3 @t1 @t12)) % 170.83/171.19 (define @t56 () (forall @t5 (not (forall @t24 (not (= @t55 @t2)))))) % 170.83/171.19 (define @t57 () (not @t56)) % 170.83/171.19 (define @t58 () (_ @t3 @t1 @t2)) % 170.83/171.19 (define @t59 () (forall @t5 (= @t1 @t58))) % 170.83/171.19 (define @t60 () (not @t59)) % 170.83/171.19 (define @t61 () (_ @t3 @t12 @t11)) % 170.83/171.19 (define @t62 () (_ @t3 @t1 @t61)) % 170.83/171.19 (define @t63 () (_ @t3 @t55 @t11)) % 170.83/171.19 (define @t64 () (forall @t19 (= @t63 @t62))) % 170.83/171.19 (define @t65 () (not @t64)) % 170.83/171.19 (define @t66 () (or @t65 @t60 @t57 @t54)) % 170.83/171.19 (define @t67 () (forall (@list @t3 @t2 @t33) @t66)) % 170.83/171.19 (define @t68 () (@list @t33)) % 170.83/171.19 (define @t69 () (forall @t68 @t66)) % 170.83/171.19 (define @t70 () (forall @t68 @t54)) % 170.83/171.19 (define @t71 () (or @t65 @t60 @t57 @t70)) % 170.83/171.19 (define @t72 () (_ @t3 @t2 @t1)) % 170.83/171.19 (define @t73 () (forall @t5 (= @t1 @t72))) % 170.83/171.19 (define @t74 () (or @t65 @t60 @t57 @t73)) % 170.83/171.19 (define @t75 () (or @t65 @t60 @t57)) % 170.83/171.19 (define @t76 () (and @t64 @t59 @t56)) % 170.83/171.19 (define @t77 () (= @t1 @t4)) % 170.83/171.19 (define @t78 () (@list @t2)) % 170.83/171.19 (define @t79 () (lambda @t78 @t76)) % 170.83/171.19 (define @t80 () (_ (lambda @t8 @t76) @t3)) % 170.83/171.19 (define @t81 () (=> (_ @t80 @t2) @t6)) % 170.83/171.19 (define @t82 () (forall @t8 @t81)) % 170.83/171.19 (define @t83 () (lambda @t78 @t56)) % 170.83/171.19 (define @t84 () (_ (lambda @t8 @t56) @t3)) % 170.83/171.19 (define @t85 () (lambda @t78 @t59)) % 170.83/171.19 (define @t86 () (_ (lambda @t8 @t59) @t3)) % 170.83/171.19 (define @t87 () (_ (lambda @t21 @t64) @t3)) % 170.83/171.19 (define @t88 () (not @t23)) % 170.83/171.19 (define @t89 () (forall @t24 @t88)) % 170.83/171.19 (define @t90 () (not @t89)) % 170.83/171.19 (define @t91 () (= @t1 @t28)) % 170.83/171.19 (define @t92 () (forall @t51 (or (not (forall @t19 (= @t47 @t46))) @t45 (not (forall @t5 (not (forall @t24 (not (= @t2 @t39)))))) @t37))) % 170.83/171.19 (define @t93 () (@quantifiers_skolemize @t92 1)) % 170.83/171.19 (define @t94 () (@quantifiers_skolemize @t92 0)) % 170.83/171.19 (define @t95 () (_ @t35 @t94 @t1)) % 170.83/171.19 (define @t96 () (forall @t5 (= @t1 (_ @t36 @t95 @t93)))) % 170.83/171.19 (define @t97 () (@quantifiers_skolemize @t92 2)) % 170.83/171.19 (define @t98 () (_ @t35 @t94 @t93)) % 170.83/171.19 (define @t99 () (_ @t36 @t98 @t97)) % 170.83/171.19 (define @t100 () (= @t97 @t99)) % 170.83/171.19 (define @t101 () (_ @t36 @t95 @t12)) % 170.83/171.19 (define @t102 () (forall @t5 (not (forall @t24 (not (= @t93 @t101)))))) % 170.83/171.19 (define @t103 () (not @t102)) % 170.83/171.19 (define @t104 () (not @t96)) % 170.83/171.19 (define @t105 () (forall @t19 (= (_ @t36 @t95 (_ @t36 (_ @t35 @t94 @t12) @t11)) (_ @t36 (_ @t35 @t94 @t101) @t11)))) % 170.83/171.19 (define @t106 () (not @t105)) % 170.83/171.19 (define @t107 () (or @t106 @t104 @t103 @t100)) % 170.83/171.19 (define @t108 () (@list true)) % 170.83/171.19 (define @t109 () (@list @t107)) % 170.83/171.19 (define @t110 () (@list @t97)) % 170.83/171.19 (define @t111 () (_ @t35 @t94 @t97)) % 170.83/171.19 (define @t112 () (forall @t24 (not (= @t93 (_ @t36 @t111 @t12))))) % 170.83/171.19 (define @t113 () (@quantifiers_skolemize @t112 0)) % 170.83/171.19 (define @t114 () (_ @t36 @t111 @t113)) % 170.83/171.19 (define @t115 () (= @t93 @t114)) % 170.83/171.19 (define @t116 () (not @t112)) % 170.83/171.19 (define @t117 () (not @t115)) % 170.83/171.19 (define @t118 () (not @t117)) % 170.83/171.19 (define @t119 () (_ @t35 @t94 @t113)) % 170.83/171.19 (define @t120 () (forall @t24 (not (= @t93 (_ @t36 @t119 @t12))))) % 170.83/171.19 (define @t121 () (@quantifiers_skolemize @t120 0)) % 170.83/171.19 (define @t122 () (_ @t36 @t119 @t121)) % 170.83/171.19 (define @t123 () (= @t93 @t122)) % 170.83/171.19 (define @t124 () (not @t120)) % 170.83/171.19 (define @t125 () (not @t123)) % 170.83/171.19 (define @t126 () (not @t125)) % 170.83/171.19 (define @t127 () (ite @t100 @t97 @t99)) % 170.83/171.19 (define @t128 () (@purify @t127)) % 170.83/171.19 (define @t129 () (= @t127 @t99)) % 170.83/171.19 (define @t130 () (= @t127 @t97)) % 170.83/171.19 (define @t131 () (= @t99 @t128)) % 170.83/171.19 (define @t132 () (= @t97 @t128)) % 170.83/171.19 (define @t133 () (_ @t36 @t98 @t93)) % 170.83/171.19 (define @t134 () (= @t93 @t133)) % 170.83/171.19 (define @t135 () (_ @t36 @t111 @t93)) % 170.83/171.19 (define @t136 () (= @t97 @t135)) % 170.83/171.19 (define @t137 () (_ @t35 @t94 @t99)) % 170.83/171.19 (define @t138 () (_ @t36 @t98 @t135)) % 170.83/171.19 (define @t139 () (= @t138 (_ @t36 @t137 @t93))) % 170.83/171.19 (define @t140 () (_ @t36 @t137 @t113)) % 170.83/171.19 (define @t141 () (= (_ @t36 @t98 @t114) @t140)) % 170.83/171.19 (define @t142 () (_ @t35 @t94 @t114)) % 170.83/171.19 (define @t143 () (_ @t36 @t142 @t121)) % 170.83/171.19 (define @t144 () (= (_ @t36 @t111 @t122) @t143)) % 170.83/171.19 (define @t145 () (_ @t36 @t137 @t122)) % 170.83/171.19 (define @t146 () (= @t145 (_ @t36 (_ @t35 @t94 @t140) @t121))) % 170.83/171.19 (define @t147 () (and @t134 @t115 @t136 @t123 @t139 @t131 @t141 @t144 @t146)) % 170.83/171.19 (assume @p1 @t10) % 170.83/171.19 (assume @p2 true) % 170.83/171.19 (step @p3 (= tptp.cGRP_ASSOC @t22) :rule refl :args (@t22)) % 170.83/171.19 (step @p4 (= tptp.cGRP_RIGHT_INVERSE @t27) :rule refl :args (@t27)) % 170.83/171.19 (step @p5 (= tptp.cGRP_RIGHT_UNIT @t30) :rule refl :args (@t30)) % 170.83/171.19 (step @p6 (= tptp.cGROUP3 @t32) :rule refl :args (@t32)) % 170.83/171.19 (step @p7 :rule refl :args (@t37)) % 170.83/171.19 (step @p8 :rule eq-symm :args (@t39 @t2)) % 170.83/171.19 (step @p9 :rule cong :premises (@p8) :args (@t40)) % 170.83/171.19 (step @p10 :rule cong :premises (@p9) :args (@t41)) % 170.83/171.19 (step @p11 :rule cong :premises (@p10) :args (@t42)) % 170.83/171.19 (step @p12 :rule cong :premises (@p11) :args (@t43)) % 170.83/171.19 (step @p13 :rule cong :premises (@p12) :args (@t44)) % 170.83/171.19 (step @p14 :rule refl :args (@t45)) % 170.83/171.19 (step @p15 :rule eq-symm :args (@t46 @t47)) % 170.83/171.19 (step @p16 :rule cong :premises (@p15) :args (@t48)) % 170.83/171.19 (step @p17 :rule cong :premises (@p16) :args (@t49)) % 170.83/171.19 (step @p18 :rule nary_cong :premises (@p17 @p14 @p13 @p7) :args (@t50)) % 170.83/171.19 (step @p19 :rule cong :premises (@p18) :args (@t52)) % 170.83/171.19 (step @p20 :rule cong :premises (@p19) :args (@t53)) % 170.83/171.19 ; WARNING: add trust step for TRUST % 170.83/171.19 ; trust TRUST PREPROCESS_HO_ELIM % 170.83/171.19 (step @p21 :rule trust :premises () :args ((= (not @t67) @t53))) % 170.83/171.19 (step @p22 :rule quant-merge-prenex :args ((= (forall @t8 @t69) @t67))) % 170.83/171.19 (step @p23 :rule alpha_equiv :args (@t70 (@list @t33) (@list @t1))) % 170.83/171.19 (step @p24 :rule refl :args (@t57)) % 170.83/171.19 (step @p25 :rule refl :args (@t60)) % 170.83/171.19 (step @p26 :rule refl :args (@t65)) % 170.83/171.19 (step @p27 :rule nary_cong :premises (@p26 @p25 @p24 @p23) :args (@t71)) % 170.83/171.19 (step @p28 :rule quant-miniscope-or :args ((= @t69 @t71))) % 170.83/171.19 (step @p29 :rule trans :premises (@p28 @p27)) % 170.83/171.19 (step @p30 :rule symm :premises (@p29)) % 170.83/171.19 (step @p31 :rule cong :premises (@p30) :args ((forall @t8 @t74))) % 170.83/171.19 (step @p32 :rule trans :premises (@p31 @p22)) % 170.83/171.19 (step @p33 :rule aci_norm :args ((= (or @t75 @t73) @t74))) % 170.83/171.19 (step @p34 :rule refl :args (@t73)) % 170.83/171.19 (step @p35 :rule aci_norm :args ((= (or @t65 (or @t60 @t57)) @t75))) % 170.83/171.19 (step @p36 :rule bool-and-de-morgan :args (@t59 @t56 true)) % 170.83/171.19 (step @p37 :rule nary_cong :premises (@p26 @p36) :args ((or @t65 (not (and @t59 @t56))))) % 170.83/171.19 (step @p38 :rule bool-and-de-morgan :args (@t64 @t59 (and @t56))) % 170.83/171.19 (step @p39 :rule trans :premises (@p38 @p37)) % 170.83/171.19 (step @p40 :rule trans :premises (@p39 @p35)) % 170.83/171.19 (step @p41 :rule nary_cong :premises (@p40 @p34) :args ((or (not @t76) @t73))) % 170.83/171.19 (step @p42 :rule trans :premises (@p41 @p33)) % 170.83/171.19 (step @p43 :rule bool-impl-elim :args (@t76 @t73)) % 170.83/171.19 (step @p44 :rule trans :premises (@p43 @p42)) % 170.83/171.19 (step @p45 :rule cong :premises (@p44) :args ((forall @t8 (=> @t76 @t73)))) % 170.83/171.19 (step @p46 :rule trans :premises (@p45 @p32)) % 170.83/171.19 (step @p47 :rule refl :args (@t72)) % 170.83/171.19 (step @p48 :rule refl :args (@t4)) % 170.83/171.19 (step @p49 :rule cong :premises (@p48 @p47) :args ((= @t4 @t72))) % 170.83/171.19 (step @p50 :rule symm :premises (@p49)) % 170.83/171.19 (step @p51 :rule eq_resolve :premises (@p48 @p50)) % 170.83/171.19 (step @p52 :rule refl :args (@t1)) % 170.83/171.19 (step @p53 :rule cong :premises (@p52 @p51) :args (@t77)) % 170.83/171.19 (step @p54 :rule cong :premises (@p53) :args ((forall @t5 @t77))) % 170.83/171.19 (step @p55 :rule eq-symm :args (@t4 @t1)) % 170.83/171.19 (step @p56 :rule cong :premises (@p55) :args (@t6)) % 170.83/171.19 (step @p57 :rule trans :premises (@p56 @p54)) % 170.83/171.19 (step @p58 :rule beta-reduce :args ((= (_ @t79 @t2) @t76))) % 170.83/171.19 (step @p59 :rule refl :args (@t2)) % 170.83/171.19 (step @p60 :rule beta-reduce :args ((= @t80 @t79))) % 170.83/171.19 (step @p61 :rule ho_cong :premises (@p60 @p59)) % 170.83/171.19 (step @p62 :rule trans :premises (@p61 @p58)) % 170.83/171.19 (step @p63 :rule cong :premises (@p62 @p57) :args (@t81)) % 170.83/171.19 (step @p64 :rule cong :premises (@p63) :args (@t82)) % 170.83/171.19 (step @p65 :rule trans :premises (@p64 @p46)) % 170.83/171.19 (step @p66 :rule cong :premises (@p65) :args ((not @t82))) % 170.83/171.19 (step @p67 :rule refl :args (@t6)) % 170.83/171.19 (step @p68 :rule refl :args (@t3)) % 170.83/171.19 (step @p69 :rule beta-reduce :args ((= (_ @t83 @t2) @t56))) % 170.83/171.19 (step @p70 :rule beta-reduce :args ((= @t84 @t83))) % 170.83/171.19 (step @p71 :rule ho_cong :premises (@p70 @p59)) % 170.83/171.19 (step @p72 :rule trans :premises (@p71 @p69)) % 170.83/171.19 (step @p73 :rule beta-reduce :args ((= (_ @t85 @t2) @t59))) % 170.83/171.19 (step @p74 :rule beta-reduce :args ((= @t86 @t85))) % 170.83/171.19 (step @p75 :rule ho_cong :premises (@p74 @p59)) % 170.83/171.19 (step @p76 :rule trans :premises (@p75 @p73)) % 170.83/171.19 (step @p77 :rule beta-reduce :args ((= @t87 @t64))) % 170.83/171.19 (step @p78 :rule nary_cong :premises (@p77 @p76 @p72) :args ((and @t87 (_ @t86 @t2) (_ @t84 @t2)))) % 170.83/171.19 (step @p79 :rule refl :args (@t2)) % 170.83/171.19 (step @p80 :rule refl :args (@t55)) % 170.83/171.19 (step @p81 :rule refl :args (@t16)) % 170.83/171.19 (step @p82 :rule cong :premises (@p81 @p80) :args ((= @t16 @t55))) % 170.83/171.19 (step @p83 :rule symm :premises (@p82)) % 170.83/171.19 (step @p84 :rule eq_resolve :premises (@p81 @p83)) % 170.83/171.19 (step @p85 :rule cong :premises (@p84 @p79) :args (@t23)) % 170.83/171.19 (step @p86 :rule cong :premises (@p85) :args (@t88)) % 170.83/171.19 (step @p87 :rule cong :premises (@p86) :args (@t89)) % 170.83/171.19 (step @p88 :rule cong :premises (@p87) :args (@t90)) % 170.83/171.19 (step @p89 :rule exists-elim :args ((= @t25 @t90))) % 170.83/171.19 (step @p90 :rule trans :premises (@p89 @p88)) % 170.83/171.19 (step @p91 :rule cong :premises (@p90) :args (@t26)) % 170.83/171.19 (step @p92 :rule cong :premises (@p91) :args (@t27)) % 170.83/171.19 (step @p93 :rule trans :premises (@p4 @p92)) % 170.83/171.19 (step @p94 :rule ho_cong :premises (@p93 @p68)) % 170.83/171.19 (step @p95 :rule ho_cong :premises (@p94 @p59)) % 170.83/171.19 (step @p96 :rule refl :args (@t58)) % 170.83/171.19 (step @p97 :rule refl :args (@t28)) % 170.83/171.19 (step @p98 :rule cong :premises (@p97 @p96) :args ((= @t28 @t58))) % 170.83/171.19 (step @p99 :rule symm :premises (@p98)) % 170.83/171.19 (step @p100 :rule eq_resolve :premises (@p97 @p99)) % 170.83/171.19 (step @p101 :rule cong :premises (@p52 @p100) :args (@t91)) % 170.83/171.19 (step @p102 :rule cong :premises (@p101) :args ((forall @t5 @t91))) % 170.83/171.19 (step @p103 :rule eq-symm :args (@t28 @t1)) % 170.83/171.19 (step @p104 :rule cong :premises (@p103) :args (@t29)) % 170.83/171.19 (step @p105 :rule trans :premises (@p104 @p102)) % 170.83/171.19 (step @p106 :rule cong :premises (@p105) :args (@t30)) % 170.83/171.19 (step @p107 :rule trans :premises (@p5 @p106)) % 170.83/171.19 (step @p108 :rule ho_cong :premises (@p107 @p68)) % 170.83/171.19 (step @p109 :rule ho_cong :premises (@p108 @p59)) % 170.83/171.19 (step @p110 :rule refl :args ((_ @t3 @t1 @t13))) % 170.83/171.19 (step @p111 :rule refl :args (@t61)) % 170.83/171.19 (step @p112 :rule cong :premises (@p52 @p111) :args (@t62)) % 170.83/171.19 (step @p113 :rule trans :premises (@p112 @p110)) % 170.83/171.19 (step @p114 :rule refl :args (@t14)) % 170.83/171.19 (step @p115 :rule ho_cong :premises (@p114 @p111)) % 170.83/171.19 (step @p116 :rule cong :premises (@p115 @p113) :args ((= (_ @t14 @t61) @t62))) % 170.83/171.19 (step @p117 :rule symm :premises (@p116)) % 170.83/171.19 (step @p118 :rule refl :args (@t15)) % 170.83/171.19 (step @p119 :rule eq_resolve :premises (@p118 @p117)) % 170.83/171.19 (step @p120 :rule refl :args (@t13)) % 170.83/171.19 (step @p121 :rule cong :premises (@p120 @p111) :args ((= @t13 @t61))) % 170.83/171.19 (step @p122 :rule symm :premises (@p121)) % 170.83/171.19 (step @p123 :rule eq_resolve :premises (@p120 @p122)) % 170.83/171.19 (step @p124 :rule ho_cong :premises (@p114 @p123)) % 170.83/171.19 (step @p125 :rule trans :premises (@p124 @p119)) % 170.83/171.19 (step @p126 :rule refl :args ((_ @t3 @t16 @t11))) % 170.83/171.19 (step @p127 :rule refl :args (@t11)) % 170.83/171.19 (step @p128 :rule cong :premises (@p80 @p127) :args (@t63)) % 170.83/171.19 (step @p129 :rule trans :premises (@p128 @p126)) % 170.83/171.19 (step @p130 :rule refl :args (@t3)) % 170.83/171.19 (step @p131 :rule ho_cong :premises (@p130 @p80)) % 170.83/171.19 (step @p132 :rule ho_cong :premises (@p131 @p127)) % 170.83/171.19 (step @p133 :rule cong :premises (@p132 @p129) :args ((= (_ (_ @t3 @t55) @t11) @t63))) % 170.83/171.19 (step @p134 :rule symm :premises (@p133)) % 170.83/171.19 (step @p135 :rule refl :args (@t17)) % 170.83/171.19 (step @p136 :rule eq_resolve :premises (@p135 @p134)) % 170.83/171.19 (step @p137 :rule ho_cong :premises (@p130 @p84)) % 170.83/171.19 (step @p138 :rule ho_cong :premises (@p137 @p127)) % 170.83/171.19 (step @p139 :rule trans :premises (@p138 @p136)) % 170.83/171.19 (step @p140 :rule cong :premises (@p139 @p125) :args (@t18)) % 170.83/171.19 (step @p141 :rule cong :premises (@p140) :args (@t20)) % 170.83/171.19 (step @p142 :rule cong :premises (@p141) :args (@t22)) % 170.83/171.19 (step @p143 :rule trans :premises (@p3 @p142)) % 170.83/171.19 (step @p144 :rule ho_cong :premises (@p143 @p68)) % 170.83/171.19 (step @p145 :rule nary_cong :premises (@p144 @p109 @p95) :args (@t31)) % 170.83/171.19 (step @p146 :rule trans :premises (@p145 @p78)) % 170.83/171.19 (step @p147 :rule cong :premises (@p146) :args (@t32)) % 170.83/171.19 (step @p148 :rule trans :premises (@p6 @p147)) % 170.83/171.19 (step @p149 :rule ho_cong :premises (@p148 @p68)) % 170.83/171.19 (step @p150 :rule ho_cong :premises (@p149 @p59)) % 170.83/171.19 (step @p151 :rule cong :premises (@p150 @p67) :args (@t7)) % 170.83/171.19 (step @p152 :rule cong :premises (@p151) :args (@t9)) % 170.83/171.19 (step @p153 :rule cong :premises (@p152) :args (@t10)) % 170.83/171.19 (step @p154 :rule trans :premises (@p153 @p66)) % 170.83/171.19 (step @p155 :rule trans :premises (@p154 @p21 @p20)) % 170.83/171.19 (step @p156 :rule eq_resolve :premises (@p1 @p155)) % 170.83/171.19 (step @p157 :rule skolemize :premises (@p156)) % 170.83/171.19 (step @p158 :rule bool-double-not-elim :args (@t96)) % 170.83/171.19 (step @p159 :rule refl :args (@t107)) % 170.83/171.19 (step @p160 :rule nary_cong :premises (@p159 @p158) :args ((or @t107 (not @t104)))) % 170.83/171.19 (step @p161 :rule cnf_or_neg :args (@t107 1)) % 170.83/171.19 (step @p162 :rule eq_resolve :premises (@p161 @p160)) % 170.83/171.19 (step @p163 :rule reordering :premises (@p162) :args ((or @t96 @t107))) % 170.83/171.19 (step @p164 :rule chain_m_resolution :premises (@p163 @p157) :args (@t96 @t108 @t109)) % 170.83/171.19 (step @p165 :rule instantiate :premises (@p164) :args ((@list @t93))) % 170.83/171.19 (step @p166 :rule bool-double-not-elim :args (@t102)) % 170.83/171.19 (step @p167 :rule nary_cong :premises (@p159 @p166) :args ((or @t107 (not @t103)))) % 170.83/171.19 (step @p168 :rule cnf_or_neg :args (@t107 2)) % 170.83/171.19 (step @p169 :rule eq_resolve :premises (@p168 @p167)) % 170.83/171.19 (step @p170 :rule reordering :premises (@p169) :args ((or @t102 @t107))) % 170.83/171.19 (step @p171 :rule chain_m_resolution :premises (@p170 @p157) :args (@t102 @t108 @t109)) % 170.83/171.19 (step @p172 :rule instantiate :premises (@p171) :args (@t110)) % 170.83/171.19 (step @p173 :rule refl :args (@t115)) % 170.83/171.19 (step @p174 :rule bool-double-not-elim :args (@t112)) % 170.83/171.19 (step @p175 :rule nary_cong :premises (@p174 @p173) :args ((or (not @t116) @t115))) % 170.83/171.19 (step @p176 :rule bool-double-not-elim :args (@t115)) % 170.83/171.19 (step @p177 :rule refl :args (@t116)) % 170.83/171.19 (step @p178 :rule cong :premises (@p177 @p176) :args ((=> @t116 @t118))) % 170.83/171.19 (assume-push @p284 @t116) % 170.83/171.19 (step @p180 :rule skolemize :premises (@p172)) % 170.83/171.19 (step-pop @p285 :rule scope :premises (@p180)) % 170.83/171.19 (step @p181 :rule process_scope :premises (@p285) :args (@t118)) % 170.83/171.19 (step @p183 :rule eq_resolve :premises (@p181 @p178)) % 170.83/171.19 (step @p184 :rule implies_elim :premises (@p183)) % 170.83/171.19 (step @p185 :rule eq_resolve :premises (@p184 @p175)) % 170.83/171.19 (step @p186 :rule chain_m_resolution :premises (@p185 @p172) :args (@t115 @t108 (@list @t112))) % 170.83/171.19 (step @p187 :rule instantiate :premises (@p164) :args (@t110)) % 170.83/171.19 (step @p188 :rule instantiate :premises (@p171) :args ((@list @t113))) % 170.83/171.19 (step @p189 :rule refl :args (@t123)) % 170.83/171.19 (step @p190 :rule bool-double-not-elim :args (@t120)) % 170.83/171.19 (step @p191 :rule nary_cong :premises (@p190 @p189) :args ((or (not @t124) @t123))) % 170.83/171.19 (step @p192 :rule bool-double-not-elim :args (@t123)) % 170.83/171.19 (step @p193 :rule refl :args (@t124)) % 170.83/171.19 (step @p194 :rule cong :premises (@p193 @p192) :args ((=> @t124 @t126))) % 170.83/171.19 (assume-push @p286 @t124) % 170.83/171.19 (step @p196 :rule skolemize :premises (@p188)) % 170.83/171.19 (step-pop @p287 :rule scope :premises (@p196)) % 170.83/171.19 (step @p197 :rule process_scope :premises (@p287) :args (@t126)) % 170.83/171.19 (step @p199 :rule eq_resolve :premises (@p197 @p194)) % 170.83/171.19 (step @p200 :rule implies_elim :premises (@p199)) % 170.83/171.19 (step @p201 :rule eq_resolve :premises (@p200 @p191)) % 170.83/171.19 (step @p202 :rule chain_m_resolution :premises (@p201 @p188) :args (@t123 @t108 (@list @t120))) % 170.83/171.19 (step @p203 :rule bool-double-not-elim :args (@t105)) % 170.83/171.19 (step @p204 :rule nary_cong :premises (@p159 @p203) :args ((or @t107 (not @t106)))) % 170.83/171.19 (step @p205 :rule cnf_or_neg :args (@t107 0)) % 170.83/171.19 (step @p206 :rule eq_resolve :premises (@p205 @p204)) % 170.83/171.19 (step @p207 :rule reordering :premises (@p206) :args ((or @t105 @t107))) % 170.83/171.19 (step @p208 :rule chain_m_resolution :premises (@p207 @p157) :args (@t105 @t108 @t109)) % 170.83/171.19 (step @p209 :rule instantiate :premises (@p208) :args ((@list @t93 @t97 @t93))) % 170.83/171.19 (step @p210 :rule cnf_or_neg :args (@t107 3)) % 170.83/171.19 (step @p211 :rule chain_m_resolution :premises (@p210 @p157) :args ((not @t100) @t108 @t109)) % 170.83/171.19 (step @p212 :rule eq-symm :args (@t128 @t99)) % 170.83/171.19 (step @p213 :rule eq-symm :args (@t128 @t97)) % 170.83/171.19 (step @p214 :rule refl :args (@t100)) % 170.83/171.19 (step @p215 :rule cong :premises (@p214 @p213 @p212) :args ((ite @t100 (= @t128 @t97) (= @t128 @t99)))) % 170.83/171.19 (step @p216 :rule refl :args (@t99)) % 170.83/171.19 (step @p217 :rule eq-refl :args (@t127)) % 170.83/171.19 (step @p218 :rule skolem_intro :args (@t128)) % 170.83/171.19 (step @p219 :rule refl :args (@t127)) % 170.83/171.19 (step @p220 :rule cong :premises (@p219 @p218) :args ((= @t127 @t128))) % 170.83/171.19 (step @p221 :rule trans :premises (@p220 @p217)) % 170.83/171.19 (step @p222 :rule true_elim :premises (@p221)) % 170.83/171.19 (step @p223 :rule cong :premises (@p222 @p216) :args (@t129)) % 170.83/171.19 (step @p224 :rule refl :args (@t97)) % 170.83/171.19 (step @p225 :rule cong :premises (@p222 @p224) :args (@t130)) % 170.83/171.19 (step @p226 :rule cong :premises (@p214 @p225 @p223) :args ((ite @t100 @t130 @t129))) % 170.83/171.19 (step @p227 :rule ite_eq :args (@t127)) % 170.83/171.19 (step @p228 :rule eq_resolve :premises (@p227 @p226)) % 170.83/171.19 (step @p229 :rule eq_resolve :premises (@p228 @p215)) % 170.83/171.19 (step @p230 :rule ite_elim2 :premises (@p229)) % 170.83/171.19 (step @p231 :rule chain_m_resolution :premises (@p230 @p211) :args (@t131 @t108 (@list @t100))) % 170.83/171.19 (step @p232 :rule false_intro :premises (@p211)) % 170.83/171.19 (step @p233 :rule symm :premises (@p231)) % 170.83/171.19 (step @p234 :rule cong :premises (@p224 @p233) :args (@t132)) % 170.83/171.19 (step @p235 :rule trans :premises (@p234 @p232)) % 170.83/171.19 (step @p236 :rule false_elim :premises (@p235)) % 170.83/171.19 (step @p237 :rule instantiate :premises (@p208) :args ((@list @t93 @t97 @t113))) % 170.83/171.19 (step @p238 :rule instantiate :premises (@p208) :args ((@list @t97 @t113 @t121))) % 170.83/171.19 (step @p239 :rule instantiate :premises (@p208) :args ((@list @t99 @t113 @t121))) % 170.83/171.19 (assume-push @p288 @t134) % 170.83/171.19 (assume-push @p289 @t115) % 170.83/171.19 (assume-push @p290 @t136) % 170.83/171.19 (assume-push @p291 @t123) % 170.83/171.19 (assume-push @p292 @t139) % 170.83/171.19 (assume-push @p293 @t131) % 170.83/171.19 (assume-push @p294 @t141) % 170.83/171.19 (assume-push @p295 @t144) % 170.83/171.19 (assume-push @p296 @t146) % 170.83/171.19 (step @p249 :rule symm :premises (@p187)) % 170.83/171.19 (step @p250 :rule refl :args (@t98)) % 170.83/171.19 (step @p251 :rule cong :premises (@p250 @p249) :args (@t138)) % 170.83/171.19 (step @p252 :rule symm :premises (@p209)) % 170.83/171.19 (step @p253 :rule symm :premises (@p202)) % 170.83/171.19 (step @p254 :rule refl :args (@t137)) % 170.83/171.19 (step @p255 :rule cong :premises (@p254 @p253) :args (@t145)) % 170.83/171.19 (step @p256 :rule symm :premises (@p239)) % 170.83/171.19 (step @p257 :rule refl :args (@t121)) % 170.83/171.19 (step @p258 :rule cong :premises (@p250 @p186) :args (@t133)) % 170.83/171.19 (step @p259 :rule trans :premises (@p165 @p258 @p237)) % 170.83/171.19 (step @p260 :rule refl :args (@t94)) % 170.83/171.19 (step @p261 :rule cong :premises (@p260 @p259) :args (@t98)) % 170.83/171.19 (step @p262 :rule cong :premises (@p261 @p257) :args ((_ @t36 @t98 @t121))) % 170.83/171.19 (step @p263 :rule symm :premises (@p186)) % 170.83/171.19 (step @p264 :rule cong :premises (@p260 @p263) :args (@t142)) % 170.83/171.19 (step @p265 :rule cong :premises (@p264 @p257) :args (@t143)) % 170.83/171.19 (step @p266 :rule refl :args (@t111)) % 170.83/171.19 (step @p267 :rule cong :premises (@p266 @p202) :args (@t135)) % 170.83/171.19 (step @p268 :rule trans :premises (@p187 @p267 @p238 @p265 @p262 @p256 @p255 @p252 @p251 @p231)) % 170.83/171.19 (step-pop @p297 :rule scope :premises (@p268)) % 170.83/171.19 (step-pop @p298 :rule scope :premises (@p297)) % 170.83/171.19 (step-pop @p299 :rule scope :premises (@p298)) % 170.83/171.19 (step-pop @p300 :rule scope :premises (@p299)) % 170.83/171.19 (step-pop @p301 :rule scope :premises (@p300)) % 170.83/171.19 (step-pop @p302 :rule scope :premises (@p301)) % 170.83/171.19 (step-pop @p303 :rule scope :premises (@p302)) % 170.83/171.19 (step-pop @p304 :rule scope :premises (@p303)) % 170.83/171.19 (step-pop @p305 :rule scope :premises (@p304)) % 170.83/171.19 (step @p269 :rule process_scope :premises (@p305) :args (@t132)) % 170.83/171.19 (step @p279 :rule implies_elim :premises (@p269)) % 170.83/171.19 (step @p280 :rule cnf_and_neg :args (@t147)) % 170.83/171.19 (step @p281 :rule resolution :premises (@p280 @p279) :args (true @t147)) % 170.83/171.19 (step @p282 :rule reordering :premises (@p281) :args ((or (not @t134) @t117 (not @t136) @t125 (not @t139) @t132 (not @t131) (not @t141) (not @t144) (not @t146)))) % 170.83/171.19 (step @p283 false :rule chain_m_resolution :premises (@p282 @p239 @p238 @p237 @p236 @p231 @p209 @p202 @p187 @p186 @p165) :args (false (@list false false false true false false false false false false) (@list @t146 @t144 @t141 @t132 @t131 @t139 @t123 @t136 @t115 @t134))) % 170.83/171.19 ) % 170.83/171.19 % SZS output end Proof % 170.83/171.19 % cvc5 exiting %------------------------------------------------------------------------------