↑ Up

cvc5---1.3.4.THM-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : cvc5---1.3.4
% Problem  : SWX222+1 : TPTP v9.3.0. Released v9.3.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 09:07:24 AM UTC 2026

% Result   : Theorem 2.42s 2.69s
% Output   : Proof 0.36s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : SWX222+1 : TPTP v9.3.0. Released v9.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 : 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 23:11:20 EDT 2026
% 0.16/0.35  % CPUTime  : 
% 0.29/0.51  %----Proving TF0_NAR, FOF, or CNF
% 2.42/2.69  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 15...
% 2.42/2.69  % SZS status Theorem
% 2.42/2.69  % SZS output start Proof
% 2.42/2.69  (
% 2.42/2.69  (declare-sort $$unsorted 0)
% 2.42/2.69  (declare-const tptp.proj1Var (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.index (-> $$unsorted $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.proj1Lam (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.lam (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.proj3App (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.proj1App (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.nothing $$unsorted)
% 2.42/2.69  (declare-const tptp.proj1Just (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.cons (-> $$unsorted $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.head (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.suc (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.app (-> $$unsorted $$unsorted $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.tail (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.c $$unsorted)
% 2.42/2.69  (declare-const tptp.nil $$unsorted)
% 2.42/2.69  (declare-const tptp.proj1Arr (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.var (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.b $$unsorted)
% 2.42/2.69  (declare-const tptp.nf (-> $$unsorted Bool))
% 2.42/2.69  (declare-const tptp.zero $$unsorted)
% 2.42/2.69  (declare-const tptp.proj2Arr (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.just (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.a $$unsorted)
% 2.42/2.69  (declare-const tptp.tc (-> $$unsorted $$unsorted $$unsorted Bool))
% 2.42/2.69  (declare-const tptp.proj2App (-> $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.arr (-> $$unsorted $$unsorted $$unsorted))
% 2.42/2.69  (declare-const tptp.proj1Suc (-> $$unsorted $$unsorted))
% 2.42/2.69  (define @t1 () (@var "X" $$unsorted))
% 2.42/2.69  (define @t2 () (@var "X2" $$unsorted))
% 2.42/2.69  (define @t3 () (tptp.cons @t1 @t2))
% 2.42/2.69  (define @t4 () (@list @t1 @t2))
% 2.42/2.69  (define @t5 () (tptp.arr @t1 @t2))
% 2.42/2.69  (define @t6 () (tptp.suc @t1))
% 2.42/2.69  (define @t7 () (@list @t1))
% 2.42/2.69  (define @t8 () (tptp.just @t1))
% 2.42/2.69  (define @t9 () (@var "X3" $$unsorted))
% 2.42/2.69  (define @t10 () (tptp.app @t1 @t2 @t9))
% 2.42/2.69  (define @t11 () (@list @t1 @t2 @t9))
% 2.42/2.69  (define @t12 () (tptp.lam @t1))
% 2.42/2.69  (define @t13 () (@var "X4" $$unsorted))
% 2.42/2.69  (define @t14 () (@list @t1 @t2 @t9 @t13))
% 2.42/2.69  (define @t15 () (tptp.var @t13))
% 2.42/2.69  (define @t16 () (@var "Z" $$unsorted))
% 2.42/2.69  (define @t17 () (@var "Y" $$unsorted))
% 2.42/2.69  (define @t18 () (@var "E" $$unsorted))
% 2.42/2.69  (define @t19 () (tptp.nf @t18))
% 2.42/2.69  (define @t20 () (tptp.lam @t18))
% 2.42/2.69  (define @t21 () (@list @t18))
% 2.42/2.69  (define @t22 () (forall @t21 (= (tptp.nf @t20) @t19)))
% 2.42/2.69  (define @t23 () (@var "Xs" $$unsorted))
% 2.42/2.69  (define @t24 () (tptp.cons @t16 @t23))
% 2.42/2.69  (define @t25 () (@var "N" $$unsorted))
% 2.42/2.69  (define @t26 () (@var "Tx" $$unsorted))
% 2.42/2.69  (define @t27 () (@var "F" $$unsorted))
% 2.42/2.69  (define @t28 () (@var "T1" $$unsorted))
% 2.42/2.69  (define @t29 () (@var "Tx2" $$unsorted))
% 2.42/2.69  (define @t30 () (tptp.tc @t1 (tptp.var @t9) @t16))
% 2.42/2.69  (define @t31 () (tptp.index @t1 @t9))
% 2.42/2.69  (define @t32 () (@var "Tx3" $$unsorted))
% 2.42/2.69  (define @t33 () (= @t30 (= @t32 @t16)))
% 2.42/2.69  (define @t34 () (= @t31 (tptp.just @t32)))
% 2.42/2.69  (define @t35 () (=> @t34 @t33))
% 2.42/2.69  (define @t36 () (@list @t1 @t16 @t9 @t32))
% 2.42/2.69  (define @t37 () (forall @t36 @t35))
% 2.42/2.69  (define @t38 () (tptp.arr tptp.b tptp.b))
% 2.42/2.69  (define @t39 () (tptp.arr tptp.a @t38))
% 2.42/2.69  (define @t40 () (tptp.tc tptp.nil @t18 @t39))
% 2.42/2.69  (define @t41 () (and @t19 @t40))
% 2.42/2.69  (define @t42 () (exists @t21 @t41))
% 2.42/2.69  (define @t43 () (not @t42))
% 2.42/2.69  (define @t44 () (= @t30 (= @t16 @t32)))
% 2.42/2.69  (define @t45 () (tptp.var tptp.zero))
% 2.42/2.69  (define @t46 () (tptp.cons tptp.a tptp.nil))
% 2.42/2.69  (define @t47 () (tptp.lam @t45))
% 2.42/2.69  (define @t48 () (forall @t21 (not @t41)))
% 2.42/2.69  (define @t49 () (not @t48))
% 2.42/2.69  (define @t50 () (tptp.lam @t47))
% 2.42/2.69  (define @t51 () (tptp.nf @t50))
% 2.42/2.69  (define @t52 () (tptp.nf @t47))
% 2.42/2.69  (define @t53 () (= @t51 @t52))
% 2.42/2.69  (define @t54 () (= @t52 @t51))
% 2.42/2.69  (define @t55 () (@list false))
% 2.42/2.69  (define @t56 () (@list @t22))
% 2.42/2.69  (define @t57 () (tptp.nf @t45))
% 2.42/2.69  (define @t58 () (= @t52 @t57))
% 2.42/2.69  (define @t59 () (= @t57 @t52))
% 2.42/2.69  (define @t60 () (@list false false))
% 2.42/2.69  (define @t61 () (tptp.tc tptp.nil @t50 @t39))
% 2.42/2.69  (define @t62 () (not @t61))
% 2.42/2.69  (define @t63 () (not @t51))
% 2.42/2.69  (define @t64 () (or @t63 @t62))
% 2.42/2.69  (define @t65 () (tptp.tc @t46 @t47 @t38))
% 2.42/2.69  (define @t66 () (= @t61 @t65))
% 2.42/2.69  (define @t67 () (not @t65))
% 2.42/2.69  (define @t68 () (@list true false))
% 2.42/2.69  (define @t69 () (tptp.cons tptp.b @t46))
% 2.42/2.69  (define @t70 () (tptp.tc @t69 @t45 tptp.b))
% 2.42/2.69  (define @t71 () (= @t65 @t70))
% 2.42/2.69  (define @t72 () (not @t70))
% 2.42/2.69  (define @t73 () (= (tptp.index @t69 tptp.zero) (tptp.just tptp.b)))
% 2.42/2.69  (define @t74 () (not @t73))
% 2.42/2.69  (define @t75 () (or @t74 @t70))
% 2.42/2.69  (define @t76 () (not @t75))
% 2.42/2.69  (define @t77 () (= tptp.b tptp.b))
% 2.42/2.69  (define @t78 () (or @t74 (= @t70 @t77)))
% 2.42/2.69  (define @t79 () (forall @t36 (or (not @t34) @t44)))
% 2.42/2.69  (assume @p1 (forall @t4 (= (tptp.head @t3) @t1)))
% 2.42/2.69  (assume @p2 (forall @t4 (= (tptp.tail @t3) @t2)))
% 2.42/2.69  (assume @p3 (forall @t4 (not (= tptp.nil @t3))))
% 2.42/2.69  (assume @p4 (forall @t4 (= (tptp.proj1Arr @t5) @t1)))
% 2.42/2.69  (assume @p5 (forall @t4 (= (tptp.proj2Arr @t5) @t2)))
% 2.42/2.69  (assume @p6 (forall @t4 (not (= @t5 tptp.a))))
% 2.42/2.69  (assume @p7 (forall @t4 (not (= @t5 tptp.b))))
% 2.42/2.69  (assume @p8 (forall @t4 (not (= @t5 tptp.c))))
% 2.42/2.69  (assume @p9 (not (= tptp.a tptp.b)))
% 2.42/2.69  (assume @p10 (not (= tptp.a tptp.c)))
% 2.42/2.69  (assume @p11 (not (= tptp.b tptp.c)))
% 2.42/2.69  (assume @p12 (forall @t7 (= (tptp.proj1Suc @t6) @t1)))
% 2.42/2.69  (assume @p13 (forall @t7 (not (= tptp.zero @t6))))
% 2.42/2.69  (assume @p14 (forall @t7 (= (tptp.proj1Just @t8) @t1)))
% 2.42/2.69  (assume @p15 (forall @t7 (not (= tptp.nothing @t8))))
% 2.42/2.69  (assume @p16 (forall @t11 (= (tptp.proj1App @t10) @t1)))
% 2.42/2.69  (assume @p17 (forall @t11 (= (tptp.proj2App @t10) @t2)))
% 2.42/2.69  (assume @p18 (forall @t11 (= (tptp.proj3App @t10) @t9)))
% 2.42/2.69  (assume @p19 (forall @t7 (= (tptp.proj1Lam @t12) @t1)))
% 2.42/2.69  (assume @p20 (forall @t7 (= (tptp.proj1Var (tptp.var @t1)) @t1)))
% 2.42/2.69  (assume @p21 (forall @t14 (not (= @t10 (tptp.lam @t13)))))
% 2.42/2.69  (assume @p22 (forall @t14 (not (= @t10 @t15))))
% 2.42/2.69  (assume @p23 (forall @t4 (not (= @t12 (tptp.var @t2)))))
% 2.42/2.69  (assume @p24 (forall (@list @t17 @t16 @t2) (=> (not (= @t17 (tptp.lam (tptp.proj1Lam @t17)))) (= (tptp.nf (tptp.app @t17 @t16 @t2)) (and (tptp.nf @t17) (tptp.nf @t16))))))
% 2.42/2.69  (assume @p25 (forall (@list @t16 @t2 @t9) (not (tptp.nf (tptp.app (tptp.lam @t9) @t16 @t2)))))
% 2.42/2.69  (assume @p26 @t22)
% 2.42/2.69  (assume @p27 (forall (@list @t13) (tptp.nf @t15)))
% 2.42/2.69  (assume @p28 (forall (@list @t17) (= (tptp.index tptp.nil @t17) tptp.nothing)))
% 2.42/2.69  (assume @p29 (forall (@list @t16 @t23) (= (tptp.index @t24 tptp.zero) (tptp.just @t16))))
% 2.42/2.69  (assume @p30 (forall (@list @t16 @t23 @t25) (= (tptp.index @t24 (tptp.suc @t25)) (tptp.index @t23 @t25))))
% 2.42/2.69  (assume @p31 (forall (@list @t1 @t16 @t27 @t2 @t26) (= (tptp.tc @t1 (tptp.app @t27 @t2 @t26) @t16) (and (tptp.tc @t1 @t27 (tptp.arr @t26 @t16)) (tptp.tc @t1 @t2 @t26)))))
% 2.42/2.69  (assume @p32 (forall (@list @t1 @t16 @t18) (=> (not (= @t16 (tptp.arr (tptp.proj1Arr @t16) (tptp.proj2Arr @t16)))) (not (tptp.tc @t1 @t20 @t16)))))
% 2.42/2.69  (assume @p33 (forall (@list @t1 @t18 @t29 @t28) (= (tptp.tc @t1 @t20 (tptp.arr @t29 @t28)) (tptp.tc (tptp.cons @t29 @t1) @t18 @t28))))
% 2.42/2.69  (assume @p34 (forall (@list @t1 @t16 @t9) (=> (= @t31 tptp.nothing) (not @t30))))
% 2.42/2.69  (assume @p35 @t37)
% 2.42/2.69  (assume @p36 @t43)
% 2.42/2.69  (assume @p37 true)
% 2.42/2.69  (step @p38 :rule bool-impl-elim :args (@t34 @t44))
% 2.42/2.69  (step @p39 :rule cong :premises (@p38) :args ((forall @t36 (=> @t34 @t44))))
% 2.42/2.69  (step @p40 :rule eq-symm :args (@t32 @t16))
% 2.42/2.69  (step @p41 :rule refl :args (@t30))
% 2.42/2.69  (step @p42 :rule cong :premises (@p41 @p40) :args (@t33))
% 2.42/2.69  (step @p43 :rule refl :args (@t34))
% 2.42/2.69  (step @p44 :rule cong :premises (@p43 @p42) :args (@t35))
% 2.42/2.69  (step @p45 :rule cong :premises (@p44) :args (@t37))
% 2.42/2.69  (step @p46 :rule trans :premises (@p45 @p39))
% 2.42/2.69  (step @p47 :rule eq_resolve :premises (@p35 @p46))
% 2.42/2.69  (step @p48 :rule instantiate :premises (@p33) :args ((@list @t46 @t45 tptp.b tptp.b)))
% 2.42/2.69  (step @p49 :rule instantiate :premises (@p33) :args ((@list tptp.nil @t47 tptp.a @t38)))
% 2.42/2.69  (step @p50 :rule bool-double-not-elim :args ((forall @t21 (or (not @t19) (not @t40)))))
% 2.42/2.69  (step @p51 :rule bool-and-de-morgan :args (@t19 @t40 true))
% 2.42/2.69  (step @p52 :rule cong :premises (@p51) :args (@t48))
% 2.42/2.69  (step @p53 :rule cong :premises (@p52) :args (@t49))
% 2.42/2.69  (step @p54 :rule exists-elim :args ((= @t42 @t49)))
% 2.42/2.69  (step @p55 :rule trans :premises (@p54 @p53))
% 2.42/2.69  (step @p56 :rule cong :premises (@p55) :args (@t43))
% 2.42/2.69  (step @p57 :rule trans :premises (@p56 @p50))
% 2.42/2.69  (step @p58 :rule eq_resolve :premises (@p36 @p57))
% 2.42/2.69  (step @p59 :rule instantiate :premises (@p58) :args ((@list @t50)))
% 2.42/2.69  (step @p60 :rule eq-symm :args (@t51 @t52))
% 2.42/2.70  (step @p61 :rule refl :args (@t22))
% 2.42/2.70  (step @p62 :rule cong :premises (@p61 @p60) :args ((=> @t22 @t53)))
% 2.42/2.70  (assume-push @p119 @t22)
% 2.42/2.70  (step @p64 :rule instantiate :premises (@p26) :args ((@list @t47)))
% 2.42/2.70  (step-pop @p120 :rule scope :premises (@p64))
% 2.42/2.70  (step @p65 :rule process_scope :premises (@p120) :args (@t53))
% 2.42/2.70  (step @p67 :rule eq_resolve :premises (@p65 @p62))
% 2.42/2.70  (step @p68 :rule implies_elim :premises (@p67))
% 2.42/2.70  (step @p69 :rule chain_m_resolution :premises (@p68 @p26) :args (@t54 @t55 @t56))
% 2.42/2.70  (step @p70 :rule eq-symm :args (@t52 @t57))
% 2.42/2.70  (step @p71 :rule cong :premises (@p61 @p70) :args ((=> @t22 @t58)))
% 2.42/2.70  (assume-push @p121 @t22)
% 2.42/2.70  (step @p73 :rule instantiate :premises (@p26) :args ((@list @t45)))
% 2.42/2.70  (step-pop @p122 :rule scope :premises (@p73))
% 2.42/2.70  (step @p74 :rule process_scope :premises (@p122) :args (@t58))
% 2.42/2.70  (step @p76 :rule eq_resolve :premises (@p74 @p71))
% 2.42/2.70  (step @p77 :rule implies_elim :premises (@p76))
% 2.42/2.70  (step @p78 :rule chain_m_resolution :premises (@p77 @p26) :args (@t59 @t55 @t56))
% 2.42/2.70  (step @p79 :rule instantiate :premises (@p27) :args ((@list tptp.zero)))
% 2.42/2.70  (step @p80 :rule cnf_equiv_pos1 :args (@t59))
% 2.42/2.70  (step @p81 :rule reordering :premises (@p80) :args ((or (not @t57) @t52 (not @t59))))
% 2.42/2.70  (step @p82 :rule chain_m_resolution :premises (@p81 @p79 @p78) :args (@t52 @t60 (@list @t57 @t59)))
% 2.42/2.70  (step @p83 :rule cnf_equiv_pos1 :args (@t54))
% 2.42/2.70  (step @p84 :rule reordering :premises (@p83) :args ((or (not @t52) @t51 (not @t54))))
% 2.42/2.70  (step @p85 :rule chain_m_resolution :premises (@p84 @p82 @p69) :args (@t51 @t60 (@list @t52 @t54)))
% 2.42/2.70  (step @p86 :rule cnf_or_pos :args (@t64))
% 2.42/2.70  (step @p87 :rule reordering :premises (@p86) :args ((or @t63 @t62 (not @t64))))
% 2.42/2.70  (step @p88 :rule chain_m_resolution :premises (@p87 @p85 @p59) :args (@t62 @t60 (@list @t51 @t64)))
% 2.42/2.70  (step @p89 :rule cnf_equiv_pos2 :args (@t66))
% 2.42/2.70  (step @p90 :rule reordering :premises (@p89) :args ((or @t61 @t67 (not @t66))))
% 2.42/2.70  (step @p91 :rule chain_m_resolution :premises (@p90 @p88 @p49) :args (@t67 @t68 (@list @t61 @t66)))
% 2.42/2.70  (step @p92 :rule cnf_equiv_pos2 :args (@t71))
% 2.42/2.70  (step @p93 :rule reordering :premises (@p92) :args ((or @t65 @t72 (not @t71))))
% 2.42/2.70  (step @p94 :rule chain_m_resolution :premises (@p93 @p91 @p48) :args (@t72 @t68 (@list @t65 @t71)))
% 2.42/2.70  (step @p95 :rule instantiate :premises (@p29) :args ((@list tptp.b @t46)))
% 2.42/2.70  (step @p96 :rule cnf_or_pos :args (@t75))
% 2.42/2.70  (step @p97 :rule reordering :premises (@p96) :args ((or @t74 @t70 @t76)))
% 2.42/2.70  (step @p98 :rule chain_m_resolution :premises (@p97 @p95 @p94) :args (@t76 (@list false true) (@list @t73 @t70)))
% 2.42/2.70  (step @p99 :rule bool-eq-true :args (@t70))
% 2.42/2.70  (step @p100 :rule eq-symm :args (true @t70))
% 2.42/2.70  (step @p101 :rule trans :premises (@p100 @p99))
% 2.42/2.70  (step @p102 :rule refl :args (@t70))
% 2.42/2.70  (step @p103 :rule eq-refl :args (tptp.b))
% 2.42/2.70  (step @p104 :rule cong :premises (@p103 @p102) :args ((= @t77 @t70)))
% 2.42/2.70  (step @p105 :rule trans :premises (@p104 @p101))
% 2.42/2.70  (step @p106 :rule eq-symm :args (@t70 @t77))
% 2.42/2.70  (step @p107 :rule trans :premises (@p106 @p105))
% 2.42/2.70  (step @p108 :rule refl :args (@t74))
% 2.42/2.70  (step @p109 :rule nary_cong :premises (@p108 @p107) :args (@t78))
% 2.42/2.70  (step @p110 :rule refl :args (@t79))
% 0.36/2.70  (step @p111 :rule cong :premises (@p110 @p109) :args ((=> @t79 @t78)))
% 0.36/2.70  (assume-push @p123 @t79)
% 0.36/2.70  (step @p113 :rule instantiate :premises (@p47) :args ((@list @t69 tptp.b tptp.zero tptp.b)))
% 0.36/2.70  (step-pop @p124 :rule scope :premises (@p113))
% 0.36/2.70  (step @p114 :rule process_scope :premises (@p124) :args (@t78))
% 0.36/2.70  (step @p116 :rule eq_resolve :premises (@p114 @p111))
% 0.36/2.70  (step @p117 :rule implies_elim :premises (@p116))
% 0.36/2.70  (step @p118 false :rule chain_m_resolution :premises (@p117 @p98 @p47) :args (false @t68 (@list @t75 @t79)))
% 0.36/2.70  )
% 0.36/2.70  % SZS output end Proof
% 0.36/2.70  % cvc5 exiting
%------------------------------------------------------------------------------