↑ Up

cvc5---1.3.4.THM-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : cvc5---1.3.4
% Problem  : LCL486+1 : TPTP v9.3.1. Bugfixed v9.2.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   : 8046.5625MB
% OS       : Linux 6.8.0-71-generic
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Mon Sep  7 11:22:59 AM UTC 2026

% Result   : Theorem 2.33s 2.65s
% Output   : Proof 2.33s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.03  % Problem  : LCL486+1 : TPTP v9.3.1. Bugfixed v9.2.0.
% 0.00/0.04  % Command  : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM
% 0.10/0.37  % Computer : n020.cluster.edu
% 0.10/0.37  % Model    : x86_64 x86_64
% 0.10/0.37  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.10/0.37  % Memory   : 8046.5625MB
% 0.10/0.37  % OS       : Linux 6.8.0-71-generic
% 0.10/0.37  % CPULimit : 300
% 0.10/0.37  % WCLimit  : 300
% 0.10/0.37  % DateTime : Fri Sep  4 14:17:27 UTC 2026
% 0.10/0.37  % CPUTime  : 
% 0.10/0.45  %----Proving TF0_NAR, FOF, or CNF
% 2.33/2.65  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 15...
% 2.33/2.65  % SZS status Theorem
% 2.33/2.65  % SZS output start Proof
% 2.33/2.65  (
% 2.33/2.65  (declare-sort $$unsorted 0)
% 2.33/2.65  (declare-const tptp.op_equiv Bool)
% 2.33/2.65  (declare-const tptp.op_implies_or Bool)
% 2.33/2.65  (declare-const tptp.op_and Bool)
% 2.33/2.65  (declare-const tptp.r4 Bool)
% 2.33/2.65  (declare-const tptp.r3 Bool)
% 2.33/2.65  (declare-const tptp.implies_2 Bool)
% 2.33/2.65  (declare-const tptp.and_2 Bool)
% 2.33/2.65  (declare-const tptp.modus_tollens Bool)
% 2.33/2.65  (declare-const tptp.not (-> $$unsorted $$unsorted))
% 2.33/2.65  (declare-const tptp.op_or Bool)
% 2.33/2.65  (declare-const tptp.or_1 Bool)
% 2.33/2.65  (declare-const tptp.equivalence_3 Bool)
% 2.33/2.65  (declare-const tptp.and_1 Bool)
% 2.33/2.65  (declare-const tptp.equiv (-> $$unsorted $$unsorted $$unsorted))
% 2.33/2.65  (declare-const tptp.implies_3 Bool)
% 2.33/2.65  (declare-const tptp.substitution_of_equivalents Bool)
% 2.33/2.65  (declare-const tptp.or (-> $$unsorted $$unsorted $$unsorted))
% 2.33/2.65  (declare-const tptp.and (-> $$unsorted $$unsorted $$unsorted))
% 2.33/2.65  (declare-const tptp.op_implies_and Bool)
% 2.33/2.65  (declare-const tptp.or_3 Bool)
% 2.33/2.65  (declare-const tptp.equivalence_2 Bool)
% 2.33/2.65  (declare-const tptp.modus_ponens Bool)
% 2.33/2.65  (declare-const tptp.implies_1 Bool)
% 2.33/2.65  (declare-const tptp.equivalence_1 Bool)
% 2.33/2.65  (declare-const tptp.implies (-> $$unsorted $$unsorted $$unsorted))
% 2.33/2.65  (declare-const tptp.r5 Bool)
% 2.33/2.65  (declare-const tptp.and_3 Bool)
% 2.33/2.65  (declare-const tptp.cn3 Bool)
% 2.33/2.65  (declare-const tptp.or_2 Bool)
% 2.33/2.65  (declare-const tptp.kn1 Bool)
% 2.33/2.65  (declare-const tptp.cn1 Bool)
% 2.33/2.65  (declare-const tptp.kn2 Bool)
% 2.33/2.65  (declare-const tptp.cn2 Bool)
% 2.33/2.65  (declare-const tptp.kn3 Bool)
% 2.33/2.65  (declare-const tptp.is_a_theorem (-> $$unsorted Bool))
% 2.33/2.65  (declare-const tptp.r1 Bool)
% 2.33/2.65  (declare-const tptp.r2 Bool)
% 2.33/2.65  (define @t1 () (@var "Y" $$unsorted))
% 2.33/2.65  (define @t2 () (tptp.is_a_theorem @t1))
% 2.33/2.65  (define @t3 () (@var "X" $$unsorted))
% 2.33/2.65  (define @t4 () (tptp.implies @t3 @t1))
% 2.33/2.65  (define @t5 () (tptp.is_a_theorem @t4))
% 2.33/2.65  (define @t6 () (tptp.is_a_theorem @t3))
% 2.33/2.65  (define @t7 () (and @t6 @t5))
% 2.33/2.65  (define @t8 () (@list @t3 @t1))
% 2.33/2.65  (define @t9 () (forall @t8 (=> @t7 @t2)))
% 2.33/2.65  (define @t10 () (= tptp.modus_ponens @t9))
% 2.33/2.65  (define @t11 () (tptp.equiv @t3 @t1))
% 2.33/2.65  (define @t12 () (tptp.not @t3))
% 2.33/2.65  (define @t13 () (tptp.not @t1))
% 2.33/2.65  (define @t14 () (tptp.implies @t1 @t3))
% 2.33/2.65  (define @t15 () (@var "Z" $$unsorted))
% 2.33/2.65  (define @t16 () (tptp.implies @t3 @t15))
% 2.33/2.65  (define @t17 () (tptp.implies @t1 @t15))
% 2.33/2.65  (define @t18 () (@list @t3 @t1 @t15))
% 2.33/2.65  (define @t19 () (forall @t18 (tptp.is_a_theorem (tptp.implies @t4 (tptp.implies @t17 @t16)))))
% 2.33/2.65  (define @t20 () (tptp.and @t3 @t1))
% 2.33/2.65  (define @t21 () (tptp.or @t3 @t1))
% 2.33/2.65  (define @t22 () (@var "P" $$unsorted))
% 2.33/2.65  (define @t23 () (@list @t22))
% 2.33/2.65  (define @t24 () (@var "Q" $$unsorted))
% 2.33/2.65  (define @t25 () (@list @t22 @t24))
% 2.33/2.65  (define @t26 () (@var "R" $$unsorted))
% 2.33/2.65  (define @t27 () (tptp.implies @t22 @t24))
% 2.33/2.65  (define @t28 () (@list @t22 @t24 @t26))
% 2.33/2.65  (define @t29 () (tptp.implies @t24 @t26))
% 2.33/2.65  (define @t30 () (tptp.not @t22))
% 2.33/2.65  (define @t31 () (tptp.or @t22 @t24))
% 2.33/2.65  (define @t32 () (tptp.or @t22 @t26))
% 2.33/2.65  (define @t33 () (forall @t28 (tptp.is_a_theorem (tptp.implies (tptp.or @t22 (tptp.or @t24 @t26)) (tptp.or @t24 @t32)))))
% 2.33/2.65  (define @t34 () (forall @t28 (tptp.is_a_theorem (tptp.implies @t29 (tptp.implies @t31 @t32)))))
% 2.33/2.65  (define @t35 () (forall @t8 (= @t4 (tptp.or @t12 @t1))))
% 2.33/2.65  (define @t36 () (@list false))
% 2.33/2.65  (define @t37 () (@quantifiers_skolemize @t19 2))
% 2.33/2.65  (define @t38 () (@quantifiers_skolemize @t19 1))
% 2.33/2.65  (define @t39 () (@quantifiers_skolemize @t19 0))
% 2.33/2.65  (define @t40 () (tptp.implies @t39 @t37))
% 2.33/2.65  (define @t41 () (tptp.implies @t39 @t38))
% 2.33/2.65  (define @t42 () (tptp.implies @t41 @t40))
% 2.33/2.65  (define @t43 () (tptp.not @t41))
% 2.33/2.65  (define @t44 () (tptp.or @t43 @t40))
% 2.33/2.65  (define @t45 () (= @t42 @t44))
% 2.33/2.65  (define @t46 () (@list @t35))
% 2.33/2.65  (define @t47 () (tptp.implies @t38 @t37))
% 2.33/2.65  (define @t48 () (tptp.implies @t47 @t44))
% 2.33/2.65  (define @t49 () (tptp.not @t47))
% 2.33/2.65  (define @t50 () (tptp.or @t49 @t44))
% 2.33/2.65  (define @t51 () (= @t48 @t50))
% 2.33/2.65  (define @t52 () (tptp.is_a_theorem @t50))
% 2.33/2.65  (define @t53 () (not @t5))
% 2.33/2.65  (define @t54 () (not @t6))
% 2.33/2.65  (define @t55 () (or @t54 @t53 @t2))
% 2.33/2.65  (define @t56 () (forall @t8 @t55))
% 2.33/2.65  (define @t57 () (tptp.or @t43 (tptp.or @t49 @t40)))
% 2.33/2.65  (define @t58 () (tptp.is_a_theorem @t57))
% 2.33/2.65  (define @t59 () (tptp.is_a_theorem (tptp.implies @t50 @t57)))
% 2.33/2.65  (define @t60 () (not @t59))
% 2.33/2.65  (define @t61 () (not @t52))
% 2.33/2.65  (define @t62 () (or @t61 @t60 @t58))
% 2.33/2.65  (assume @p1 @t10)
% 2.33/2.65  (assume @p2 (= tptp.substitution_of_equivalents (forall @t8 (=> (tptp.is_a_theorem @t11) (= @t3 @t1)))))
% 2.33/2.65  (assume @p3 (= tptp.modus_tollens (forall @t8 (tptp.is_a_theorem (tptp.implies (tptp.implies @t13 @t12) @t4)))))
% 2.33/2.65  (assume @p4 (= tptp.implies_1 (forall @t8 (tptp.is_a_theorem (tptp.implies @t3 @t14)))))
% 2.33/2.65  (assume @p5 (= tptp.implies_2 (forall @t8 (tptp.is_a_theorem (tptp.implies (tptp.implies @t3 @t4) @t4)))))
% 2.33/2.65  (assume @p6 (= tptp.implies_3 @t19))
% 2.33/2.65  (assume @p7 (= tptp.and_1 (forall @t8 (tptp.is_a_theorem (tptp.implies @t20 @t3)))))
% 2.33/2.65  (assume @p8 (= tptp.and_2 (forall @t8 (tptp.is_a_theorem (tptp.implies @t20 @t1)))))
% 2.33/2.65  (assume @p9 (= tptp.and_3 (forall @t8 (tptp.is_a_theorem (tptp.implies @t3 (tptp.implies @t1 @t20))))))
% 2.33/2.65  (assume @p10 (= tptp.or_1 (forall @t8 (tptp.is_a_theorem (tptp.implies @t3 @t21)))))
% 2.33/2.65  (assume @p11 (= tptp.or_2 (forall @t8 (tptp.is_a_theorem (tptp.implies @t1 @t21)))))
% 2.33/2.65  (assume @p12 (= tptp.or_3 (forall @t18 (tptp.is_a_theorem (tptp.implies @t16 (tptp.implies @t17 (tptp.implies @t21 @t15)))))))
% 2.33/2.65  (assume @p13 (= tptp.equivalence_1 (forall @t8 (tptp.is_a_theorem (tptp.implies @t11 @t4)))))
% 2.33/2.65  (assume @p14 (= tptp.equivalence_2 (forall @t8 (tptp.is_a_theorem (tptp.implies @t11 @t14)))))
% 2.33/2.65  (assume @p15 (= tptp.equivalence_3 (forall @t8 (tptp.is_a_theorem (tptp.implies @t4 (tptp.implies @t14 @t11))))))
% 2.33/2.65  (assume @p16 (= tptp.kn1 (forall @t23 (tptp.is_a_theorem (tptp.implies @t22 (tptp.and @t22 @t22))))))
% 2.33/2.65  (assume @p17 (= tptp.kn2 (forall @t25 (tptp.is_a_theorem (tptp.implies (tptp.and @t22 @t24) @t22)))))
% 2.33/2.65  (assume @p18 (= tptp.kn3 (forall @t28 (tptp.is_a_theorem (tptp.implies @t27 (tptp.implies (tptp.not (tptp.and @t24 @t26)) (tptp.not (tptp.and @t26 @t22))))))))
% 2.33/2.65  (assume @p19 (= tptp.cn1 (forall @t28 (tptp.is_a_theorem (tptp.implies @t27 (tptp.implies @t29 (tptp.implies @t22 @t26)))))))
% 2.33/2.65  (assume @p20 (= tptp.cn2 (forall @t25 (tptp.is_a_theorem (tptp.implies @t22 (tptp.implies @t30 @t24))))))
% 2.33/2.65  (assume @p21 (= tptp.cn3 (forall @t23 (tptp.is_a_theorem (tptp.implies (tptp.implies @t30 @t22) @t22)))))
% 2.33/2.65  (assume @p22 (= tptp.r1 (forall @t23 (tptp.is_a_theorem (tptp.implies (tptp.or @t22 @t22) @t22)))))
% 2.33/2.65  (assume @p23 (= tptp.r2 (forall @t25 (tptp.is_a_theorem (tptp.implies @t24 @t31)))))
% 2.33/2.65  (assume @p24 (= tptp.r3 (forall @t25 (tptp.is_a_theorem (tptp.implies @t31 (tptp.or @t24 @t22))))))
% 2.33/2.65  (assume @p25 (= tptp.r4 @t33))
% 2.33/2.65  (assume @p26 (= tptp.r5 @t34))
% 2.33/2.65  (assume @p27 (=> tptp.op_or (forall @t8 (= @t21 (tptp.not (tptp.and @t12 @t13))))))
% 2.33/2.65  (assume @p28 (=> tptp.op_and (forall @t8 (= @t20 (tptp.not (tptp.or @t12 @t13))))))
% 2.33/2.65  (assume @p29 (=> tptp.op_implies_and (forall @t8 (= @t4 (tptp.not (tptp.and @t3 @t13))))))
% 2.33/2.65  (assume @p30 (=> tptp.op_implies_or @t35))
% 2.33/2.65  (assume @p31 (=> tptp.op_equiv (forall @t8 (= @t11 (tptp.and @t4 @t14)))))
% 2.33/2.65  (assume @p32 tptp.op_implies_or)
% 2.33/2.65  (assume @p33 tptp.op_and)
% 2.33/2.65  (assume @p34 tptp.op_equiv)
% 2.33/2.65  (assume @p35 tptp.modus_ponens)
% 2.33/2.65  (assume @p36 tptp.r1)
% 2.33/2.65  (assume @p37 tptp.r2)
% 2.33/2.65  (assume @p38 tptp.r3)
% 2.33/2.65  (assume @p39 tptp.r4)
% 2.33/2.65  (assume @p40 tptp.r5)
% 2.33/2.65  (assume @p41 tptp.substitution_of_equivalents)
% 2.33/2.65  (assume @p42 tptp.op_or)
% 2.33/2.65  (assume @p43 tptp.op_implies_and)
% 2.33/2.65  (assume @p44 (not tptp.implies_3))
% 2.33/2.65  (assume @p45 true)
% 2.33/2.65  (step @p46 :rule evaluate :args ((= false true)))
% 2.33/2.65  (step @p47 :rule equiv_elim1 :premises (@p26))
% 2.33/2.65  (step @p48 :rule reordering :premises (@p47) :args ((or @t34 (not tptp.r5))))
% 2.33/2.65  (step @p49 :rule chain_m_resolution :premises (@p48 @p40) :args (@t34 @t36 (@list tptp.r5)))
% 2.33/2.65  (step @p50 :rule instantiate :premises (@p49) :args ((@list (tptp.not @t39) @t38 @t37)))
% 2.33/2.65  (step @p51 :rule true_intro :premises (@p50))
% 2.33/2.65  (step @p52 :rule implies_elim :premises (@p30))
% 2.33/2.65  (step @p53 :rule reordering :premises (@p52) :args ((or @t35 (not tptp.op_implies_or))))
% 2.33/2.65  (step @p54 :rule chain_m_resolution :premises (@p53 @p32) :args (@t35 @t36 (@list tptp.op_implies_or)))
% 2.33/2.65  (step @p55 :rule instantiate :premises (@p54) :args ((@list @t39 @t37)))
% 2.33/2.65  (step @p56 :rule instantiate :premises (@p54) :args ((@list @t39 @t38)))
% 2.33/2.65  (step @p57 :rule cong :premises (@p56 @p55) :args (@t42))
% 2.33/2.65  (step @p58 :rule eq-symm :args (@t42 @t44))
% 2.33/2.67  (step @p59 :rule refl :args (@t35))
% 2.33/2.67  (step @p60 :rule cong :premises (@p59 @p58) :args ((=> @t35 @t45)))
% 2.33/2.67  (assume-push @p122 @t35)
% 2.33/2.67  (step @p62 :rule instantiate :premises (@p54) :args ((@list @t41 @t40)))
% 2.33/2.67  (step-pop @p123 :rule scope :premises (@p62))
% 2.33/2.67  (step @p63 :rule process_scope :premises (@p123) :args (@t45))
% 2.33/2.67  (step @p65 :rule eq_resolve :premises (@p63 @p60))
% 2.33/2.67  (step @p66 :rule implies_elim :premises (@p65))
% 2.33/2.67  (step @p67 :rule chain_m_resolution :premises (@p66 @p54) :args ((= @t44 @t42) @t36 @t46))
% 2.33/2.67  (step @p68 :rule trans :premises (@p67 @p57))
% 2.33/2.67  (step @p69 :rule refl :args (@t47))
% 2.33/2.67  (step @p70 :rule cong :premises (@p69 @p68) :args (@t48))
% 2.33/2.67  (step @p71 :rule eq-symm :args (@t48 @t50))
% 2.33/2.67  (step @p72 :rule cong :premises (@p59 @p71) :args ((=> @t35 @t51)))
% 2.33/2.67  (assume-push @p124 @t35)
% 2.33/2.67  (step @p74 :rule instantiate :premises (@p54) :args ((@list @t47 @t44)))
% 2.33/2.67  (step-pop @p125 :rule scope :premises (@p74))
% 2.33/2.67  (step @p75 :rule process_scope :premises (@p125) :args (@t51))
% 2.33/2.67  (step @p77 :rule eq_resolve :premises (@p75 @p72))
% 2.33/2.67  (step @p78 :rule implies_elim :premises (@p77))
% 2.33/2.67  (step @p79 :rule chain_m_resolution :premises (@p78 @p54) :args ((= @t50 @t48) @t36 @t46))
% 2.33/2.67  (step @p80 :rule trans :premises (@p79 @p70))
% 2.33/2.67  (step @p81 :rule cong :premises (@p80) :args (@t52))
% 2.33/2.67  (step @p82 :rule aci_norm :args ((= (or (or @t54 @t53) @t2) @t55)))
% 2.33/2.67  (step @p83 :rule refl :args (@t2))
% 2.33/2.67  (step @p84 :rule bool-and-de-morgan :args (@t6 @t5 true))
% 2.33/2.67  (step @p85 :rule nary_cong :premises (@p84 @p83) :args ((or (not @t7) @t2)))
% 2.33/2.67  (step @p86 :rule trans :premises (@p85 @p82))
% 2.33/2.67  (step @p87 :rule bool-impl-elim :args (@t7 @t2))
% 2.33/2.67  (step @p88 :rule trans :premises (@p87 @p86))
% 2.33/2.67  (step @p89 :rule cong :premises (@p88) :args (@t9))
% 2.33/2.67  (step @p90 :rule refl :args (tptp.modus_ponens))
% 2.33/2.67  (step @p91 :rule cong :premises (@p90 @p89) :args (@t10))
% 2.33/2.67  (step @p92 :rule eq_resolve :premises (@p1 @p91))
% 2.33/2.67  (step @p93 :rule equiv_elim1 :premises (@p92))
% 2.33/2.67  (step @p94 :rule reordering :premises (@p93) :args ((or @t56 (not tptp.modus_ponens))))
% 2.33/2.67  (step @p95 :rule chain_m_resolution :premises (@p94 @p35) :args (@t56 @t36 (@list tptp.modus_ponens)))
% 2.33/2.67  (step @p96 :rule instantiate :premises (@p95) :args ((@list @t50 @t57)))
% 2.33/2.67  (step @p97 :rule equiv_elim2 :premises (@p6))
% 2.33/2.67  (step @p98 :rule chain_m_resolution :premises (@p97 @p44) :args ((not @t19) (@list true) (@list tptp.implies_3)))
% 2.33/2.67  (step @p99 :rule skolemize :premises (@p98))
% 2.33/2.67  (step @p100 :rule false_intro :premises (@p99))
% 2.33/2.67  (step @p101 :rule instantiate :premises (@p54) :args ((@list @t41 (tptp.implies @t47 @t40))))
% 2.33/2.67  (step @p102 :rule symm :premises (@p101))
% 2.33/2.67  (step @p103 :rule instantiate :premises (@p54) :args ((@list @t47 @t40)))
% 2.33/2.67  (step @p104 :rule symm :premises (@p103))
% 2.33/2.67  (step @p105 :rule refl :args (@t43))
% 2.33/2.67  (step @p106 :rule cong :premises (@p105 @p104) :args (@t57))
% 2.33/2.67  (step @p107 :rule trans :premises (@p106 @p102))
% 2.33/2.67  (step @p108 :rule cong :premises (@p107) :args (@t58))
% 2.33/2.67  (step @p109 :rule trans :premises (@p108 @p100))
% 2.33/2.67  (step @p110 :rule false_elim :premises (@p109))
% 2.33/2.67  (step @p111 :rule equiv_elim1 :premises (@p25))
% 2.33/2.67  (step @p112 :rule reordering :premises (@p111) :args ((or @t33 (not tptp.r4))))
% 2.33/2.67  (step @p113 :rule chain_m_resolution :premises (@p112 @p39) :args (@t33 @t36 (@list tptp.r4)))
% 2.33/2.67  (step @p114 :rule instantiate :premises (@p113) :args ((@list @t49 @t43 @t40)))
% 2.33/2.67  (step @p115 :rule cnf_or_pos :args (@t62))
% 2.33/2.67  (step @p116 :rule reordering :premises (@p115) :args ((or @t60 @t61 @t58 (not @t62))))
% 2.33/2.67  (step @p117 :rule chain_m_resolution :premises (@p116 @p114 @p110 @p96) :args (@t61 (@list false true false) (@list @t59 @t58 @t62)))
% 2.33/2.67  (step @p118 :rule false_intro :premises (@p117))
% 2.33/2.67  (step @p119 :rule symm :premises (@p118))
% 2.33/2.67  (step @p120 :rule trans :premises (@p119 @p81 @p51))
% 2.33/2.67  (step @p121 false :rule eq_resolve :premises (@p120 @p46))
% 2.33/2.67  )
% 2.33/2.67  % SZS output end Proof
% 2.33/2.67  % cvc5 exiting
%------------------------------------------------------------------------------