%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : SET973+1 : TPTP v9.2.1. Released v3.2.0. % Transfm : none % Format : tptp:raw % Command : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM % Computer : n028.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:49:04 AM UTC 2026 % Result : Theorem 36.25s 36.40s % Output : Proof 36.25s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : SET973+1 : TPTP v9.2.1. Released v3.2.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 : n028.cluster.edu % 0.16/0.34 % Model : x86_64 x86_64 % 0.16/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.16/0.34 % Memory : 8042.1875MB % 0.16/0.34 % OS : Linux 3.10.0-693.el7.x86_64 % 0.16/0.34 % CPULimit : 300 % 0.16/0.34 % WCLimit : 300 % 0.16/0.34 % DateTime : Tue Jun 2 16:19:35 EDT 2026 % 0.16/0.34 % CPUTime : % 0.29/0.50 %----Proving TF0_NAR, FOF, or CNF % 36.25/36.40 --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 15... % 36.25/36.40 --- Run --no-e-matching --full-saturate-quant at 6... % 36.25/36.40 --- Run --no-e-matching --enum-inst-sum --full-saturate-quant at 6... % 36.25/36.40 --- Run --finite-model-find --uf-ss=no-minimal at 6... % 36.25/36.40 --- Run --multi-trigger-when-single --full-saturate-quant at 30... % 36.25/36.40 % SZS status Theorem % 36.25/36.40 % SZS output start Proof % 36.25/36.40 ( % 36.25/36.40 (declare-sort $$unsorted 0) % 36.25/36.40 (declare-const tptp.empty (-> $$unsorted Bool)) % 36.25/36.40 (declare-const tptp.singleton (-> $$unsorted $$unsorted)) % 36.25/36.40 (declare-const tptp.set_difference (-> $$unsorted $$unsorted $$unsorted)) % 36.25/36.40 (declare-const tptp.cartesian_product2 (-> $$unsorted $$unsorted $$unsorted)) % 36.25/36.40 (declare-const tptp.subset (-> $$unsorted $$unsorted Bool)) % 36.25/36.40 (declare-const tptp.ordered_pair (-> $$unsorted $$unsorted $$unsorted)) % 36.25/36.40 (declare-const tptp.set_intersection2 (-> $$unsorted $$unsorted $$unsorted)) % 36.25/36.40 (declare-const tptp.set_union2 (-> $$unsorted $$unsorted $$unsorted)) % 36.25/36.40 (declare-const tptp.unordered_pair (-> $$unsorted $$unsorted $$unsorted)) % 36.25/36.40 (declare-const tptp.in (-> $$unsorted $$unsorted Bool)) % 36.25/36.40 (define @t1 () (@var "A" $$unsorted)) % 36.25/36.40 (define @t2 () (@var "B" $$unsorted)) % 36.25/36.40 (define @t3 () (@list @t1 @t2)) % 36.25/36.40 (define @t4 () (tptp.unordered_pair @t1 @t2)) % 36.25/36.40 (define @t5 () (tptp.set_union2 @t2 @t1)) % 36.25/36.40 (define @t6 () (tptp.set_union2 @t1 @t2)) % 36.25/36.40 (define @t7 () (tptp.set_intersection2 @t1 @t2)) % 36.25/36.40 (define @t8 () (tptp.subset @t1 @t2)) % 36.25/36.40 (define @t9 () (forall @t3 (= (= @t1 @t2) (and @t8 (tptp.subset @t2 @t1))))) % 36.25/36.40 (define @t10 () (@var "D" $$unsorted)) % 36.25/36.40 (define @t11 () (tptp.in @t10 @t2)) % 36.25/36.40 (define @t12 () (tptp.in @t10 @t1)) % 36.25/36.40 (define @t13 () (@var "C" $$unsorted)) % 36.25/36.40 (define @t14 () (tptp.in @t10 @t13)) % 36.25/36.40 (define @t15 () (@list @t10)) % 36.25/36.40 (define @t16 () (forall @t15 (= @t14 (or @t12 @t11)))) % 36.25/36.40 (define @t17 () (= (= @t13 @t6) @t16)) % 36.25/36.40 (define @t18 () (@list @t1 @t2 @t13)) % 36.25/36.40 (define @t19 () (forall @t18 @t17)) % 36.25/36.40 (define @t20 () (@var "F" $$unsorted)) % 36.25/36.40 (define @t21 () (@var "E" $$unsorted)) % 36.25/36.40 (define @t22 () (tptp.cartesian_product2 @t1 @t2)) % 36.25/36.40 (define @t23 () (tptp.in @t13 @t2)) % 36.25/36.40 (define @t24 () (tptp.in @t13 @t1)) % 36.25/36.40 (define @t25 () (@list @t13)) % 36.25/36.40 (define @t26 () (forall @t25 (=> @t24 @t23))) % 36.25/36.40 (define @t27 () (= @t8 @t26)) % 36.25/36.40 (define @t28 () (forall @t3 @t27)) % 36.25/36.40 (define @t29 () (tptp.set_difference @t1 @t2)) % 36.25/36.40 (define @t30 () (forall @t18 (= (= @t13 @t29) (forall @t15 (= @t14 (and @t12 (not @t11))))))) % 36.25/36.40 (define @t31 () (tptp.ordered_pair @t1 @t2)) % 36.25/36.40 (define @t32 () (tptp.empty @t1)) % 36.25/36.40 (define @t33 () (not @t32)) % 36.25/36.40 (define @t34 () (tptp.cartesian_product2 @t13 @t10)) % 36.25/36.40 (define @t35 () (@list @t1 @t2 @t13 @t10)) % 36.25/36.40 (define @t36 () (@list @t1)) % 36.25/36.40 (define @t37 () (tptp.cartesian_product2 @t2 @t10)) % 36.25/36.40 (define @t38 () (tptp.cartesian_product2 @t1 @t13)) % 36.25/36.40 (define @t39 () (tptp.subset @t38 @t37)) % 36.25/36.40 (define @t40 () (tptp.subset @t13 @t10)) % 36.25/36.40 (define @t41 () (and @t8 @t40)) % 36.25/36.40 (define @t42 () (forall @t35 (=> @t41 @t39))) % 36.25/36.40 (define @t43 () (forall @t35 (= (tptp.cartesian_product2 @t7 (tptp.set_intersection2 @t13 @t10)) (tptp.set_intersection2 @t38 @t37)))) % 36.25/36.40 (define @t44 () (= (tptp.cartesian_product2 @t13 @t29) (tptp.set_difference (tptp.cartesian_product2 @t13 @t1) (tptp.cartesian_product2 @t13 @t2)))) % 36.25/36.40 (define @t45 () (= (tptp.cartesian_product2 @t29 @t13) (tptp.set_difference @t38 (tptp.cartesian_product2 @t2 @t13)))) % 36.25/36.40 (define @t46 () (forall @t18 (and @t45 @t44))) % 36.25/36.40 (define @t47 () (tptp.set_difference @t1 @t13)) % 36.25/36.40 (define @t48 () (forall @t35 (= (tptp.set_difference @t22 @t34) (tptp.set_union2 (tptp.cartesian_product2 @t47 @t2) (tptp.cartesian_product2 @t1 (tptp.set_difference @t2 @t10)))))) % 36.25/36.40 (define @t49 () (tptp.subset (tptp.set_difference @t13 @t2) (tptp.set_difference @t13 @t1))) % 36.25/36.40 (define @t50 () (forall @t18 (=> @t8 @t49))) % 36.25/36.40 (define @t51 () (@quantifiers_skolemize @t48 3)) % 36.25/36.40 (define @t52 () (@quantifiers_skolemize @t48 1)) % 36.25/36.40 (define @t53 () (@quantifiers_skolemize @t48 0)) % 36.25/36.40 (define @t54 () (tptp.cartesian_product2 @t53 (tptp.set_difference @t52 @t51))) % 36.25/36.40 (define @t55 () (@quantifiers_skolemize @t48 2)) % 36.25/36.40 (define @t56 () (tptp.cartesian_product2 (tptp.set_difference @t53 @t55) @t52)) % 36.25/36.40 (define @t57 () (forall @t18 @t44)) % 36.25/36.40 (define @t58 () (@list @t1 @t2 @t13)) % 36.25/36.40 (define @t59 () (forall @t18 @t45)) % 36.25/36.40 (define @t60 () (and @t59 @t57)) % 36.25/36.40 (define @t61 () (tptp.cartesian_product2 @t55 @t52)) % 36.25/36.40 (define @t62 () (tptp.cartesian_product2 @t53 @t51)) % 36.25/36.40 (define @t63 () (tptp.cartesian_product2 @t53 @t52)) % 36.25/36.40 (define @t64 () (tptp.cartesian_product2 @t55 @t51)) % 36.25/36.40 (define @t65 () (tptp.set_difference @t63 @t64)) % 36.25/36.40 (define @t66 () (tptp.set_intersection2 @t62 @t61)) % 36.25/36.40 (define @t67 () (tptp.set_difference @t63 @t66)) % 36.25/36.40 (define @t68 () (@list @t67 @t65)) % 36.25/36.40 (define @t69 () (= @t65 @t67)) % 36.25/36.40 (define @t70 () (tptp.subset @t65 @t67)) % 36.25/36.40 (define @t71 () (tptp.subset @t67 @t65)) % 36.25/36.40 (define @t72 () (and @t71 @t70)) % 36.25/36.40 (define @t73 () (= (= @t67 @t65) @t72)) % 36.25/36.40 (define @t74 () (= @t72 @t69)) % 36.25/36.40 (define @t75 () (@list false)) % 36.25/36.40 (define @t76 () (tptp.set_difference @t63 @t61)) % 36.25/36.40 (define @t77 () (tptp.set_difference @t63 @t62)) % 36.25/36.40 (define @t78 () (tptp.set_union2 @t77 @t76)) % 36.25/36.40 (define @t79 () (not @t72)) % 36.25/36.40 (define @t80 () (@list true false)) % 36.25/36.40 (define @t81 () (not @t40)) % 36.25/36.40 (define @t82 () (not @t8)) % 36.25/36.40 (define @t83 () (tptp.set_intersection2 @t52 @t51)) % 36.25/36.40 (define @t84 () (tptp.set_intersection2 @t55 @t53)) % 36.25/36.40 (define @t85 () (@list @t51 @t52)) % 36.25/36.40 (define @t86 () (tptp.subset @t83 @t51)) % 36.25/36.40 (define @t87 () (tptp.cartesian_product2 @t84 @t83)) % 36.25/36.40 (define @t88 () (tptp.subset @t87 @t64)) % 36.25/36.40 (define @t89 () (not @t86)) % 36.25/36.40 (define @t90 () (tptp.subset @t84 @t55)) % 36.25/36.40 (define @t91 () (not @t90)) % 36.25/36.40 (define @t92 () (or @t91 @t89 @t88)) % 36.25/36.40 (define @t93 () (tptp.set_intersection2 @t61 @t62)) % 36.25/36.40 (define @t94 () (= @t87 @t93)) % 36.25/36.40 (define @t95 () (@list @t43)) % 36.25/36.40 (define @t96 () (tptp.subset @t66 @t64)) % 36.25/36.40 (define @t97 () (not @t96)) % 36.25/36.40 (define @t98 () (or @t97 @t70)) % 36.25/36.40 (define @t99 () (@list false false)) % 36.25/36.40 (define @t100 () (not @t71)) % 36.25/36.40 (define @t101 () (tptp.in @t13 @t65)) % 36.25/36.40 (define @t102 () (forall @t25 (or (not (tptp.in @t13 @t67)) @t101))) % 36.25/36.40 (define @t103 () (= @t71 @t102)) % 36.25/36.40 (define @t104 () (not @t102)) % 36.25/36.40 (define @t105 () (@quantifiers_skolemize @t102 0)) % 36.25/36.40 (define @t106 () (tptp.in @t105 @t67)) % 36.25/36.40 (define @t107 () (tptp.in @t105 @t65)) % 36.25/36.40 (define @t108 () (not @t106)) % 36.25/36.40 (define @t109 () (or @t108 @t107)) % 36.25/36.40 (define @t110 () (@list true)) % 36.25/36.40 (define @t111 () (@list @t109)) % 36.25/36.40 (define @t112 () (= @t6 @t13)) % 36.25/36.40 (define @t113 () (tptp.set_difference @t63 @t63)) % 36.25/36.40 (define @t114 () (tptp.set_union2 @t113 @t65)) % 36.25/36.40 (define @t115 () (tptp.set_union2 @t56 @t54)) % 36.25/36.40 (define @t116 () (tptp.in @t10 @t113)) % 36.25/36.40 (define @t117 () (forall @t15 (= (tptp.in @t10 @t115) (or @t116 (tptp.in @t10 @t65))))) % 36.25/36.40 (define @t118 () (= @t117 (= @t114 @t115))) % 36.25/36.40 (define @t119 () (forall @t18 (= @t16 @t112))) % 36.25/36.40 (define @t120 () (= @t115 @t114)) % 36.25/36.40 (define @t121 () (= @t117 @t120)) % 36.25/36.40 (define @t122 () (tptp.set_intersection2 @t53 @t55)) % 36.25/36.40 (define @t123 () (tptp.cartesian_product2 @t122 (tptp.set_intersection2 @t51 @t52))) % 36.25/36.40 (define @t124 () (= @t123 @t66)) % 36.25/36.40 (define @t125 () (@list @t105)) % 36.25/36.40 (define @t126 () (forall @t15 (not @t116))) % 36.25/36.40 (define @t127 () (tptp.in @t10 @t63)) % 36.25/36.40 (define @t128 () (= @t116 (and @t127 (not @t127)))) % 36.25/36.40 (define @t129 () (forall @t15 @t128)) % 36.25/36.40 (define @t130 () (= (= @t113 @t113) @t129)) % 36.25/36.40 (define @t131 () (forall @t25 (or (not (tptp.in @t13 @t113)) @t101))) % 36.25/36.40 (define @t132 () (@quantifiers_skolemize @t131 0)) % 36.25/36.40 (define @t133 () (tptp.in @t132 @t113)) % 36.25/36.40 (define @t134 () (not @t133)) % 36.25/36.40 (define @t135 () (or @t134 (tptp.in @t132 @t65))) % 36.25/36.40 (define @t136 () (not @t135)) % 36.25/36.40 (define @t137 () (not @t131)) % 36.25/36.40 (define @t138 () (tptp.in @t105 @t113)) % 36.25/36.40 (define @t139 () (not @t138)) % 36.25/36.40 (define @t140 () (or @t139 @t107)) % 36.25/36.40 (define @t141 () (or @t138 @t107)) % 36.25/36.40 (define @t142 () (not @t141)) % 36.25/36.40 (define @t143 () (tptp.in @t105 @t115)) % 36.25/36.40 (define @t144 () (= @t143 @t141)) % 36.25/36.40 (define @t145 () (not @t143)) % 36.25/36.40 (define @t146 () (= @t67 @t78)) % 36.25/36.40 (define @t147 () (not @t146)) % 36.25/36.40 (define @t148 () (= @t54 @t77)) % 36.25/36.40 (define @t149 () (not @t148)) % 36.25/36.40 (define @t150 () (= @t56 @t76)) % 36.25/36.40 (define @t151 () (not @t150)) % 36.25/36.40 (define @t152 () (= @t115 (tptp.set_union2 @t54 @t56))) % 36.25/36.40 (define @t153 () (not @t152)) % 36.25/36.40 (define @t154 () (and @t145 @t152 @t148 @t150 @t146 @t106)) % 36.25/36.40 (assume @p1 (forall @t3 (=> (tptp.in @t1 @t2) (not (tptp.in @t2 @t1))))) % 36.25/36.40 (assume @p2 (forall @t3 (= @t4 (tptp.unordered_pair @t2 @t1)))) % 36.25/36.40 (assume @p3 (forall @t3 (= @t6 @t5))) % 36.25/36.40 (assume @p4 (forall @t3 (= @t7 (tptp.set_intersection2 @t2 @t1)))) % 36.25/36.40 (assume @p5 @t9) % 36.25/36.40 (assume @p6 @t19) % 36.25/36.40 (assume @p7 (forall @t18 (= (= @t13 @t22) (forall @t15 (= @t14 (exists (@list @t21 @t20) (and (tptp.in @t21 @t1) (tptp.in @t20 @t2) (= @t10 (tptp.ordered_pair @t21 @t20))))))))) % 36.25/36.40 (assume @p8 @t28) % 36.25/36.40 (assume @p9 @t30) % 36.25/36.40 (assume @p10 (forall @t3 (= @t31 (tptp.unordered_pair @t4 (tptp.singleton @t1))))) % 36.25/36.40 (assume @p11 (forall @t3 (not (tptp.empty @t31)))) % 36.25/36.40 (assume @p12 (forall @t3 (=> @t33 (not (tptp.empty @t6))))) % 36.25/36.40 (assume @p13 (forall @t3 (=> @t33 (not (tptp.empty @t5))))) % 36.25/36.40 (assume @p14 (forall @t3 (= (tptp.set_union2 @t1 @t1) @t1))) % 36.25/36.40 (assume @p15 (forall @t3 (= (tptp.set_intersection2 @t1 @t1) @t1))) % 36.25/36.40 (assume @p16 (forall @t35 (= (tptp.in @t31 @t34) (and (tptp.in @t1 @t13) (tptp.in @t2 @t10))))) % 36.25/36.40 (assume @p17 (exists @t36 @t32)) % 36.25/36.40 (assume @p18 (exists @t36 @t33)) % 36.25/36.40 (assume @p19 (forall @t3 (tptp.subset @t1 @t1))) % 36.25/36.40 (assume @p20 @t42) % 36.25/36.40 (assume @p21 @t43) % 36.25/36.40 (assume @p22 @t46) % 36.25/36.40 (assume @p23 (not @t48)) % 36.25/36.40 (assume @p24 (forall @t3 (tptp.subset @t7 @t1))) % 36.25/36.40 (assume @p25 @t50) % 36.25/36.40 (assume @p26 (forall @t18 (= (tptp.set_difference @t1 (tptp.set_intersection2 @t2 @t13)) (tptp.set_union2 @t29 @t47)))) % 36.25/36.40 (assume @p27 true) % 36.25/36.40 (step @p28 :rule instantiate :premises (@p3) :args ((@list @t56 @t54))) % 36.25/36.40 (step @p29 :rule alpha_equiv :args (@t57 @t58 (@list (@var "BOUND_VARIABLE_7646" $$unsorted) (@var "BOUND_VARIABLE_7648" $$unsorted) (@var "BOUND_VARIABLE_7650" $$unsorted)))) % 36.25/36.40 (step @p30 :rule alpha_equiv :args (@t59 @t58 (@list (@var "BOUND_VARIABLE_7632" $$unsorted) (@var "BOUND_VARIABLE_7634" $$unsorted) (@var "BOUND_VARIABLE_7636" $$unsorted)))) % 36.25/36.40 (step @p31 :rule nary_cong :premises (@p30 @p29) :args (@t60)) % 36.25/36.40 (step @p32 :rule quant-miniscope-and :args ((= @t46 @t60))) % 36.25/36.40 (step @p33 :rule trans :premises (@p32 @p31)) % 36.25/36.40 (step @p34 :rule eq_resolve :premises (@p22 @p33)) % 36.25/36.40 (step @p35 :rule and_elim :premises (@p34) :args (0)) % 36.25/36.40 (step @p36 :rule instantiate :premises (@p35) :args ((@list @t53 @t55 @t52))) % 36.25/36.40 (step @p37 :rule and_elim :premises (@p34) :args (1)) % 36.25/36.40 (step @p38 :rule instantiate :premises (@p37) :args ((@list @t52 @t51 @t53))) % 36.25/36.40 (step @p39 :rule instantiate :premises (@p26) :args ((@list @t63 @t62 @t61))) % 36.25/36.40 (step @p40 :rule bool-impl-elim :args (@t24 @t23)) % 36.25/36.40 (step @p41 :rule cong :premises (@p40) :args (@t26)) % 36.25/36.40 (step @p42 :rule refl :args (@t8)) % 36.25/36.40 (step @p43 :rule cong :premises (@p42 @p41) :args (@t27)) % 36.25/36.40 (step @p44 :rule cong :premises (@p43) :args (@t28)) % 36.25/36.40 (step @p45 :rule eq_resolve :premises (@p8 @p44)) % 36.25/36.40 (step @p46 :rule instantiate :premises (@p45) :args (@t68)) % 36.25/36.40 (step @p47 :rule eq-symm :args (@t69 @t72)) % 36.25/36.40 (step @p48 :rule refl :args (@t72)) % 36.25/36.40 (step @p49 :rule eq-symm :args (@t67 @t65)) % 36.25/36.40 (step @p50 :rule cong :premises (@p49 @p48) :args (@t73)) % 36.25/36.40 (step @p51 :rule trans :premises (@p50 @p47)) % 36.25/36.40 (step @p52 :rule refl :args (@t9)) % 36.25/36.40 (step @p53 :rule cong :premises (@p52 @p51) :args ((=> @t9 @t73))) % 36.25/36.40 (assume-push @p283 @t9) % 36.25/36.40 (step @p55 :rule instantiate :premises (@p5) :args (@t68)) % 36.25/36.40 (step-pop @p284 :rule scope :premises (@p55)) % 36.25/36.40 (step @p56 :rule process_scope :premises (@p284) :args (@t73)) % 36.25/36.40 (step @p58 :rule eq_resolve :premises (@p56 @p53)) % 36.25/36.40 (step @p59 :rule implies_elim :premises (@p58)) % 36.25/36.40 (step @p60 :rule chain_m_resolution :premises (@p59 @p5) :args (@t74 @t75 (@list @t9))) % 36.25/36.40 (step @p61 :rule skolemize :premises (@p23)) % 36.25/36.40 (step @p62 :rule false_intro :premises (@p61)) % 36.25/36.40 (step @p63 :rule symm :premises (@p28)) % 36.25/36.40 (step @p64 :rule symm :premises (@p36)) % 36.25/36.40 (step @p65 :rule symm :premises (@p38)) % 36.25/36.40 (step @p66 :rule cong :premises (@p65 @p64) :args (@t78)) % 36.25/36.40 (step @p67 :rule trans :premises (@p39 @p66 @p63)) % 36.25/36.40 (step @p68 :rule refl :args (@t65)) % 36.25/36.40 (step @p69 :rule cong :premises (@p68 @p67) :args (@t69)) % 36.25/36.40 (step @p70 :rule trans :premises (@p69 @p62)) % 36.25/36.40 (step @p71 :rule false_elim :premises (@p70)) % 36.25/36.40 (step @p72 :rule cnf_equiv_pos1 :args (@t74)) % 36.25/36.40 (step @p73 :rule reordering :premises (@p72) :args ((or @t69 @t79 (not @t74)))) % 36.25/36.40 (step @p74 :rule chain_m_resolution :premises (@p73 @p71 @p60) :args (@t79 @t80 (@list @t69 @t74))) % 36.25/36.40 (step @p75 :rule bool-impl-elim :args (@t8 @t49)) % 36.25/36.40 (step @p76 :rule cong :premises (@p75) :args (@t50)) % 36.25/36.40 (step @p77 :rule eq_resolve :premises (@p25 @p76)) % 36.25/36.40 (step @p78 :rule instantiate :premises (@p77) :args ((@list @t66 @t64 @t63))) % 36.25/36.40 (step @p79 :rule aci_norm :args ((= (or (or @t82 @t81) @t39) (or @t82 @t81 @t39)))) % 36.25/36.40 (step @p80 :rule refl :args (@t39)) % 36.25/36.40 (step @p81 :rule bool-and-de-morgan :args (@t8 @t40 true)) % 36.25/36.40 (step @p82 :rule nary_cong :premises (@p81 @p80) :args ((or (not @t41) @t39))) % 36.25/36.40 (step @p83 :rule trans :premises (@p82 @p79)) % 36.25/36.40 (step @p84 :rule bool-impl-elim :args (@t41 @t39)) % 36.25/36.40 (step @p85 :rule trans :premises (@p84 @p83)) % 36.25/36.40 (step @p86 :rule cong :premises (@p85) :args (@t42)) % 36.25/36.40 (step @p87 :rule eq_resolve :premises (@p20 @p86)) % 36.25/36.40 (step @p88 :rule instantiate :premises (@p87) :args ((@list @t84 @t55 @t83 @t51))) % 36.25/36.40 (step @p89 :rule instantiate :premises (@p24) :args (@t85)) % 36.25/36.40 (step @p90 :rule true_intro :premises (@p89)) % 36.25/36.40 (step @p91 :rule refl :args (@t51)) % 36.25/36.40 (step @p92 :rule instantiate :premises (@p4) :args (@t85)) % 36.25/36.40 (step @p93 :rule symm :premises (@p92)) % 36.25/36.40 (step @p94 :rule cong :premises (@p93 @p91) :args (@t86)) % 36.25/36.40 (step @p95 :rule trans :premises (@p94 @p90)) % 36.25/36.40 (step @p96 :rule true_elim :premises (@p95)) % 36.25/36.40 (step @p97 :rule instantiate :premises (@p24) :args ((@list @t55 @t53))) % 36.25/36.40 (step @p98 :rule cnf_or_pos :args (@t92)) % 36.25/36.40 (step @p99 :rule reordering :premises (@p98) :args ((or @t91 @t89 @t88 (not @t92)))) % 36.25/36.40 (step @p100 :rule chain_m_resolution :premises (@p99 @p97 @p96 @p88) :args (@t88 (@list false false false) (@list @t90 @t86 @t92))) % 36.25/36.40 (step @p101 :rule true_intro :premises (@p100)) % 36.25/36.40 (step @p102 :rule refl :args (@t64)) % 36.25/36.40 (step @p103 :rule eq-symm :args (@t87 @t93)) % 36.25/36.40 (step @p104 :rule refl :args (@t43)) % 36.25/36.40 (step @p105 :rule cong :premises (@p104 @p103) :args ((=> @t43 @t94))) % 36.25/36.40 (assume-push @p285 @t43) % 36.25/36.40 (step @p107 :rule instantiate :premises (@p21) :args ((@list @t55 @t53 @t52 @t51))) % 36.25/36.40 (step-pop @p286 :rule scope :premises (@p107)) % 36.25/36.40 (step @p108 :rule process_scope :premises (@p286) :args (@t94)) % 36.25/36.40 (step @p110 :rule eq_resolve :premises (@p108 @p105)) % 36.25/36.40 (step @p111 :rule implies_elim :premises (@p110)) % 36.25/36.40 (step @p112 :rule chain_m_resolution :premises (@p111 @p21) :args ((= @t93 @t87) @t75 @t95)) % 36.25/36.40 (step @p113 :rule instantiate :premises (@p4) :args ((@list @t61 @t62))) % 36.25/36.40 (step @p114 :rule symm :premises (@p113)) % 36.25/36.40 (step @p115 :rule trans :premises (@p114 @p112)) % 36.25/36.40 (step @p116 :rule cong :premises (@p115 @p102) :args (@t96)) % 36.25/36.40 (step @p117 :rule trans :premises (@p116 @p101)) % 36.25/36.40 (step @p118 :rule true_elim :premises (@p117)) % 36.25/36.40 (step @p119 :rule cnf_or_pos :args (@t98)) % 36.25/36.40 (step @p120 :rule reordering :premises (@p119) :args ((or @t97 @t70 (not @t98)))) % 36.25/36.40 (step @p121 :rule chain_m_resolution :premises (@p120 @p118 @p78) :args (@t70 @t99 (@list @t96 @t98))) % 36.25/36.40 (step @p122 :rule cnf_and_neg :args (@t72)) % 36.25/36.40 (step @p123 :rule reordering :premises (@p122) :args ((or (not @t70) @t100 @t72))) % 36.25/36.40 (step @p124 :rule chain_m_resolution :premises (@p123 @p121 @p74) :args (@t100 (@list false true) (@list @t70 @t72))) % 36.25/36.40 (step @p125 :rule cnf_equiv_pos2 :args (@t103)) % 36.25/36.40 (step @p126 :rule reordering :premises (@p125) :args ((or @t71 @t104 (not @t103)))) % 36.25/36.40 (step @p127 :rule chain_m_resolution :premises (@p126 @p124 @p46) :args (@t104 @t80 (@list @t71 @t103))) % 36.25/36.40 (step @p128 :rule skolemize :premises (@p127)) % 36.25/36.40 (step @p129 :rule bool-double-not-elim :args (@t106)) % 36.25/36.40 (step @p130 :rule refl :args (@t109)) % 36.25/36.40 (step @p131 :rule nary_cong :premises (@p130 @p129) :args ((or @t109 (not @t108)))) % 36.25/36.40 (step @p132 :rule cnf_or_neg :args (@t109 0)) % 36.25/36.40 (step @p133 :rule eq_resolve :premises (@p132 @p131)) % 36.25/36.40 (step @p134 :rule reordering :premises (@p133) :args ((or @t106 @t109))) % 36.25/36.40 (step @p135 :rule chain_m_resolution :premises (@p134 @p128) :args (@t106 @t110 @t111)) % 36.25/36.40 (step @p136 :rule eq-symm :args (@t112 @t16)) % 36.25/36.40 (step @p137 :rule refl :args (@t16)) % 36.25/36.40 (step @p138 :rule eq-symm :args (@t13 @t6)) % 36.25/36.40 (step @p139 :rule cong :premises (@p138 @p137) :args (@t17)) % 36.25/36.40 (step @p140 :rule trans :premises (@p139 @p136)) % 36.25/36.40 (step @p141 :rule cong :premises (@p140) :args (@t19)) % 36.25/36.40 (step @p142 :rule eq_resolve :premises (@p6 @p141)) % 36.25/36.40 (step @p143 :rule eq-symm :args (@t114 @t115)) % 36.25/36.40 (step @p144 :rule refl :args (@t117)) % 36.25/36.40 (step @p145 :rule cong :premises (@p144 @p143) :args (@t118)) % 36.25/36.40 (step @p146 :rule refl :args (@t119)) % 36.25/36.40 (step @p147 :rule cong :premises (@p146 @p145) :args ((=> @t119 @t118))) % 36.25/36.40 (assume-push @p287 @t119) % 36.25/36.40 (step @p149 :rule instantiate :premises (@p142) :args ((@list @t113 @t65 @t115))) % 36.25/36.40 (step-pop @p288 :rule scope :premises (@p149)) % 36.25/36.40 (step @p150 :rule process_scope :premises (@p288) :args (@t118)) % 36.25/36.40 (step @p152 :rule eq_resolve :premises (@p150 @p147)) % 36.25/36.40 (step @p153 :rule implies_elim :premises (@p152)) % 36.25/36.40 (step @p154 :rule chain_m_resolution :premises (@p153 @p142) :args (@t121 @t75 (@list @t119))) % 36.25/36.40 (step @p155 :rule instantiate :premises (@p26) :args ((@list @t63 @t63 @t64))) % 36.25/36.40 (step @p156 :rule instantiate :premises (@p21) :args ((@list @t53 @t55 @t52 @t51))) % 36.25/36.40 (step @p157 :rule refl :args (@t122)) % 36.25/36.40 (step @p158 :rule cong :premises (@p157 @p92) :args (@t123)) % 36.25/36.40 (step @p159 :rule eq-symm :args (@t123 @t66)) % 36.25/36.40 (step @p160 :rule cong :premises (@p104 @p159) :args ((=> @t43 @t124))) % 36.25/36.40 (assume-push @p289 @t43) % 36.25/36.40 (step @p162 :rule instantiate :premises (@p21) :args ((@list @t53 @t55 @t51 @t52))) % 36.25/36.40 (step-pop @p290 :rule scope :premises (@p162)) % 36.25/36.40 (step @p163 :rule process_scope :premises (@p290) :args (@t124)) % 36.25/36.40 (step @p165 :rule eq_resolve :premises (@p163 @p160)) % 36.25/36.40 (step @p166 :rule implies_elim :premises (@p165)) % 36.25/36.40 (step @p167 :rule chain_m_resolution :premises (@p166 @p21) :args ((= @t66 @t123) @t75 @t95)) % 36.25/36.40 (step @p168 :rule trans :premises (@p113 @p167 @p158 @p156)) % 36.25/36.40 (step @p169 :rule refl :args (@t63)) % 36.25/36.40 (step @p170 :rule cong :premises (@p169 @p168) :args ((tptp.set_difference @t63 @t93))) % 36.25/36.40 (step @p171 :rule instantiate :premises (@p26) :args ((@list @t63 @t61 @t62))) % 36.25/36.40 (step @p172 :rule symm :premises (@p171)) % 36.25/36.40 (step @p173 :rule cong :premises (@p36 @p38) :args (@t115)) % 36.25/36.40 (step @p174 :rule trans :premises (@p173 @p172 @p170 @p155)) % 36.25/36.40 (step @p175 :rule cnf_equiv_pos2 :args (@t121)) % 36.25/36.40 (step @p176 :rule reordering :premises (@p175) :args ((or @t117 (not @t120) (not @t121)))) % 36.25/36.40 (step @p177 :rule chain_m_resolution :premises (@p176 @p174 @p154) :args (@t117 @t99 (@list @t120 @t121))) % 36.25/36.40 (step @p178 :rule instantiate :premises (@p177) :args (@t125)) % 36.25/36.40 (step @p179 :rule bool-eq-true :args (@t126)) % 36.25/36.40 (step @p180 :rule eq-symm :args (true @t126)) % 36.25/36.40 (step @p181 :rule trans :premises (@p180 @p179)) % 36.25/36.40 (step @p182 :rule bool-eq-false :args (@t116)) % 36.25/36.40 (step @p183 :rule cong :premises (@p182) :args ((forall @t15 (= @t116 false)))) % 36.25/36.40 (step @p184 :rule bool-and-conf :args (true @t127 true true)) % 36.25/36.40 (step @p185 :rule refl :args (@t116)) % 36.25/36.40 (step @p186 :rule cong :premises (@p185 @p184) :args (@t128)) % 36.25/36.40 (step @p187 :rule cong :premises (@p186) :args (@t129)) % 36.25/36.40 (step @p188 :rule trans :premises (@p187 @p183)) % 36.25/36.40 (step @p189 :rule eq-refl :args (@t113)) % 36.25/36.40 (step @p190 :rule cong :premises (@p189 @p188) :args (@t130)) % 36.25/36.40 (step @p191 :rule trans :premises (@p190 @p181)) % 36.25/36.40 (step @p192 :rule refl :args (@t30)) % 36.25/36.40 (step @p193 :rule cong :premises (@p192 @p191) :args ((=> @t30 @t130))) % 36.25/36.40 (assume-push @p291 @t30) % 36.25/36.40 (step @p195 :rule instantiate :premises (@p9) :args ((@list @t63 @t63 @t113))) % 36.25/36.40 (step-pop @p292 :rule scope :premises (@p195)) % 36.25/36.40 (step @p196 :rule process_scope :premises (@p292) :args (@t130)) % 36.25/36.40 (step @p198 :rule eq_resolve :premises (@p196 @p193)) % 36.25/36.40 (step @p199 :rule implies_elim :premises (@p198)) % 36.25/36.40 (step @p200 :rule chain_m_resolution :premises (@p199 @p9) :args (@t126 @t75 (@list @t30))) % 36.25/36.40 (step @p201 :rule instantiate :premises (@p200) :args ((@list @t132))) % 36.25/36.40 (step @p202 :rule bool-double-not-elim :args (@t133)) % 36.25/36.40 (step @p203 :rule refl :args (@t135)) % 36.25/36.40 (step @p204 :rule nary_cong :premises (@p203 @p202) :args ((or @t135 (not @t134)))) % 36.25/36.40 (step @p205 :rule cnf_or_neg :args (@t135 0)) % 36.25/36.40 (step @p206 :rule eq_resolve :premises (@p205 @p204)) % 36.25/36.40 (step @p207 :rule reordering :premises (@p206) :args ((or @t133 @t135))) % 36.25/36.40 (step @p208 :rule chain_m_resolution :premises (@p207 @p201) :args (@t135 @t110 (@list @t133))) % 36.25/36.40 (step @p209 :rule refl :args (@t136)) % 36.25/36.40 (step @p210 :rule bool-double-not-elim :args (@t131)) % 36.25/36.40 (step @p211 :rule nary_cong :premises (@p210 @p209) :args ((or (not @t137) @t136))) % 36.25/36.40 (assume-push @p293 @t137) % 36.25/36.40 (step @p213 :rule skolemize :premises (@p293)) % 36.25/36.40 (step-pop @p294 :rule scope :premises (@p213)) % 36.25/36.40 (step @p214 :rule process_scope :premises (@p294) :args (@t136)) % 36.25/36.41 (step @p216 :rule implies_elim :premises (@p214)) % 36.25/36.41 (step @p217 :rule eq_resolve :premises (@p216 @p211)) % 36.25/36.41 (step @p218 :rule chain_m_resolution :premises (@p217 @p208) :args (@t131 @t75 (@list @t135))) % 36.25/36.41 (assume-push @p295 @t131) % 36.25/36.41 (step @p220 :rule instantiate :premises (@p295) :args (@t125)) % 36.25/36.41 (step-pop @p296 :rule scope :premises (@p220)) % 36.25/36.41 (step @p221 :rule process_scope :premises (@p296) :args (@t140)) % 36.25/36.41 (step @p223 :rule implies_elim :premises (@p221)) % 36.25/36.41 (step @p224 :rule chain_m_resolution :premises (@p223 @p218) :args (@t140 @t75 (@list @t131))) % 36.25/36.41 (step @p225 :rule cnf_or_neg :args (@t109 1)) % 36.25/36.41 (step @p226 :rule chain_m_resolution :premises (@p225 @p128) :args ((not @t107) @t110 @t111)) % 36.25/36.41 (step @p227 :rule cnf_or_pos :args (@t140)) % 36.25/36.41 (step @p228 :rule reordering :premises (@p227) :args ((or @t107 @t139 (not @t140)))) % 36.25/36.41 (step @p229 :rule chain_m_resolution :premises (@p228 @p226 @p224) :args (@t139 @t80 (@list @t107 @t140))) % 36.25/36.41 (step @p230 :rule cnf_or_pos :args (@t141)) % 36.25/36.41 (step @p231 :rule reordering :premises (@p230) :args ((or @t107 @t138 @t142))) % 36.25/36.41 (step @p232 :rule chain_m_resolution :premises (@p231 @p226 @p229) :args (@t142 (@list true true) (@list @t107 @t138))) % 36.25/36.41 (step @p233 :rule cnf_equiv_pos1 :args (@t144)) % 36.25/36.41 (step @p234 :rule reordering :premises (@p233) :args ((or @t141 @t145 (not @t144)))) % 36.25/36.41 (step @p235 :rule chain_m_resolution :premises (@p234 @p232 @p178) :args (@t145 @t80 (@list @t141 @t144))) % 36.25/36.41 (step @p236 :rule bool-double-not-elim :args (@t143)) % 36.25/36.41 (step @p237 :rule refl :args (@t108)) % 36.25/36.41 (step @p238 :rule refl :args (@t147)) % 36.25/36.41 (step @p239 :rule refl :args (@t149)) % 36.25/36.41 (step @p240 :rule refl :args (@t151)) % 36.25/36.41 (step @p241 :rule refl :args (@t153)) % 36.25/36.41 (step @p242 :rule nary_cong :premises (@p241 @p240 @p239 @p238 @p237 @p236) :args ((or @t153 @t151 @t149 @t147 @t108 (not @t145)))) % 36.25/36.41 (assume-push @p297 @t145) % 36.25/36.41 (assume-push @p298 @t152) % 36.25/36.41 (assume-push @p299 @t148) % 36.25/36.41 (assume-push @p300 @t150) % 36.25/36.41 (assume-push @p301 @t146) % 36.25/36.41 (assume-push @p302 @t106) % 36.25/36.41 (step @p249 :rule evaluate :args ((= true false))) % 36.25/36.41 (step @p250 :rule false_intro :premises (@p297)) % 36.25/36.41 (step @p251 :rule refl :args (@t105)) % 36.25/36.41 (step @p252 :rule cong :premises (@p251 @p67) :args (@t106)) % 36.25/36.41 (step @p253 :rule true_intro :premises (@p135)) % 36.25/36.41 (step @p254 :rule symm :premises (@p253)) % 36.25/36.41 (step @p255 :rule trans :premises (@p254 @p252 @p250)) % 36.25/36.41 (step @p256 false :rule eq_resolve :premises (@p255 @p249)) % 36.25/36.41 (step-pop @p303 :rule scope :premises (@p256)) % 36.25/36.41 (step-pop @p304 :rule scope :premises (@p303)) % 36.25/36.41 (step-pop @p305 :rule scope :premises (@p304)) % 36.25/36.41 (step-pop @p306 :rule scope :premises (@p305)) % 36.25/36.41 (step-pop @p307 :rule scope :premises (@p306)) % 36.25/36.41 (step-pop @p308 :rule scope :premises (@p307)) % 36.25/36.41 (step @p257 :rule process_scope :premises (@p308) :args (false)) % 36.25/36.41 (assume-push @p309 @t152) % 36.25/36.41 (assume-push @p310 @t150) % 36.25/36.41 (assume-push @p311 @t148) % 36.25/36.41 (assume-push @p312 @t146) % 36.25/36.41 (assume-push @p313 @t106) % 36.25/36.41 (assume-push @p314 @t145) % 36.25/36.41 (step @p270 :rule and_intro :premises (@p314 @p28 @p38 @p36 @p39 @p135)) % 36.25/36.41 (step-pop @p315 :rule scope :premises (@p270)) % 36.25/36.41 (step-pop @p316 :rule scope :premises (@p315)) % 36.25/36.41 (step-pop @p317 :rule scope :premises (@p316)) % 36.25/36.41 (step-pop @p318 :rule scope :premises (@p317)) % 36.25/36.41 (step-pop @p319 :rule scope :premises (@p318)) % 36.25/36.41 (step-pop @p320 :rule scope :premises (@p319)) % 36.25/36.41 (step @p271 :rule process_scope :premises (@p320) :args (@t154)) % 36.25/36.41 (step @p278 :rule implies_elim :premises (@p271)) % 36.25/36.41 (step @p279 :rule resolution :premises (@p278 @p257) :args (true @t154)) % 36.25/36.41 (step @p280 :rule not_and :premises (@p279)) % 36.25/36.41 (step @p281 :rule eq_resolve :premises (@p280 @p242)) % 36.25/36.41 (step @p282 false :rule chain_m_resolution :premises (@p281 @p235 @p135 @p39 @p38 @p36 @p28) :args (false (@list true false false false false false) (@list @t143 @t106 @t146 @t148 @t150 @t152))) % 36.25/36.41 ) % 36.25/36.41 % SZS output end Proof % 36.25/36.41 % cvc5 exiting %------------------------------------------------------------------------------