↑ Up

cvc5---1.3.4.THM-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : cvc5---1.3.4
% Problem  : DAT088_1 : TPTP v9.2.1. Released v6.1.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM

% Computer : n024.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:14:29 AM UTC 2026

% Result   : Theorem 0.15s 0.37s
% Output   : Proof 0.15s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.06  % Problem  : DAT088_1 : TPTP v9.2.1. Released v6.1.0.
% 0.00/0.07  % Command  : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM
% 0.07/0.25  % Computer : n024.cluster.edu
% 0.07/0.25  % Model    : x86_64 x86_64
% 0.07/0.25  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.07/0.25  % Memory   : 8042.1875MB
% 0.07/0.25  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.07/0.25  % CPULimit : 300
% 0.07/0.25  % WCLimit  : 300
% 0.07/0.25  % DateTime : Mon Jun  1 17:28:00 EDT 2026
% 0.07/0.25  % CPUTime  : 
% 0.15/0.33  %----Proving TF0_ARI
% 0.15/0.37  --- Run --finite-model-find --decision=internal at 45...
% 0.15/0.37  % SZS status Theorem
% 0.15/0.37  % SZS output start Proof
% 0.15/0.37  (
% 0.15/0.37  (declare-sort tptp.list 0)
% 0.15/0.37  (declare-const tptp.count (-> Int tptp.list Int))
% 0.15/0.37  (declare-const tptp.length (-> tptp.list Int))
% 0.15/0.37  (declare-const tptp.inRange (-> Int tptp.list Bool))
% 0.15/0.37  (declare-const tptp.in (-> Int tptp.list Bool))
% 0.15/0.37  (declare-const tptp.nil tptp.list)
% 0.15/0.37  (declare-const tptp.append (-> tptp.list tptp.list tptp.list))
% 0.15/0.37  (declare-const tptp.tail (-> tptp.list tptp.list))
% 0.15/0.37  (declare-const tptp.head (-> tptp.list Int))
% 0.15/0.37  (declare-const tptp.cons (-> Int tptp.list tptp.list))
% 0.15/0.37  (define @t1 () (@var "K" Int))
% 0.15/0.37  (define @t2 () (@var "L" tptp.list))
% 0.15/0.37  (define @t3 () (tptp.cons @t1 @t2))
% 0.15/0.37  (define @t4 () (@list @t1 @t2))
% 0.15/0.37  (define @t5 () (tptp.tail @t3))
% 0.15/0.37  (define @t6 () (forall @t4 (= @t5 @t2)))
% 0.15/0.37  (define @t7 () (tptp.tail @t2))
% 0.15/0.37  (define @t8 () (= @t2 tptp.nil))
% 0.15/0.37  (define @t9 () (@list @t2))
% 0.15/0.37  (define @t10 () (not (= @t3 tptp.nil)))
% 0.15/0.37  (define @t11 () (forall @t4 @t10))
% 0.15/0.37  (define @t12 () (@var "T" tptp.list))
% 0.15/0.37  (define @t13 () (@var "X" Int))
% 0.15/0.37  (define @t14 () (@var "H" Int))
% 0.15/0.37  (define @t15 () (tptp.cons @t14 @t12))
% 0.15/0.37  (define @t16 () (= @t2 @t15))
% 0.15/0.37  (define @t17 () (@list @t14 @t12))
% 0.15/0.37  (define @t18 () (@var "N" Int))
% 0.15/0.37  (define @t19 () (@list @t18 @t2))
% 0.15/0.37  (define @t20 () (@list @t1))
% 0.15/0.37  (define @t21 () (tptp.count @t1 @t12))
% 0.15/0.37  (define @t22 () (tptp.count @t1 @t15))
% 0.15/0.37  (define @t23 () (= @t1 @t14))
% 0.15/0.37  (define @t24 () (not @t23))
% 0.15/0.37  (define @t25 () (@list @t1 @t14 @t12 @t18))
% 0.15/0.37  (define @t26 () (+ @t21 1))
% 0.15/0.37  (define @t27 () (= @t22 @t26))
% 0.15/0.37  (define @t28 () (=> @t23 @t27))
% 0.15/0.37  (define @t29 () (forall @t25 @t28))
% 0.15/0.37  (define @t30 () (@var "K" tptp.list))
% 0.15/0.37  (define @t31 () (@var "I" Int))
% 0.15/0.37  (define @t32 () (tptp.count @t18 @t2))
% 0.15/0.37  (define @t33 () (= @t32 (tptp.count @t18 @t7)))
% 0.15/0.37  (define @t34 () (not @t8))
% 0.15/0.37  (define @t35 () (=> @t34 @t33))
% 0.15/0.37  (define @t36 () (forall @t19 @t35))
% 0.15/0.37  (define @t37 () (@list 0 tptp.nil))
% 0.15/0.37  (define @t38 () (= (tptp.count @t14 @t15) (+ 1 (tptp.count @t14 @t12))))
% 0.15/0.37  (define @t39 () (not (= @t14 @t14)))
% 0.15/0.37  (define @t40 () (or @t39 @t38))
% 0.15/0.37  (define @t41 () (+ 1 @t21))
% 0.15/0.37  (define @t42 () (= @t22 @t41))
% 0.15/0.37  (define @t43 () (or @t24 @t24 @t42))
% 0.15/0.37  (define @t44 () (or @t24 @t42))
% 0.15/0.37  (define @t45 () (forall @t20 @t44))
% 0.15/0.37  (define @t46 () (forall @t17 @t45))
% 0.15/0.37  (define @t47 () (forall (@list @t14 @t12 @t1) @t44))
% 0.15/0.37  (define @t48 () (forall (@list @t1 @t14 @t12) @t44))
% 0.15/0.37  (define @t49 () (tptp.cons 0 tptp.nil))
% 0.15/0.37  (define @t50 () (tptp.count 0 @t49))
% 0.15/0.37  (define @t51 () (+ -1 @t50))
% 0.15/0.37  (define @t52 () (tptp.count 0 tptp.nil))
% 0.15/0.37  (define @t53 () (- @t52 @t51))
% 0.15/0.37  (define @t54 () (+ 1 @t52))
% 0.15/0.37  (define @t55 () (= @t52 @t51))
% 0.15/0.37  (define @t56 () (= @t50 @t54))
% 0.15/0.37  (define @t57 () (forall @t17 @t38))
% 0.15/0.37  (define @t58 () (= tptp.nil @t2))
% 0.15/0.37  (define @t59 () (not @t58))
% 0.15/0.37  (define @t60 () (tptp.tail @t49))
% 0.15/0.37  (define @t61 () (tptp.count 0 @t60))
% 0.15/0.37  (define @t62 () (= @t50 @t61))
% 0.15/0.37  (define @t63 () (= tptp.nil @t49))
% 0.15/0.37  (define @t64 () (or @t63 @t62))
% 0.15/0.37  (define @t65 () (= @t52 @t61))
% 0.15/0.37  (define @t66 () (= @t52 @t50))
% 0.15/0.37  (define @t67 () (not @t66))
% 0.15/0.37  (define @t68 () (= tptp.nil @t60))
% 0.15/0.37  (define @t69 () (* -1 @t50))
% 0.15/0.37  (define @t70 () (+ -1 @t69))
% 0.15/0.37  (define @t71 () (- @t70 @t69))
% 0.15/0.37  (define @t72 () (+ @t69 -1))
% 0.15/0.37  (define @t73 () (* -1 @t52))
% 0.15/0.37  (define @t74 () (+ @t73 @t69 @t52))
% 0.15/0.37  (define @t75 () (+ @t52 @t69))
% 0.15/0.37  (define @t76 () (+ @t73 @t75))
% 0.15/0.37  (define @t77 () (and @t55 @t65 @t62 @t67))
% 0.15/0.37  (assume @p1 (forall @t4 (= (tptp.head @t3) @t1)))
% 0.15/0.37  (assume @p2 @t6)
% 0.15/0.37  (assume @p3 (forall @t9 (or @t8 (= @t2 (tptp.cons (tptp.head @t2) @t7)))))
% 0.15/0.37  (assume @p4 @t11)
% 0.15/0.37  (assume @p5 (forall (@list @t13 @t2) (= (tptp.in @t13 @t2) (or (exists @t17 (and @t16 (= @t13 @t14))) (exists @t17 (and @t16 (tptp.in @t13 @t12)))))))
% 0.15/0.37  (assume @p6 (forall @t19 (= (tptp.inRange @t18 @t2) (or @t8 (exists (@list @t1 @t12) (and (= @t2 (tptp.cons @t1 @t12)) (<= 0 @t1) (< @t1 @t18) (tptp.inRange @t18 @t12)))))))
% 0.15/0.37  (assume @p7 (= (tptp.length tptp.nil) 0))
% 0.15/0.37  (assume @p8 (forall @t17 (= (tptp.length @t15) (+ 1 (tptp.length @t12)))))
% 0.15/0.37  (assume @p9 (forall @t20 (= (tptp.count @t1 tptp.nil) 0)))
% 0.15/0.37  (assume @p10 (forall @t25 (=> @t24 (= @t22 @t21))))
% 0.15/0.37  (assume @p11 @t29)
% 0.15/0.37  (assume @p12 (forall @t9 (= (tptp.append tptp.nil @t2) @t2)))
% 0.15/0.37  (assume @p13 (forall (@list @t31 @t30 @t2) (= (tptp.append (tptp.cons @t31 @t30) @t2) (tptp.cons @t31 (tptp.append @t30 @t2)))))
% 0.15/0.37  (assume @p14 (forall @t19 (= (tptp.in @t18 @t2) (> @t32 0))))
% 0.15/0.37  (assume @p15 (not (not @t36)))
% 0.15/0.37  (assume @p16 true)
% 0.15/0.37  (step @p17 :rule eq-symm :args (@t5 @t2))
% 0.15/0.37  (step @p18 :rule cong :premises (@p17) :args (@t6))
% 0.15/0.37  (step @p19 :rule eq_resolve :premises (@p2 @p18))
% 0.15/0.37  (step @p20 :rule instantiate :premises (@p19) :args (@t37))
% 0.15/0.37  (step @p21 :rule aci_norm :args ((= (or false @t38) @t38)))
% 0.15/0.37  (step @p22 :rule refl :args (@t38))
% 0.15/0.37  (step @p23 :rule evaluate :args ((not true)))
% 0.15/0.37  (step @p24 :rule eq-refl :args (@t14))
% 0.15/0.37  (step @p25 :rule cong :premises (@p24) :args (@t39))
% 0.15/0.37  (step @p26 :rule trans :premises (@p25 @p23))
% 0.15/0.37  (step @p27 :rule nary_cong :premises (@p26 @p22) :args (@t40))
% 0.15/0.37  (step @p28 :rule trans :premises (@p27 @p21))
% 0.15/0.37  (step @p29 :rule cong :premises (@p28) :args ((forall @t17 @t40)))
% 0.15/0.37  (step @p30 :rule quant-var-elim-eq :args ((= (forall @t20 @t43) @t40)))
% 0.15/0.37  (step @p31 :rule aci_norm :args ((= @t44 @t43)))
% 0.15/0.37  (step @p32 :rule cong :premises (@p31) :args (@t45))
% 0.15/0.37  (step @p33 :rule trans :premises (@p32 @p30))
% 0.15/0.37  (step @p34 :rule cong :premises (@p33) :args (@t46))
% 0.15/0.37  (step @p35 :rule quant-merge-prenex :args ((= @t46 @t47)))
% 0.15/0.37  (step @p36 :rule symm :premises (@p35))
% 0.15/0.37  (step @p37 :rule quant_var_reordering :args ((= @t48 @t47)))
% 0.15/0.37  (step @p38 :rule trans :premises (@p37 @p36 @p34))
% 0.15/0.37  (step @p39 :rule trans :premises (@p38 @p29))
% 0.15/0.37  (step @p40 :rule quant-unused-vars :args ((= (forall @t25 @t44) @t48)))
% 0.15/0.37  (step @p41 :rule trans :premises (@p40 @p39))
% 0.15/0.37  (step @p42 :rule bool-impl-elim :args (@t23 @t42))
% 0.15/0.37  (step @p43 :rule cong :premises (@p42) :args ((forall @t25 (=> @t23 @t42))))
% 0.15/0.37  (step @p44 :rule trans :premises (@p43 @p41))
% 0.15/0.37  (step @p45 :rule arith_poly_norm :args ((= @t26 @t41)))
% 0.15/0.37  (step @p46 :rule refl :args (@t22))
% 0.15/0.37  (step @p47 :rule cong :premises (@p46 @p45) :args (@t27))
% 0.15/0.37  (step @p48 :rule refl :args (@t23))
% 0.15/0.37  (step @p49 :rule cong :premises (@p48 @p47) :args (@t28))
% 0.15/0.37  (step @p50 :rule cong :premises (@p49) :args (@t29))
% 0.15/0.37  (step @p51 :rule trans :premises (@p50 @p44))
% 0.15/0.37  (step @p52 :rule eq_resolve :premises (@p11 @p51))
% 0.15/0.37  (step @p53 :rule arith_poly_norm :args ((= (* 1 (- @t50 @t54)) (* -1 @t53))))
% 0.15/0.37  (step @p54 :rule arith_poly_norm_rel :premises (@p53) :args ((= @t56 @t55)))
% 0.15/0.37  (step @p55 :rule refl :args (@t57))
% 0.15/0.37  (step @p56 :rule cong :premises (@p55 @p54) :args ((=> @t57 @t56)))
% 0.15/0.37  (assume-push @p156 @t57)
% 0.15/0.37  (step @p58 :rule instantiate :premises (@p52) :args (@t37))
% 0.15/0.37  (step-pop @p157 :rule scope :premises (@p58))
% 0.15/0.37  (step @p59 :rule process_scope :premises (@p157) :args (@t56))
% 0.15/0.37  (step @p61 :rule eq_resolve :premises (@p59 @p56))
% 0.15/0.37  (step @p62 :rule implies_elim :premises (@p61))
% 0.15/0.37  (step @p63 :rule chain_m_resolution :premises (@p62 @p52) :args (@t55 (@list false) (@list @t57)))
% 0.15/0.37  (step @p64 :rule refl :args (@t33))
% 0.15/0.37  (step @p65 :rule bool-double-not-elim :args (@t58))
% 0.15/0.37  (step @p66 :rule nary_cong :premises (@p65 @p64) :args ((or (not @t59) @t33)))
% 0.15/0.37  (step @p67 :rule bool-impl-elim :args (@t59 @t33))
% 0.15/0.37  (step @p68 :rule trans :premises (@p67 @p66))
% 0.15/0.37  (step @p69 :rule cong :premises (@p68) :args ((forall @t19 (=> @t59 @t33))))
% 0.15/0.37  (step @p70 :rule refl :args (@t33))
% 0.15/0.37  (step @p71 :rule eq-symm :args (@t2 tptp.nil))
% 0.15/0.37  (step @p72 :rule cong :premises (@p71) :args (@t34))
% 0.15/0.37  (step @p73 :rule cong :premises (@p72 @p70) :args (@t35))
% 0.15/0.37  (step @p74 :rule cong :premises (@p73) :args (@t36))
% 0.15/0.37  (step @p75 :rule trans :premises (@p74 @p69))
% 0.15/0.37  (step @p76 :rule bool-double-not-elim :args (@t36))
% 0.15/0.37  (step @p77 :rule trans :premises (@p76 @p75))
% 0.15/0.37  (step @p78 :rule eq_resolve :premises (@p15 @p77))
% 0.15/0.37  (step @p79 :rule instantiate :premises (@p78) :args ((@list 0 @t49)))
% 0.15/0.37  (step @p80 :rule eq-symm :args (@t3 tptp.nil))
% 0.15/0.37  (step @p81 :rule cong :premises (@p80) :args (@t10))
% 0.15/0.37  (step @p82 :rule cong :premises (@p81) :args (@t11))
% 0.15/0.37  (step @p83 :rule eq_resolve :premises (@p4 @p82))
% 0.15/0.37  (step @p84 :rule instantiate :premises (@p83) :args (@t37))
% 0.15/0.37  (step @p85 :rule cnf_or_pos :args (@t64))
% 0.15/0.37  (step @p86 :rule reordering :premises (@p85) :args ((or @t63 @t62 (not @t64))))
% 0.15/0.37  (step @p87 :rule chain_m_resolution :premises (@p86 @p84 @p79) :args (@t62 (@list true false) (@list @t63 @t64)))
% 0.15/0.37  (assume-push @p158 @t55)
% 0.15/0.37  (assume-push @p159 @t65)
% 0.15/0.37  (assume-push @p160 @t62)
% 0.15/0.37  (assume-push @p161 @t67)
% 0.15/0.37  (step @p92 :rule evaluate :args ((= false true)))
% 0.15/0.37  (step @p93 :rule instantiate :premises (@p19) :args (@t37))
% 0.15/0.37  (step @p94 :rule refl :args (0))
% 0.15/0.37  (step @p95 :rule cong :premises (@p94 @p93) :args (@t52))
% 0.15/0.37  (step @p96 :rule symm :premises (@p95))
% 0.15/0.37  (step @p97 :rule trans :premises (@p87 @p96 @p63))
% 0.15/0.37  (step @p98 :rule symm :premises (@p97))
% 0.15/0.37  (step @p99 :rule trans :premises (@p63 @p98))
% 0.15/0.37  (step @p100 :rule true_intro :premises (@p99))
% 0.15/0.37  (step @p101 :rule false_intro :premises (@p161))
% 0.15/0.37  (step @p102 :rule symm :premises (@p101))
% 0.15/0.37  (step @p103 :rule trans :premises (@p102 @p100))
% 0.15/0.37  (step @p104 false :rule eq_resolve :premises (@p103 @p92))
% 0.15/0.37  (step-pop @p162 :rule scope :premises (@p104))
% 0.15/0.37  (step-pop @p163 :rule scope :premises (@p162))
% 0.15/0.37  (step-pop @p164 :rule scope :premises (@p163))
% 0.15/0.37  (step-pop @p165 :rule scope :premises (@p164))
% 0.15/0.37  (step @p105 :rule process_scope :premises (@p165) :args (false))
% 0.15/0.37  (assume-push @p166 @t68)
% 0.15/0.37  (assume-push @p167 @t55)
% 0.15/0.37  (assume-push @p168 @t62)
% 0.15/0.37  (assume-push @p169 @t55)
% 0.15/0.37  (assume-push @p170 @t66)
% 0.15/0.37  (step @p115 :rule evaluate :args ((>= -1 0)))
% 0.15/0.37  (step @p116 :rule refl :args (0))
% 0.15/0.37  (step @p117 :rule arith_poly_norm :args ((= @t71 -1)))
% 0.15/0.37  (step @p118 :rule cong :premises (@p117 @p116) :args ((>= @t71 0)))
% 0.15/0.37  (step @p119 :rule trans :premises (@p118 @p115))
% 0.15/0.37  (step @p120 :rule arith-geq-norm1-int :args (@t70 @t69))
% 0.15/0.37  (step @p121 :rule trans :premises (@p120 @p119))
% 0.15/0.37  (step @p122 :rule arith-elim-leq :args (@t69 @t70))
% 0.15/0.37  (step @p123 :rule trans :premises (@p122 @p121))
% 0.15/0.37  (step @p124 :rule arith_poly_norm :args ((= @t72 @t70)))
% 0.15/0.37  (step @p125 :rule arith_poly_norm :args ((= @t74 @t69)))
% 0.15/0.37  (step @p126 :rule arith_poly_norm :args ((= @t76 @t74)))
% 0.15/0.37  (step @p127 :rule trans :premises (@p126 @p125))
% 0.15/0.37  (step @p128 :rule cong :premises (@p127 @p124) :args ((<= @t76 @t72)))
% 0.15/0.37  (step @p129 :rule trans :premises (@p128 @p123))
% 0.15/0.37  (step @p130 :rule arith_poly_norm :args ((= (* 1 (- @t75 -1)) (* 1 @t53))))
% 0.15/0.37  (step @p131 :rule arith_poly_norm_rel :premises (@p130) :args ((= (= @t75 -1) @t55)))
% 0.15/0.37  (step @p132 :rule symm :premises (@p131))
% 0.15/0.37  (step @p133 :rule eq_resolve :premises (@p63 @p132))
% 0.15/0.37  (step @p134 :rule arith_mult_neg :args (-1 @t66))
% 0.15/0.37  (step @p135 :rule evaluate :args ((< -1 0)))
% 0.15/0.37  (step @p136 :rule true_elim :premises (@p135))
% 0.15/0.37  (step @p137 :rule and_intro :premises (@p136 @p170))
% 0.15/0.37  (step @p138 :rule modus_ponens :premises (@p137 @p134))
% 0.15/0.37  (step @p139 :rule arith_sum_ub :premises (@p138 @p133))
% 0.15/0.37  (step @p140 false :rule eq_resolve :premises (@p139 @p129))
% 0.15/0.37  (step-pop @p171 :rule scope :premises (@p140))
% 0.15/0.37  (step @p141 :rule process_scope :premises (@p171) :args (false))
% 0.15/0.37  (step-pop @p172 :rule scope :premises (@p141))
% 0.15/0.37  (step @p143 :rule process_scope :premises (@p172) :args (@t67))
% 0.15/0.37  (step @p145 :rule modus_ponens :premises (@p63 @p143))
% 0.15/0.37  (step @p94 :rule refl :args (0))
% 0.15/0.37  (step @p146 :rule cong :premises (@p94 @p20) :args (@t52))
% 0.15/0.37  (step @p147 :rule and_intro :premises (@p63 @p146 @p87 @p145))
% 0.15/0.37  (step-pop @p173 :rule scope :premises (@p147))
% 0.15/0.37  (step-pop @p174 :rule scope :premises (@p173))
% 0.15/0.37  (step-pop @p175 :rule scope :premises (@p174))
% 0.15/0.37  (step @p148 :rule process_scope :premises (@p175) :args (@t77))
% 0.15/0.37  (step @p152 :rule implies_elim :premises (@p148))
% 0.15/0.37  (step @p153 :rule resolution :premises (@p152 @p105) :args (true @t77))
% 0.15/0.37  (step @p154 :rule not_and :premises (@p153))
% 0.15/0.37  (step @p155 false :rule chain_m_resolution :premises (@p154 @p87 @p63 @p20) :args (false (@list false false false) (@list @t62 @t55 @t68)))
% 0.15/0.37  )
% 0.15/0.37  % SZS output end Proof
% 0.15/0.37  % cvc5 exiting
%------------------------------------------------------------------------------