%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : DAT087_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 : n004.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 45.46s 45.72s % Output : Proof 45.46s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : DAT087_1 : TPTP v9.2.1. Released v6.1.0. % 0.12/0.13 % Command : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM % 0.17/0.34 % Computer : n004.cluster.edu % 0.17/0.34 % Model : x86_64 x86_64 % 0.17/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.17/0.34 % Memory : 8042.1875MB % 0.17/0.34 % OS : Linux 3.10.0-693.el7.x86_64 % 0.17/0.34 % CPULimit : 300 % 0.17/0.34 % WCLimit : 300 % 0.17/0.34 % DateTime : Mon Jun 1 22:28:07 EDT 2026 % 0.17/0.34 % CPUTime : % 0.30/0.50 %----Proving TF0_ARI % 45.46/45.72 --- Run --finite-model-find --decision=internal at 45... % 45.46/45.72 --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 60... % 45.46/45.72 % SZS status Theorem % 45.46/45.72 % SZS output start Proof % 45.46/45.72 ( % 45.46/45.72 (declare-sort tptp.list 0) % 45.46/45.72 (declare-const tptp.count (-> Int tptp.list Int)) % 45.46/45.72 (declare-const tptp.length (-> tptp.list Int)) % 45.46/45.72 (declare-const tptp.inRange (-> Int tptp.list Bool)) % 45.46/45.72 (declare-const tptp.in (-> Int tptp.list Bool)) % 45.46/45.72 (declare-const tptp.nil tptp.list) % 45.46/45.72 (declare-const tptp.append (-> tptp.list tptp.list tptp.list)) % 45.46/45.72 (declare-const tptp.tail (-> tptp.list tptp.list)) % 45.46/45.72 (declare-const tptp.head (-> tptp.list Int)) % 45.46/45.72 (declare-const tptp.cons (-> Int tptp.list tptp.list)) % 45.46/45.72 (define @t1 () (@var "K" Int)) % 45.46/45.72 (define @t2 () (@var "L" tptp.list)) % 45.46/45.72 (define @t3 () (tptp.cons @t1 @t2)) % 45.46/45.72 (define @t4 () (@list @t1 @t2)) % 45.46/45.72 (define @t5 () (= @t2 tptp.nil)) % 45.46/45.72 (define @t6 () (@list @t2)) % 45.46/45.72 (define @t7 () (@var "T" tptp.list)) % 45.46/45.72 (define @t8 () (@var "X" Int)) % 45.46/45.72 (define @t9 () (@var "H" Int)) % 45.46/45.72 (define @t10 () (tptp.cons @t9 @t7)) % 45.46/45.72 (define @t11 () (= @t2 @t10)) % 45.46/45.72 (define @t12 () (@list @t9 @t7)) % 45.46/45.72 (define @t13 () (@var "N" Int)) % 45.46/45.72 (define @t14 () (@list @t13 @t2)) % 45.46/45.72 (define @t15 () (@list @t1)) % 45.46/45.72 (define @t16 () (tptp.count @t1 @t7)) % 45.46/45.72 (define @t17 () (tptp.count @t1 @t10)) % 45.46/45.72 (define @t18 () (= @t1 @t9)) % 45.46/45.72 (define @t19 () (not @t18)) % 45.46/45.72 (define @t20 () (@list @t1 @t9 @t7 @t13)) % 45.46/45.72 (define @t21 () (+ @t16 1)) % 45.46/45.72 (define @t22 () (= @t17 @t21)) % 45.46/45.72 (define @t23 () (=> @t18 @t22)) % 45.46/45.72 (define @t24 () (forall @t20 @t23)) % 45.46/45.72 (define @t25 () (@var "K" tptp.list)) % 45.46/45.72 (define @t26 () (@var "I" Int)) % 45.46/45.72 (define @t27 () (tptp.count @t13 @t2)) % 45.46/45.72 (define @t28 () (forall @t14 (= @t27 (tptp.count @t13 (tptp.cons 1 @t2))))) % 45.46/45.72 (define @t29 () (= (tptp.count @t9 @t10) (+ 1 (tptp.count @t9 @t7)))) % 45.46/45.72 (define @t30 () (not (= @t9 @t9))) % 45.46/45.72 (define @t31 () (or @t30 @t29)) % 45.46/45.72 (define @t32 () (+ 1 @t16)) % 45.46/45.72 (define @t33 () (= @t17 @t32)) % 45.46/45.72 (define @t34 () (or @t19 @t19 @t33)) % 45.46/45.72 (define @t35 () (or @t19 @t33)) % 45.46/45.72 (define @t36 () (forall @t15 @t35)) % 45.46/45.72 (define @t37 () (forall @t12 @t36)) % 45.46/45.72 (define @t38 () (forall (@list @t9 @t7 @t1) @t35)) % 45.46/45.72 (define @t39 () (forall (@list @t1 @t9 @t7) @t35)) % 45.46/45.72 (define @t40 () (tptp.count 1 (tptp.cons 1 tptp.nil))) % 45.46/45.72 (define @t41 () (+ -1 @t40)) % 45.46/45.72 (define @t42 () (tptp.count 1 tptp.nil)) % 45.46/45.72 (define @t43 () (- @t42 @t41)) % 45.46/45.72 (define @t44 () (+ 1 @t42)) % 45.46/45.72 (define @t45 () (= @t42 @t41)) % 45.46/45.72 (define @t46 () (= @t40 @t44)) % 45.46/45.72 (define @t47 () (forall @t12 @t29)) % 45.46/45.72 (define @t48 () (@list 1 tptp.nil)) % 45.46/45.72 (define @t49 () (= @t42 @t40)) % 45.46/45.72 (define @t50 () (+ @t42 (* -1 @t40))) % 45.46/45.72 (define @t51 () (= @t50 0)) % 45.46/45.72 (define @t52 () (* -1 0)) % 45.46/45.72 (define @t53 () (+ @t52 -1)) % 45.46/45.72 (define @t54 () (* 0 @t42)) % 45.46/45.72 (define @t55 () (* 0 @t40)) % 45.46/45.72 (define @t56 () (+ @t55 @t54)) % 45.46/45.72 (define @t57 () (+ (* -1 @t50) @t50)) % 45.46/45.72 (define @t58 () (= (* 1 (- @t50 0)) (* 1 (- @t42 @t40)))) % 45.46/45.72 (define @t59 () (= @t51 @t49)) % 45.46/45.72 (assume @p1 (forall @t4 (= (tptp.head @t3) @t1))) % 45.46/45.72 (assume @p2 (forall @t4 (= (tptp.tail @t3) @t2))) % 45.46/45.72 (assume @p3 (forall @t6 (or @t5 (= @t2 (tptp.cons (tptp.head @t2) (tptp.tail @t2)))))) % 45.46/45.72 (assume @p4 (forall @t4 (not (= @t3 tptp.nil)))) % 45.46/45.72 (assume @p5 (forall (@list @t8 @t2) (= (tptp.in @t8 @t2) (or (exists @t12 (and @t11 (= @t8 @t9))) (exists @t12 (and @t11 (tptp.in @t8 @t7))))))) % 45.46/45.72 (assume @p6 (forall @t14 (= (tptp.inRange @t13 @t2) (or @t5 (exists (@list @t1 @t7) (and (= @t2 (tptp.cons @t1 @t7)) (<= 0 @t1) (< @t1 @t13) (tptp.inRange @t13 @t7))))))) % 45.46/45.72 (assume @p7 (= (tptp.length tptp.nil) 0)) % 45.46/45.72 (assume @p8 (forall @t12 (= (tptp.length @t10) (+ 1 (tptp.length @t7))))) % 45.46/45.72 (assume @p9 (forall @t15 (= (tptp.count @t1 tptp.nil) 0))) % 45.46/45.72 (assume @p10 (forall @t20 (=> @t19 (= @t17 @t16)))) % 45.46/45.72 (assume @p11 @t24) % 45.46/45.72 (assume @p12 (forall @t6 (= (tptp.append tptp.nil @t2) @t2))) % 45.46/45.72 (assume @p13 (forall (@list @t26 @t25 @t2) (= (tptp.append (tptp.cons @t26 @t25) @t2) (tptp.cons @t26 (tptp.append @t25 @t2))))) % 45.46/45.72 (assume @p14 (forall @t14 (= (tptp.in @t13 @t2) (> @t27 0)))) % 45.46/45.72 (assume @p15 (not (not @t28))) % 45.46/45.72 (assume @p16 true) % 45.46/45.72 (step @p17 :rule aci_norm :args ((= (or false @t29) @t29))) % 45.46/45.72 (step @p18 :rule refl :args (@t29)) % 45.46/45.72 (step @p19 :rule evaluate :args ((not true))) % 45.46/45.72 (step @p20 :rule eq-refl :args (@t9)) % 45.46/45.72 (step @p21 :rule cong :premises (@p20) :args (@t30)) % 45.46/45.72 (step @p22 :rule trans :premises (@p21 @p19)) % 45.46/45.72 (step @p23 :rule nary_cong :premises (@p22 @p18) :args (@t31)) % 45.46/45.72 (step @p24 :rule trans :premises (@p23 @p17)) % 45.46/45.72 (step @p25 :rule cong :premises (@p24) :args ((forall @t12 @t31))) % 45.46/45.72 (step @p26 :rule quant-var-elim-eq :args ((= (forall @t15 @t34) @t31))) % 45.46/45.72 (step @p27 :rule aci_norm :args ((= @t35 @t34))) % 45.46/45.72 (step @p28 :rule cong :premises (@p27) :args (@t36)) % 45.46/45.72 (step @p29 :rule trans :premises (@p28 @p26)) % 45.46/45.72 (step @p30 :rule cong :premises (@p29) :args (@t37)) % 45.46/45.72 (step @p31 :rule quant-merge-prenex :args ((= @t37 @t38))) % 45.46/45.72 (step @p32 :rule symm :premises (@p31)) % 45.46/45.72 (step @p33 :rule quant_var_reordering :args ((= @t39 @t38))) % 45.46/45.72 (step @p34 :rule trans :premises (@p33 @p32 @p30)) % 45.46/45.72 (step @p35 :rule trans :premises (@p34 @p25)) % 45.46/45.72 (step @p36 :rule quant-unused-vars :args ((= (forall @t20 @t35) @t39))) % 45.46/45.72 (step @p37 :rule trans :premises (@p36 @p35)) % 45.46/45.72 (step @p38 :rule bool-impl-elim :args (@t18 @t33)) % 45.46/45.72 (step @p39 :rule cong :premises (@p38) :args ((forall @t20 (=> @t18 @t33)))) % 45.46/45.72 (step @p40 :rule trans :premises (@p39 @p37)) % 45.46/45.72 (step @p41 :rule arith_poly_norm :args ((= @t21 @t32))) % 45.46/45.72 (step @p42 :rule refl :args (@t17)) % 45.46/45.72 (step @p43 :rule cong :premises (@p42 @p41) :args (@t22)) % 45.46/45.72 (step @p44 :rule refl :args (@t18)) % 45.46/45.72 (step @p45 :rule cong :premises (@p44 @p43) :args (@t23)) % 45.46/45.72 (step @p46 :rule cong :premises (@p45) :args (@t24)) % 45.46/45.72 (step @p47 :rule trans :premises (@p46 @p40)) % 45.46/45.72 (step @p48 :rule eq_resolve :premises (@p11 @p47)) % 45.46/45.72 (step @p49 :rule arith_poly_norm :args ((= (* 1 (- @t40 @t44)) (* -1 @t43)))) % 45.46/45.72 (step @p50 :rule arith_poly_norm_rel :premises (@p49) :args ((= @t46 @t45))) % 45.46/45.72 (step @p51 :rule refl :args (@t47)) % 45.46/45.72 (step @p52 :rule cong :premises (@p51 @p50) :args ((=> @t47 @t46))) % 45.46/45.72 (assume-push @p107 @t47) % 45.46/45.72 (step @p54 :rule instantiate :premises (@p48) :args (@t48)) % 45.46/45.72 (step-pop @p108 :rule scope :premises (@p54)) % 45.46/45.72 (step @p55 :rule process_scope :premises (@p108) :args (@t46)) % 45.46/45.72 (step @p57 :rule eq_resolve :premises (@p55 @p52)) % 45.46/45.72 (step @p58 :rule implies_elim :premises (@p57)) % 45.46/45.72 (step @p59 :rule chain_m_resolution :premises (@p58 @p48) :args (@t45 (@list false) (@list @t47))) % 45.46/45.72 (step @p60 :rule bool-double-not-elim :args (@t28)) % 45.46/45.72 (step @p61 :rule eq_resolve :premises (@p15 @p60)) % 45.46/45.72 (step @p62 :rule instantiate :premises (@p61) :args (@t48)) % 45.46/45.72 (assume-push @p109 @t49) % 45.46/45.72 (assume-push @p110 @t45) % 45.46/45.72 (assume-push @p111 @t51) % 45.46/45.72 (step @p66 :rule evaluate :args ((<= 0 -1))) % 45.46/45.72 (step @p67 :rule evaluate :args ((+ 0 -1))) % 45.46/45.72 (step @p68 :rule refl :args (-1)) % 45.46/45.72 (step @p69 :rule evaluate :args (@t52)) % 45.46/45.72 (step @p70 :rule nary_cong :premises (@p69 @p68) :args (@t53)) % 45.46/45.72 (step @p71 :rule trans :premises (@p70 @p67)) % 45.46/45.72 (step @p72 :rule evaluate :args ((+ 0 0))) % 45.46/45.72 (step @p73 :rule arith_poly_norm :args ((= @t54 0))) % 45.46/45.72 (step @p74 :rule arith_poly_norm :args ((= @t55 0))) % 45.46/45.72 (step @p75 :rule nary_cong :premises (@p74 @p73) :args (@t56)) % 45.46/45.72 (step @p76 :rule trans :premises (@p75 @p72)) % 45.46/45.72 (step @p77 :rule arith_poly_norm :args ((= @t57 @t56))) % 45.46/45.72 (step @p78 :rule trans :premises (@p77 @p76)) % 45.46/45.72 (step @p79 :rule cong :premises (@p78 @p71) :args ((<= @t57 @t53))) % 45.46/45.72 (step @p80 :rule trans :premises (@p79 @p66)) % 45.46/45.72 (step @p81 :rule arith_poly_norm :args ((= (* 1 (- @t50 -1)) (* 1 @t43)))) % 45.46/45.72 (step @p82 :rule arith_poly_norm_rel :premises (@p81) :args ((= (= @t50 -1) @t45))) % 45.46/45.72 (step @p83 :rule symm :premises (@p82)) % 45.46/45.72 (step @p84 :rule eq_resolve :premises (@p59 @p83)) % 45.46/45.72 (step @p85 :rule arith_mult_neg :args (-1 @t51)) % 45.46/45.72 (step @p86 :rule arith_poly_norm :args (@t58)) % 45.46/45.72 (step @p87 :rule arith_poly_norm_rel :premises (@p86) :args (@t59)) % 45.46/45.72 (step @p88 :rule symm :premises (@p87)) % 45.46/45.72 (step @p89 :rule instantiate :premises (@p61) :args (@t48)) % 45.46/45.72 (step @p90 :rule eq_resolve :premises (@p89 @p88)) % 45.46/45.72 (step @p91 :rule evaluate :args ((< -1 0))) % 45.46/45.72 (step @p92 :rule true_elim :premises (@p91)) % 45.46/45.72 (step @p93 :rule and_intro :premises (@p92 @p90)) % 45.46/45.72 (step @p94 :rule modus_ponens :premises (@p93 @p85)) % 45.46/45.72 (step @p95 :rule arith_sum_ub :premises (@p94 @p84)) % 45.46/45.72 (step @p96 false :rule eq_resolve :premises (@p95 @p80)) % 45.46/45.72 (step-pop @p112 :rule scope :premises (@p96)) % 45.46/45.72 (step @p97 :rule process_scope :premises (@p112) :args (false)) % 45.46/45.72 (step @p86 :rule arith_poly_norm :args (@t58)) % 45.46/45.72 (step @p87 :rule arith_poly_norm_rel :premises (@p86) :args (@t59)) % 45.46/45.72 (step @p88 :rule symm :premises (@p87)) % 45.46/45.72 (step @p99 :rule eq_resolve :premises (@p62 @p88)) % 45.46/45.72 (step @p100 false :rule contra :premises (@p99 @p97)) % 45.46/45.72 (step-pop @p113 :rule scope :premises (@p100)) % 45.46/45.72 (step-pop @p114 :rule scope :premises (@p113)) % 45.46/45.72 (step @p101 :rule process_scope :premises (@p114) :args (false)) % 45.46/45.72 (step @p104 :rule not_and :premises (@p101)) % 45.46/45.72 (step @p105 :rule reordering :premises (@p104) :args ((or (not @t45) (not @t49)))) % 45.46/45.72 (step @p106 false :rule chain_m_resolution :premises (@p105 @p62 @p59) :args (false (@list false false) (@list @t49 @t45))) % 45.46/45.72 ) % 45.46/45.72 % SZS output end Proof % 45.46/45.72 % cvc5 exiting %------------------------------------------------------------------------------