%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : SET611^3 : TPTP v9.2.1. Released v3.6.0. % Transfm : none % Format : tptp:raw % Command : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM % Computer : n025.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:48:13 AM UTC 2026 % Result : Theorem 0.38s 0.58s % Output : Proof 0.38s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : SET611^3 : TPTP v9.2.1. Released v3.6.0. % 0.13/0.13 % Command : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM % 0.18/0.34 % Computer : n025.cluster.edu % 0.18/0.34 % Model : x86_64 x86_64 % 0.18/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.18/0.34 % Memory : 8042.1875MB % 0.18/0.34 % OS : Linux 3.10.0-693.el7.x86_64 % 0.18/0.34 % CPULimit : 300 % 0.18/0.34 % WCLimit : 300 % 0.18/0.34 % DateTime : Tue Jun 2 16:05:01 EDT 2026 % 0.18/0.34 % CPUTime : % 0.29/0.50 %----Proving TH0 % 0.38/0.58 --- Run --mbqi --mbqi-enum --mbqi-enum-choice-grammar --mbqi-enum-global-syms-grammar --sygus-grammar-ho-partial --no-cegqi --no-sygus-inst at 90s... % 0.38/0.58 % SZS status Theorem % 0.38/0.58 % SZS output start Proof % 0.38/0.58 ( % 0.38/0.58 (declare-sort $$unsorted 0) % 0.38/0.58 (define tptp.in () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "M" (-> $$unsorted Bool)))) (lambda (@list _let_1 _let_2) (_ _let_2 _let_1))))) % 0.38/0.58 (define tptp.is_a () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "M" (-> $$unsorted Bool)))) (lambda (@list _let_1 _let_2) (_ _let_2 _let_1))))) % 0.38/0.58 (define tptp.emptyset () (lambda (@list (@var "X" $$unsorted)) false)) % 0.38/0.58 (define tptp.unord_pair () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "U" $$unsorted))) (let ((_let_3 (@var "X" $$unsorted))) (lambda (@list _let_3 _let_1 _let_2) (or (= _let_2 _let_3) (= _let_2 _let_1))))))) % 0.38/0.58 (define tptp.singleton () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "U" $$unsorted))) (lambda (@list _let_1 _let_2) (= _let_2 _let_1))))) % 0.38/0.58 (define tptp.union () (let ((_let_1 (@var "U" $$unsorted))) (let ((_let_2 (@var "Y" (-> $$unsorted Bool)))) (let ((_let_3 (@var "X" (-> $$unsorted Bool)))) (lambda (@list _let_3 _let_2 _let_1) (or (_ _let_3 _let_1) (_ _let_2 _let_1))))))) % 0.38/0.58 (define tptp.excl_union () (let ((_let_1 (@var "U" $$unsorted))) (let ((_let_2 (@var "Y" (-> $$unsorted Bool)))) (let ((_let_3 (_ _let_2 _let_1))) (let ((_let_4 (@var "X" (-> $$unsorted Bool)))) (let ((_let_5 (_ _let_4 _let_1))) (lambda (@list _let_4 _let_2 _let_1) (or (and _let_5 (not _let_3)) (and (not _let_5) _let_3))))))))) % 0.38/0.58 (define tptp.intersection () (let ((_let_1 (@var "U" $$unsorted))) (let ((_let_2 (@var "Y" (-> $$unsorted Bool)))) (let ((_let_3 (@var "X" (-> $$unsorted Bool)))) (lambda (@list _let_3 _let_2 _let_1) (and (_ _let_3 _let_1) (_ _let_2 _let_1))))))) % 0.38/0.58 (define tptp.setminus () (let ((_let_1 (@var "U" $$unsorted))) (let ((_let_2 (@var "Y" (-> $$unsorted Bool)))) (let ((_let_3 (@var "X" (-> $$unsorted Bool)))) (lambda (@list _let_3 _let_2 _let_1) (and (_ _let_3 _let_1) (not (_ _let_2 _let_1)))))))) % 0.38/0.58 (define tptp.complement () (let ((_let_1 (@var "U" $$unsorted))) (let ((_let_2 (@var "X" (-> $$unsorted Bool)))) (lambda (@list _let_2 _let_1) (not (_ _let_2 _let_1)))))) % 0.38/0.58 (define tptp.disjoint () (let ((_let_1 (@var "Y" (-> $$unsorted Bool)))) (let ((_let_2 (@var "X" (-> $$unsorted Bool)))) (lambda (@list _let_2 _let_1) (= (_ (_ tptp.intersection _let_2) _let_1) tptp.emptyset))))) % 0.38/0.58 (define tptp.subset () (let ((_let_1 (@var "U" $$unsorted))) (let ((_let_2 (@var "Y" (-> $$unsorted Bool)))) (let ((_let_3 (@var "X" (-> $$unsorted Bool)))) (lambda (@list _let_3 _let_2) (forall (@list _let_1) (=> (_ _let_3 _let_1) (_ _let_2 _let_1)))))))) % 0.38/0.58 (define tptp.meets () (let ((_let_1 (@var "U" $$unsorted))) (let ((_let_2 (@var "Y" (-> $$unsorted Bool)))) (let ((_let_3 (@var "X" (-> $$unsorted Bool)))) (lambda (@list _let_3 _let_2) (exists (@list _let_1) (and (_ _let_3 _let_1) (_ _let_2 _let_1)))))))) % 0.38/0.58 (define tptp.misses () (let ((_let_1 (@var "U" $$unsorted))) (let ((_let_2 (@var "Y" (-> $$unsorted Bool)))) (let ((_let_3 (@var "X" (-> $$unsorted Bool)))) (lambda (@list _let_3 _let_2) (not (exists (@list _let_1) (and (_ _let_3 _let_1) (_ _let_2 _let_1))))))))) % 0.38/0.58 (define @t1 () (@var "A" (-> $$unsorted Bool))) % 0.38/0.58 (define @t2 () (@var "B" (-> $$unsorted Bool))) % 0.38/0.58 (define @t3 () (= (_ (_ tptp.setminus @t1) @t2) @t1)) % 0.38/0.58 (define @t4 () (= (_ (_ tptp.intersection @t1) @t2) tptp.emptyset)) % 0.38/0.58 (define @t5 () (= @t4 @t3)) % 0.38/0.58 (define @t6 () (@list @t1 @t2)) % 0.38/0.58 (define @t7 () (forall @t6 @t5)) % 0.38/0.58 (define @t8 () (not @t7)) % 0.38/0.58 (define @t9 () (@var "X" $$unsorted)) % 0.38/0.58 (define @t10 () (@var "M" (-> $$unsorted Bool))) % 0.38/0.58 (define @t11 () (lambda (@list @t9 @t10) (_ @t10 @t9))) % 0.38/0.58 (define @t12 () (lambda (@list @t9) false)) % 0.38/0.58 (define @t13 () (@var "Y" $$unsorted)) % 0.38/0.58 (define @t14 () (@var "U" $$unsorted)) % 0.38/0.58 (define @t15 () (= @t14 @t9)) % 0.38/0.58 (define @t16 () (lambda (@list @t9 @t13 @t14) (or @t15 (= @t14 @t13)))) % 0.38/0.58 (define @t17 () (lambda (@list @t9 @t14) @t15)) % 0.38/0.58 (define @t18 () (@var "Y" (-> $$unsorted Bool))) % 0.38/0.58 (define @t19 () (_ @t18 @t14)) % 0.38/0.58 (define @t20 () (@var "X" (-> $$unsorted Bool))) % 0.38/0.58 (define @t21 () (_ @t20 @t14)) % 0.38/0.58 (define @t22 () (@list @t20 @t18 @t14)) % 0.38/0.58 (define @t23 () (lambda @t22 (or @t21 @t19))) % 0.38/0.58 (define @t24 () (not @t21)) % 0.38/0.58 (define @t25 () (not @t19)) % 0.38/0.58 (define @t26 () (and @t21 @t25)) % 0.38/0.58 (define @t27 () (lambda @t22 (or @t26 (and @t24 @t19)))) % 0.38/0.58 (define @t28 () (and @t21 @t19)) % 0.38/0.58 (define @t29 () (lambda @t22 @t28)) % 0.38/0.58 (define @t30 () (lambda @t22 @t26)) % 0.38/0.58 (define @t31 () (lambda (@list @t20 @t14) @t24)) % 0.38/0.58 (define @t32 () (@list @t20 @t18)) % 0.38/0.58 (define @t33 () (lambda @t32 (= (_ (_ tptp.intersection @t20) @t18) tptp.emptyset))) % 0.38/0.58 (define @t34 () (@list @t14)) % 0.38/0.58 (define @t35 () (lambda @t32 (forall @t34 (=> @t21 @t19)))) % 0.38/0.58 (define @t36 () (exists @t34 @t28)) % 0.38/0.58 (define @t37 () (lambda @t32 @t36)) % 0.38/0.58 (define @t38 () (lambda @t32 (not @t36))) % 0.38/0.58 (define @t39 () (_ @t2 @t14)) % 0.38/0.58 (define @t40 () (_ @t2 @t14)) % 0.38/0.58 (define @t41 () (_ @t1 @t14)) % 0.38/0.58 (define @t42 () (_ @t1 @t14)) % 0.38/0.58 (define @t43 () (and @t42 @t40)) % 0.38/0.58 (define @t44 () (lambda @t34 @t43)) % 0.38/0.58 (define @t45 () (@var "BOUND_VARIABLE_7711" $$unsorted)) % 0.38/0.58 (define @t46 () (lambda (@list @t45) false)) % 0.38/0.58 (define @t47 () (= @t46 @t44)) % 0.38/0.58 (define @t48 () (not @t40)) % 0.38/0.58 (define @t49 () (and @t42 @t48)) % 0.38/0.58 (define @t50 () (lambda @t34 @t49)) % 0.38/0.58 (define @t51 () (= @t1 @t50)) % 0.38/0.58 (define @t52 () (= @t51 @t47)) % 0.38/0.58 (define @t53 () (@list @t18 @t14)) % 0.38/0.58 (define @t54 () (lambda @t53 (and @t42 @t19))) % 0.38/0.58 (define @t55 () (_ @t29 @t1)) % 0.38/0.58 (define @t56 () (= (_ @t55 @t2) @t12)) % 0.38/0.58 (define @t57 () (lambda @t53 (and @t42 @t25))) % 0.38/0.58 (define @t58 () (_ @t30 @t1)) % 0.38/0.58 (define @t59 () (= (_ @t58 @t2) @t1)) % 0.38/0.58 (define @t60 () (forall @t6 (= @t56 @t59))) % 0.38/0.58 (define @t61 () (forall @t6 (= (= @t1 (lambda @t34 (and @t41 (not @t39)))) (= @t46 (lambda @t34 (and @t41 @t39)))))) % 0.38/0.58 (define @t62 () (@quantifiers_skolemize @t61 1)) % 0.38/0.58 (define @t63 () (_ @t62 @t14)) % 0.38/0.58 (define @t64 () (not @t63)) % 0.38/0.58 (define @t65 () (@quantifiers_skolemize @t61 0)) % 0.38/0.58 (define @t66 () (_ @t65 @t14)) % 0.38/0.58 (define @t67 () (lambda @t34 (and @t66 @t64))) % 0.38/0.58 (define @t68 () (@purify @t67)) % 0.38/0.58 (define @t69 () (= @t65 @t68)) % 0.38/0.58 (define @t70 () (@purify @t46)) % 0.38/0.58 (define @t71 () (and @t66 @t63)) % 0.38/0.58 (define @t72 () (lambda @t34 @t71)) % 0.38/0.58 (define @t73 () (@purify @t72)) % 0.38/0.58 (define @t74 () (= @t73 @t70)) % 0.38/0.58 (define @t75 () (= @t74 @t69)) % 0.38/0.58 (define @t76 () (not @t75)) % 0.38/0.58 (define @t77 () (not @t61)) % 0.38/0.58 (define @t78 () (= @t46 @t72)) % 0.38/0.58 (define @t79 () (= @t65 @t67)) % 0.38/0.58 (define @t80 () (= @t79 @t78)) % 0.38/0.58 (define @t81 () (not @t80)) % 0.38/0.58 (define @t82 () (@list true)) % 0.38/0.58 (define @t83 () (@const 0 $$unsorted)) % 0.38/0.58 (define @t84 () (_ @t62 @t83)) % 0.38/0.58 (define @t85 () (not @t84)) % 0.38/0.58 (define @t86 () (_ @t65 @t83)) % 0.38/0.58 (define @t87 () (and @t86 @t85)) % 0.38/0.58 (define @t88 () (= (_ @t67 @t83) @t87)) % 0.38/0.58 (define @t89 () (_ @t68 @t83)) % 0.38/0.58 (define @t90 () (= @t86 @t89)) % 0.38/0.58 (define @t91 () (not @t90)) % 0.38/0.58 (define @t92 () (or @t69 @t91)) % 0.38/0.58 (define @t93 () (forall @t34 (= @t71 false))) % 0.38/0.58 (define @t94 () (=> @t74 @t93)) % 0.38/0.58 (define @t95 () (forall @t34 (or (not @t66) @t64))) % 0.38/0.58 (define @t96 () (not @t86)) % 0.38/0.58 (define @t97 () (or @t96 @t85)) % 0.38/0.58 (define @t98 () (= @t86 @t87)) % 0.38/0.58 (define @t99 () (not @t97)) % 0.38/0.58 (define @t100 () (@list true true)) % 0.38/0.58 (define @t101 () (@const 1 $$unsorted)) % 0.38/0.58 (define @t102 () (_ @t62 @t101)) % 0.38/0.58 (define @t103 () (_ @t65 @t101)) % 0.38/0.58 (define @t104 () (and @t103 @t102)) % 0.38/0.58 (define @t105 () (_ @t46 @t101)) % 0.38/0.58 (define @t106 () (_ @t70 @t101)) % 0.38/0.58 (define @t107 () (= (_ @t72 @t101) @t104)) % 0.38/0.58 (define @t108 () (_ @t73 @t101)) % 0.38/0.58 (define @t109 () (= @t108 @t106)) % 0.38/0.58 (define @t110 () (not @t109)) % 0.38/0.58 (define @t111 () (or @t74 @t110)) % 0.38/0.58 (define @t112 () (not @t104)) % 0.38/0.58 (define @t113 () (@list false)) % 0.38/0.58 (define @t114 () (@list @t104)) % 0.38/0.58 (define @t115 () (not @t102)) % 0.38/0.58 (define @t116 () (and @t103 @t115)) % 0.38/0.58 (define @t117 () (not @t116)) % 0.38/0.58 (define @t118 () (= @t103 @t116)) % 0.38/0.58 (assume @p1 @t8) % 0.38/0.58 (assume @p2 true) % 0.38/0.58 (step @p3 (= tptp.in @t11) :rule refl :args (@t11)) % 0.38/0.58 (step @p4 (= tptp.is_a @t11) :rule refl :args (@t11)) % 0.38/0.58 (step @p5 (= tptp.emptyset @t12) :rule refl :args (@t12)) % 0.38/0.58 (step @p6 (= tptp.unord_pair @t16) :rule refl :args (@t16)) % 0.38/0.58 (step @p7 (= tptp.singleton @t17) :rule refl :args (@t17)) % 0.38/0.58 (step @p8 (= tptp.union @t23) :rule refl :args (@t23)) % 0.38/0.58 (step @p9 (= tptp.excl_union @t27) :rule refl :args (@t27)) % 0.38/0.58 (step @p10 (= tptp.intersection @t29) :rule refl :args (@t29)) % 0.38/0.58 (step @p11 (= tptp.setminus @t30) :rule refl :args (@t30)) % 0.38/0.58 (step @p12 (= tptp.complement @t31) :rule refl :args (@t31)) % 0.38/0.58 (step @p13 (= tptp.disjoint @t33) :rule refl :args (@t33)) % 0.38/0.58 (step @p14 (= tptp.subset @t35) :rule refl :args (@t35)) % 0.38/0.58 (step @p15 (= tptp.meets @t37) :rule refl :args (@t37)) % 0.38/0.58 (step @p16 (= tptp.misses @t38) :rule refl :args (@t38)) % 0.38/0.58 (step @p17 :rule refl :args (@t39)) % 0.38/0.58 (step @p18 :rule refl :args (@t40)) % 0.38/0.58 (step @p19 :rule cong :premises (@p18 @p17) :args ((= @t40 @t39))) % 0.38/0.58 (step @p20 :rule symm :premises (@p19)) % 0.38/0.58 (step @p21 :rule eq_resolve :premises (@p18 @p20)) % 0.38/0.58 (step @p22 :rule refl :args (@t41)) % 0.38/0.58 (step @p23 :rule refl :args (@t42)) % 0.38/0.58 (step @p24 :rule cong :premises (@p23 @p22) :args ((= @t42 @t41))) % 0.38/0.58 (step @p25 :rule symm :premises (@p24)) % 0.38/0.58 (step @p26 :rule eq_resolve :premises (@p23 @p25)) % 0.38/0.58 (step @p27 :rule nary_cong :premises (@p26 @p21) :args (@t43)) % 0.38/0.58 (step @p28 :rule cong :premises (@p27) :args (@t44)) % 0.38/0.58 (step @p29 :rule refl :args (@t46)) % 0.38/0.58 (step @p30 :rule cong :premises (@p29 @p28) :args (@t47)) % 0.38/0.58 (step @p31 :rule cong :premises (@p21) :args (@t48)) % 0.38/0.58 (step @p32 :rule nary_cong :premises (@p26 @p31) :args (@t49)) % 0.38/0.58 (step @p33 :rule cong :premises (@p32) :args (@t50)) % 0.38/0.58 (step @p34 :rule refl :args (@t1)) % 0.38/0.58 (step @p35 :rule cong :premises (@p34 @p33) :args (@t51)) % 0.38/0.58 (step @p36 :rule cong :premises (@p35 @p30) :args (@t52)) % 0.38/0.58 (step @p37 :rule cong :premises (@p36) :args ((forall @t6 @t52))) % 0.38/0.58 (step @p38 :rule eq-symm :args (@t44 @t46)) % 0.38/0.58 (step @p39 :rule refl :args (@t46)) % 0.38/0.58 (step @p40 :rule symm :premises (@p39)) % 0.38/0.58 (step @p41 :rule alpha_equiv :args (@t12 (@list @t9) (@list @t45))) % 0.38/0.58 (step @p42 :rule trans :premises (@p41 @p40)) % 0.38/0.58 (step @p43 :rule beta-reduce :args ((= (_ @t54 @t2) @t44))) % 0.38/0.58 (step @p44 :rule refl :args (@t2)) % 0.38/0.58 (step @p45 :rule beta-reduce :args ((= @t55 @t54))) % 0.38/0.58 (step @p46 :rule ho_cong :premises (@p45 @p44)) % 0.38/0.58 (step @p47 :rule trans :premises (@p46 @p43)) % 0.38/0.58 (step @p48 :rule cong :premises (@p47 @p42) :args (@t56)) % 0.38/0.58 (step @p49 :rule trans :premises (@p48 @p38)) % 0.38/0.58 (step @p50 :rule eq-symm :args (@t50 @t1)) % 0.38/0.58 (step @p51 :rule refl :args (@t1)) % 0.38/0.58 (step @p52 :rule beta-reduce :args ((= (_ @t57 @t2) @t50))) % 0.38/0.58 (step @p53 :rule beta-reduce :args ((= @t58 @t57))) % 0.38/0.58 (step @p54 :rule ho_cong :premises (@p53 @p44)) % 0.38/0.58 (step @p55 :rule trans :premises (@p54 @p52)) % 0.38/0.58 (step @p56 :rule cong :premises (@p55 @p51) :args (@t59)) % 0.38/0.58 (step @p57 :rule trans :premises (@p56 @p50)) % 0.38/0.58 (step @p58 :rule cong :premises (@p57 @p49) :args ((= @t59 @t56))) % 0.38/0.58 (step @p59 :rule eq-symm :args (@t56 @t59)) % 0.38/0.58 (step @p60 :rule trans :premises (@p59 @p58)) % 0.38/0.58 (step @p61 :rule cong :premises (@p60) :args (@t60)) % 0.38/0.58 (step @p62 :rule trans :premises (@p61 @p37)) % 0.38/0.58 (step @p63 :rule cong :premises (@p62) :args ((not @t60))) % 0.38/0.58 (step @p64 :rule ho_cong :premises (@p11 @p51)) % 0.38/0.58 (step @p65 :rule ho_cong :premises (@p64 @p44)) % 0.38/0.58 (step @p66 :rule cong :premises (@p65 @p51) :args (@t3)) % 0.38/0.58 (step @p67 :rule ho_cong :premises (@p10 @p51)) % 0.38/0.58 (step @p68 :rule ho_cong :premises (@p67 @p44)) % 0.38/0.58 (step @p69 :rule cong :premises (@p68 @p5) :args (@t4)) % 0.38/0.58 (step @p70 :rule cong :premises (@p69 @p66) :args (@t5)) % 0.38/0.58 (step @p71 :rule cong :premises (@p70) :args (@t7)) % 0.38/0.58 (step @p72 :rule cong :premises (@p71) :args (@t8)) % 0.38/0.58 (step @p73 :rule trans :premises (@p72 @p63)) % 0.38/0.58 (step @p74 :rule eq_resolve :premises (@p1 @p73)) % 0.38/0.58 (step @p75 :rule refl :args (@t76)) % 0.38/0.58 (step @p76 :rule bool-double-not-elim :args (@t61)) % 0.38/0.58 (step @p77 :rule nary_cong :premises (@p76 @p75) :args ((or (not @t77) @t76))) % 0.38/0.58 (step @p78 :rule eq-symm :args (@t69 @t74)) % 0.38/0.58 (step @p79 :rule eq-symm :args (@t70 @t73)) % 0.38/0.58 (step @p80 :rule eq-refl :args (@t72)) % 0.38/0.58 (step @p81 :rule skolem_intro :args (@t73)) % 0.38/0.58 (step @p82 :rule refl :args (@t72)) % 0.38/0.58 (step @p83 :rule cong :premises (@p82 @p81) :args ((= @t72 @t73))) % 0.38/0.58 (step @p84 :rule trans :premises (@p83 @p80)) % 0.38/0.58 (step @p85 :rule true_elim :premises (@p84)) % 0.38/0.58 (step @p86 :rule eq-refl :args (@t46)) % 0.38/0.58 (step @p87 :rule refl :args (@t46)) % 0.38/0.58 (step @p88 :rule cong :premises (@p87 @p40) :args ((= @t46 @t46))) % 0.38/0.58 (step @p89 :rule trans :premises (@p88 @p86)) % 0.38/0.58 (step @p90 :rule skolem_intro :args (@t70)) % 0.38/0.58 (step @p91 :rule cong :premises (@p87 @p90) :args ((= @t46 @t70))) % 0.38/0.58 (step @p92 :rule trans :premises (@p91 @p89)) % 0.38/0.58 (step @p93 :rule true_elim :premises (@p92)) % 0.38/0.58 (step @p94 :rule cong :premises (@p93 @p85) :args (@t78)) % 0.38/0.58 (step @p95 :rule trans :premises (@p94 @p79)) % 0.38/0.58 (step @p96 :rule eq-refl :args (@t67)) % 0.38/0.58 (step @p97 :rule skolem_intro :args (@t68)) % 0.38/0.58 (step @p98 :rule refl :args (@t67)) % 0.38/0.58 (step @p99 :rule cong :premises (@p98 @p97) :args ((= @t67 @t68))) % 0.38/0.58 (step @p100 :rule trans :premises (@p99 @p96)) % 0.38/0.58 (step @p101 :rule true_elim :premises (@p100)) % 0.38/0.58 (step @p102 :rule refl :args (@t65)) % 0.38/0.58 (step @p103 :rule cong :premises (@p102 @p101) :args (@t79)) % 0.38/0.58 (step @p104 :rule cong :premises (@p103 @p95) :args (@t80)) % 0.38/0.58 (step @p105 :rule trans :premises (@p104 @p78)) % 0.38/0.58 (step @p106 :rule cong :premises (@p105) :args (@t81)) % 0.38/0.58 (step @p107 :rule refl :args (@t77)) % 0.38/0.58 (step @p108 :rule cong :premises (@p107 @p106) :args ((=> @t77 @t81))) % 0.38/0.58 (assume-push @p212 @t77) % 0.38/0.58 (step @p110 :rule skolemize :premises (@p74)) % 0.38/0.58 (step-pop @p213 :rule scope :premises (@p110)) % 0.38/0.58 (step @p111 :rule process_scope :premises (@p213) :args (@t81)) % 0.38/0.58 (step @p113 :rule eq_resolve :premises (@p111 @p108)) % 0.38/0.58 (step @p114 :rule implies_elim :premises (@p113)) % 0.38/0.58 (step @p115 :rule eq_resolve :premises (@p114 @p77)) % 0.38/0.58 (step @p116 :rule chain_m_resolution :premises (@p115 @p74) :args (@t76 @t82 (@list @t61))) % 0.38/0.58 (step @p117 :rule cnf_equiv_neg2 :args (@t75)) % 0.38/0.58 (step @p118 :rule eq-refl :args (@t87)) % 0.38/0.58 (step @p119 :rule refl :args (@t87)) % 0.38/0.58 (step @p120 :rule beta-reduce :args (@t88)) % 0.38/0.58 (step @p121 :rule cong :premises (@p120 @p119) :args (@t88)) % 0.38/0.58 (step @p122 :rule trans :premises (@p121 @p118)) % 0.38/0.58 (step @p123 :rule refl :args (@t83)) % 0.38/0.58 (step @p124 :rule ho_cong :premises (@p97 @p123)) % 0.38/0.58 (step @p125 :rule cong :premises (@p124 @p119) :args ((= @t89 @t87))) % 0.38/0.58 (step @p126 :rule trans :premises (@p125 @p122)) % 0.38/0.58 (step @p127 :rule true_elim :premises (@p126)) % 0.38/0.58 (step @p128 :rule refl :args (@t86)) % 0.38/0.58 (step @p129 :rule cong :premises (@p128 @p127) :args (@t90)) % 0.38/0.58 (step @p130 :rule cong :premises (@p129) :args (@t91)) % 0.38/0.58 (step @p131 :rule refl :args (@t69)) % 0.38/0.58 (step @p132 :rule nary_cong :premises (@p131 @p130) :args (@t92)) % 0.38/0.58 ; WARNING: add trust step for TRUST % 0.38/0.58 ; trust TRUST THEORY_LEMMA % 0.38/0.58 (step @p133 :rule trust :premises () :args (@t92)) % 0.38/0.58 (step @p134 :rule eq_resolve :premises (@p133 @p132)) % 0.38/0.58 (step @p135 :rule bool-and-de-morgan :args (@t66 @t63 true)) % 0.38/0.58 (step @p136 :rule cong :premises (@p135) :args ((forall @t34 (not @t71)))) % 0.38/0.58 (step @p137 :rule bool-eq-false :args (@t71)) % 0.38/0.58 (step @p138 :rule cong :premises (@p137) :args (@t93)) % 0.38/0.58 (step @p139 :rule trans :premises (@p138 @p136)) % 0.38/0.58 (step @p140 :rule refl :args (@t74)) % 0.38/0.58 (step @p141 :rule cong :premises (@p140 @p139) :args (@t94)) % 0.38/0.58 ; trust TRUST THEORY_LEMMA % 0.38/0.58 (step @p142 :rule trust :premises () :args (@t94)) % 0.38/0.58 (step @p143 :rule eq_resolve :premises (@p142 @p141)) % 0.38/0.58 (step @p144 :rule implies_elim :premises (@p143)) % 0.38/0.58 (assume-push @p214 @t95) % 0.38/0.58 (step @p146 :rule instantiate :premises (@p214) :args ((@list @t83))) % 0.38/0.58 (step-pop @p215 :rule scope :premises (@p146)) % 0.38/0.58 (step @p147 :rule process_scope :premises (@p215) :args (@t97)) % 0.38/0.58 (step @p149 :rule implies_elim :premises (@p147)) % 0.38/0.58 (step @p150 :rule cnf_equiv_neg2 :args (@t98)) % 0.38/0.58 (step @p151 :rule cnf_or_pos :args (@t97)) % 0.38/0.58 (step @p152 :rule reordering :premises (@p151) :args ((or @t85 @t96 @t99))) % 0.38/0.58 (step @p153 :rule bool-double-not-elim :args (@t84)) % 0.38/0.58 (step @p154 :rule refl :args (@t96)) % 0.38/0.58 (step @p155 :rule nary_cong :premises (@p119 @p154 @p153) :args ((or @t87 @t96 (not @t85)))) % 0.38/0.58 (step @p156 :rule cnf_and_neg :args (@t87)) % 0.38/0.58 (step @p157 :rule eq_resolve :premises (@p156 @p155)) % 0.38/0.58 (step @p158 :rule reordering :premises (@p157) :args ((or @t84 @t87 @t96))) % 0.38/0.58 (step @p159 :rule chain_m_resolution :premises (@p158 @p152 @p150) :args ((or @t98 @t96 @t99) @t100 (@list @t84 @t87))) % 0.38/0.58 (step @p160 :rule cnf_and_pos :args (@t87 0)) % 0.38/0.58 (step @p161 :rule reordering :premises (@p160) :args ((or @t86 (not @t87)))) % 0.38/0.58 (step @p162 :rule cnf_equiv_neg1 :args (@t98)) % 0.38/0.58 (step @p163 :rule reordering :premises (@p162) :args ((or @t86 @t87 @t98))) % 0.38/0.58 (step @p164 :rule chain_m_resolution :premises (@p163 @p161 @p159 @p149 @p144 @p134 @p117 @p116) :args ((not @t74) (@list true true false false true true true) (@list @t87 @t86 @t97 @t95 @t98 @t69 @t75))) % 0.38/0.58 (step @p165 :rule bool-double-not-elim :args (@t104)) % 0.38/0.58 (step @p166 :rule bool-eq-false :args (@t104)) % 0.38/0.58 (step @p167 :rule evaluate :args ((not false))) % 0.38/0.58 (step @p168 :rule beta-reduce :args ((= @t105 false))) % 0.38/0.58 (step @p169 :rule cong :premises (@p168) :args ((not @t105))) % 0.38/0.58 (step @p170 :rule trans :premises (@p169 @p167)) % 0.38/0.58 (step @p171 :rule refl :args (@t101)) % 0.38/0.58 (step @p172 :rule ho_cong :premises (@p90 @p171)) % 0.38/0.58 (step @p173 :rule cong :premises (@p172) :args ((not @t106))) % 0.38/0.58 (step @p174 :rule bool-eq-false :args (@t106)) % 0.38/0.58 (step @p175 :rule trans :premises (@p174 @p173 @p170)) % 0.38/0.58 (step @p176 :rule true_elim :premises (@p175)) % 0.38/0.58 (step @p177 :rule eq-refl :args (@t104)) % 0.38/0.58 (step @p178 :rule refl :args (@t104)) % 0.38/0.58 (step @p179 :rule beta-reduce :args (@t107)) % 0.38/0.58 (step @p180 :rule cong :premises (@p179 @p178) :args (@t107)) % 0.38/0.58 (step @p181 :rule trans :premises (@p180 @p177)) % 0.38/0.58 (step @p182 :rule ho_cong :premises (@p81 @p171)) % 0.38/0.58 (step @p183 :rule cong :premises (@p182 @p178) :args ((= @t108 @t104))) % 0.38/0.58 (step @p184 :rule trans :premises (@p183 @p181)) % 0.38/0.58 (step @p185 :rule true_elim :premises (@p184)) % 0.38/0.58 (step @p186 :rule cong :premises (@p185 @p176) :args (@t109)) % 0.38/0.58 (step @p187 :rule trans :premises (@p186 @p166)) % 0.38/0.58 (step @p188 :rule cong :premises (@p187) :args (@t110)) % 0.38/0.58 (step @p189 :rule trans :premises (@p188 @p165)) % 0.38/0.58 (step @p190 :rule nary_cong :premises (@p140 @p189) :args (@t111)) % 0.38/0.58 ; trust TRUST THEORY_LEMMA % 0.38/0.58 (step @p191 :rule trust :premises () :args (@t111)) % 0.38/0.58 (step @p192 :rule eq_resolve :premises (@p191 @p190)) % 0.38/0.58 (step @p193 :rule chain_m_resolution :premises (@p192 @p164) :args (@t104 @t82 (@list @t74))) % 0.38/0.58 (step @p194 :rule cnf_and_pos :args (@t104 0)) % 0.38/0.58 (step @p195 :rule reordering :premises (@p194) :args ((or @t103 @t112))) % 0.38/0.58 (step @p196 :rule chain_m_resolution :premises (@p195 @p193) :args (@t103 @t113 @t114)) % 0.38/0.58 (step @p197 :rule cnf_and_pos :args (@t104 1)) % 0.38/0.58 (step @p198 :rule reordering :premises (@p197) :args ((or @t102 @t112))) % 0.38/0.58 (step @p199 :rule chain_m_resolution :premises (@p198 @p193) :args (@t102 @t113 @t114)) % 0.38/0.58 (step @p200 :rule cnf_and_pos :args (@t116 1)) % 0.38/0.58 (step @p201 :rule reordering :premises (@p200) :args ((or @t115 @t117))) % 0.38/0.58 (step @p202 :rule chain_m_resolution :premises (@p201 @p199) :args (@t117 @t113 (@list @t102))) % 0.38/0.58 (step @p203 :rule cnf_equiv_neg1 :args (@t75)) % 0.38/0.58 (step @p204 :rule reordering :premises (@p203) :args ((or @t74 @t69 @t75))) % 0.38/0.58 (step @p205 :rule chain_m_resolution :premises (@p204 @p164 @p116) :args (@t69 @t100 (@list @t74 @t75))) % 0.38/0.58 ; trust TRUST THEORY_LEMMA % 0.38/0.58 (step @p206 :rule trust :premises () :args ((=> @t69 @t118))) % 0.38/0.58 (step @p207 :rule implies_elim :premises (@p206)) % 0.38/0.58 (step @p208 :rule chain_m_resolution :premises (@p207 @p205) :args (@t118 @t113 (@list @t69))) % 0.38/0.58 (step @p209 :rule cnf_equiv_pos1 :args (@t118)) % 0.38/0.58 (step @p210 :rule reordering :premises (@p209) :args ((or (not @t103) @t116 (not @t118)))) % 0.38/0.58 (step @p211 false :rule chain_m_resolution :premises (@p210 @p208 @p202 @p196) :args (false (@list false true false) (@list @t118 @t116 @t103))) % 0.38/0.58 ) % 0.38/0.58 % SZS output end Proof % 0.38/0.58 % cvc5 exiting %------------------------------------------------------------------------------