%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : DAT061_1 : TPTP v9.2.1. Released v5.5.0. % Transfm : none % Format : tptp:raw % Command : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM % Computer : n022.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:26 AM UTC 2026 % Result : Theorem 0.30s 0.54s % Output : Proof 0.30s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.11 % Problem : DAT061_1 : TPTP v9.2.1. Released v5.5.0. % 0.00/0.13 % Command : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM % 0.15/0.33 % Computer : n022.cluster.edu % 0.15/0.33 % Model : x86_64 x86_64 % 0.15/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.15/0.33 % Memory : 8042.1875MB % 0.15/0.33 % OS : Linux 3.10.0-693.el7.x86_64 % 0.15/0.33 % CPULimit : 300 % 0.15/0.33 % WCLimit : 300 % 0.15/0.33 % DateTime : Mon Jun 1 22:27:38 EDT 2026 % 0.15/0.33 % CPUTime : % 0.30/0.48 %----Proving TF0_ARI % 0.30/0.54 --- Run --finite-model-find --decision=internal at 45... % 0.30/0.54 % SZS status Theorem % 0.30/0.54 % SZS output start Proof % 0.30/0.54 ( % 0.30/0.54 (declare-sort tptp.array 0) % 0.30/0.54 (declare-sort tptp.data 0) % 0.30/0.54 (declare-const tptp.put (-> tptp.array Int tptp.data tptp.array)) % 0.30/0.54 (declare-const tptp.get (-> tptp.array Int tptp.data)) % 0.30/0.54 (declare-const tptp.mkarray tptp.array) % 0.30/0.54 (declare-const tptp.none tptp.data) % 0.30/0.54 (define @t1 () (@var "M" Int)) % 0.30/0.54 (define @t2 () (@var "D" tptp.data)) % 0.30/0.54 (define @t3 () (@var "Ar" tptp.array)) % 0.30/0.54 (define @t4 () (tptp.put @t3 @t1 @t2)) % 0.30/0.54 (define @t5 () (@var "N" Int)) % 0.30/0.54 (define @t6 () (= (tptp.get (tptp.put @t3 @t5 @t2) @t1) (tptp.get @t3 @t1))) % 0.30/0.54 (define @t7 () (= @t1 @t5)) % 0.30/0.54 (define @t8 () (not @t7)) % 0.30/0.54 (define @t9 () (@list @t5 @t2 @t3 @t1)) % 0.30/0.54 (define @t10 () (forall @t9 (=> @t8 @t6))) % 0.30/0.54 (define @t11 () (@var "D1" tptp.data)) % 0.30/0.54 (define @t12 () (@var "D2" tptp.data)) % 0.30/0.54 (define @t13 () (@var "Ar0" tptp.array)) % 0.30/0.54 (define @t14 () (tptp.get @t3 @t5)) % 0.30/0.54 (define @t15 () (not (< @t1 @t5))) % 0.30/0.54 (define @t16 () (tptp.get @t4 @t5)) % 0.30/0.54 (define @t17 () (or (= @t16 @t14) @t15)) % 0.30/0.54 (define @t18 () (@list @t2 @t3 @t1 @t5)) % 0.30/0.54 (define @t19 () (forall @t18 @t17)) % 0.30/0.54 (define @t20 () (not @t19)) % 0.30/0.54 (define @t21 () (+ @t1 (* -1 @t5))) % 0.30/0.54 (define @t22 () (>= @t21 0)) % 0.30/0.54 (define @t23 () (forall @t18 (or (= @t14 @t16) @t22))) % 0.30/0.54 (define @t24 () (@quantifiers_skolemize @t23 3)) % 0.30/0.54 (define @t25 () (* -1 @t24)) % 0.30/0.54 (define @t26 () (+ -1 @t25)) % 0.30/0.54 (define @t27 () (- @t26 @t25)) % 0.30/0.54 (define @t28 () (+ @t25 -1)) % 0.30/0.54 (define @t29 () (@quantifiers_skolemize @t23 2)) % 0.30/0.54 (define @t30 () (* -1 @t29)) % 0.30/0.54 (define @t31 () (+ @t30 @t25 @t29)) % 0.30/0.54 (define @t32 () (+ @t29 @t25)) % 0.30/0.54 (define @t33 () (+ @t30 @t32)) % 0.30/0.54 (define @t34 () (>= @t1 @t5)) % 0.30/0.54 (define @t35 () (>= @t32 0)) % 0.30/0.54 (define @t36 () (@quantifiers_skolemize @t23 0)) % 0.30/0.54 (define @t37 () (@quantifiers_skolemize @t23 1)) % 0.30/0.54 (define @t38 () (tptp.get (tptp.put @t37 @t29 @t36) @t24)) % 0.30/0.54 (define @t39 () (tptp.get @t37 @t24)) % 0.30/0.54 (define @t40 () (= @t39 @t38)) % 0.30/0.54 (define @t41 () (or @t40 @t35)) % 0.30/0.54 (define @t42 () (@list true)) % 0.30/0.54 (define @t43 () (@list @t41)) % 0.30/0.54 (define @t44 () (= @t29 @t24)) % 0.30/0.54 (define @t45 () (= @t24 @t29)) % 0.30/0.54 (define @t46 () (or @t45 (= @t38 @t39))) % 0.30/0.54 (define @t47 () (forall @t9 (or @t7 @t6))) % 0.30/0.54 (define @t48 () (or @t44 @t40)) % 0.30/0.54 (assume @p1 (forall (@list @t1) (= (tptp.get tptp.mkarray @t1) tptp.none))) % 0.30/0.54 (assume @p2 (forall (@list @t3 @t1 @t2) (= (tptp.get @t4 @t1) @t2))) % 0.30/0.54 (assume @p3 @t10) % 0.30/0.54 (assume @p4 (forall (@list @t12 @t3 @t1 @t11) (= (tptp.put (tptp.put @t3 @t1 @t12) @t1 @t11) (tptp.put @t3 @t1 @t11)))) % 0.30/0.54 (assume @p5 (forall (@list @t3 @t13) (= (= @t3 @t13) (forall (@list @t5) (= @t14 (tptp.get @t13 @t5)))))) % 0.30/0.54 (assume @p6 @t20) % 0.30/0.54 (assume @p7 true) % 0.30/0.54 (step @p8 :rule evaluate :args ((>= -1 0))) % 0.30/0.54 (step @p9 :rule refl :args (0)) % 0.30/0.54 (step @p10 :rule arith_poly_norm :args ((= @t27 -1))) % 0.30/0.54 (step @p11 :rule cong :premises (@p10 @p9) :args ((>= @t27 0))) % 0.30/0.54 (step @p12 :rule trans :premises (@p11 @p8)) % 0.30/0.54 (step @p13 :rule arith-geq-norm1-int :args (@t26 @t25)) % 0.30/0.54 (step @p14 :rule trans :premises (@p13 @p12)) % 0.30/0.54 (step @p15 :rule arith-elim-leq :args (@t25 @t26)) % 0.30/0.54 (step @p16 :rule trans :premises (@p15 @p14)) % 0.30/0.54 (step @p17 :rule arith_poly_norm :args ((= @t28 @t26))) % 0.30/0.54 (step @p18 :rule arith_poly_norm :args ((= @t31 @t25))) % 0.30/0.54 (step @p19 :rule arith_poly_norm :args ((= @t33 @t31))) % 0.30/0.54 (step @p20 :rule trans :premises (@p19 @p18)) % 0.30/0.54 (step @p21 :rule cong :premises (@p20 @p17) :args ((<= @t33 @t28))) % 0.30/0.54 (step @p22 :rule trans :premises (@p21 @p16)) % 0.30/0.54 (step @p23 :rule arith-elim-lt :args (@t32 0)) % 0.30/0.54 (step @p24 :rule symm :premises (@p23)) % 0.30/0.54 (step @p25 :rule bool-double-not-elim :args (@t22)) % 0.30/0.54 (step @p26 :rule arith_poly_norm :args ((= (* 1 (- @t1 @t5)) (* 1 (- @t21 0))))) % 0.30/0.54 (step @p27 :rule arith_poly_norm_rel :premises (@p26) :args ((= @t34 @t22))) % 0.30/0.54 (step @p28 :rule cong :premises (@p27) :args ((not @t34))) % 0.30/0.54 (step @p29 :rule arith-elim-lt :args (@t1 @t5)) % 0.30/0.54 (step @p30 :rule trans :premises (@p29 @p28)) % 0.30/0.54 (step @p31 :rule cong :premises (@p30) :args (@t15)) % 0.30/0.54 (step @p32 :rule trans :premises (@p31 @p25)) % 0.30/0.54 (step @p33 :rule eq-symm :args (@t16 @t14)) % 0.30/0.54 (step @p34 :rule nary_cong :premises (@p33 @p32) :args (@t17)) % 0.30/0.54 (step @p35 :rule cong :premises (@p34) :args (@t19)) % 0.30/0.54 (step @p36 :rule cong :premises (@p35) :args (@t20)) % 0.30/0.54 (step @p37 :rule eq_resolve :premises (@p6 @p36)) % 0.30/0.55 (step @p38 :rule skolemize :premises (@p37)) % 0.30/0.55 (step @p39 :rule cnf_or_neg :args (@t41 1)) % 0.30/0.55 (step @p40 :rule chain_m_resolution :premises (@p39 @p38) :args ((not @t35) @t42 @t43)) % 0.30/0.55 (step @p41 :rule eq_resolve :premises (@p40 @p24)) % 0.30/0.55 (step @p42 :rule int_tight_ub :premises (@p41)) % 0.30/0.55 (step @p43 :rule arith_mult_neg :args (-1 @t44)) % 0.30/0.55 (step @p44 :rule refl :args (@t6)) % 0.30/0.55 (step @p45 :rule bool-double-not-elim :args (@t7)) % 0.30/0.55 (step @p46 :rule nary_cong :premises (@p45 @p44) :args ((or (not @t8) @t6))) % 0.30/0.55 (step @p47 :rule bool-impl-elim :args (@t8 @t6)) % 0.30/0.55 (step @p48 :rule trans :premises (@p47 @p46)) % 0.30/0.55 (step @p49 :rule cong :premises (@p48) :args (@t10)) % 0.30/0.55 (step @p50 :rule eq_resolve :premises (@p3 @p49)) % 0.30/0.55 (step @p51 :rule eq-symm :args (@t38 @t39)) % 0.30/0.55 (step @p52 :rule arith_poly_norm :args ((= (* 1 (- @t24 @t29)) (* -1 (- @t29 @t24))))) % 0.30/0.55 (step @p53 :rule arith_poly_norm_rel :premises (@p52) :args ((= @t45 @t44))) % 0.30/0.55 (step @p54 :rule nary_cong :premises (@p53 @p51) :args (@t46)) % 0.30/0.55 (step @p55 :rule refl :args (@t47)) % 0.30/0.55 (step @p56 :rule cong :premises (@p55 @p54) :args ((=> @t47 @t46))) % 0.30/0.55 (assume-push @p75 @t47) % 0.30/0.55 (step @p58 :rule instantiate :premises (@p50) :args ((@list @t29 @t36 @t37 @t24))) % 0.30/0.55 (step-pop @p76 :rule scope :premises (@p58)) % 0.30/0.55 (step @p59 :rule process_scope :premises (@p76) :args (@t46)) % 0.30/0.55 (step @p61 :rule eq_resolve :premises (@p59 @p56)) % 0.30/0.55 (step @p62 :rule implies_elim :premises (@p61)) % 0.30/0.55 (step @p63 :rule chain_m_resolution :premises (@p62 @p50) :args (@t48 (@list false) (@list @t47))) % 0.30/0.55 (step @p64 :rule cnf_or_neg :args (@t41 0)) % 0.30/0.55 (step @p65 :rule chain_m_resolution :premises (@p64 @p38) :args ((not @t40) @t42 @t43)) % 0.30/0.55 (step @p66 :rule cnf_or_pos :args (@t48)) % 0.30/0.55 (step @p67 :rule reordering :premises (@p66) :args ((or @t40 @t44 (not @t48)))) % 0.30/0.55 (step @p68 :rule chain_m_resolution :premises (@p67 @p65 @p63) :args (@t44 (@list true false) (@list @t40 @t48))) % 0.30/0.55 (step @p69 :rule evaluate :args ((< -1 0))) % 0.30/0.55 (step @p70 :rule true_elim :premises (@p69)) % 0.30/0.55 (step @p71 :rule and_intro :premises (@p70 @p68)) % 0.30/0.55 (step @p72 :rule modus_ponens :premises (@p71 @p43)) % 0.30/0.55 (step @p73 :rule arith_sum_ub :premises (@p72 @p42)) % 0.30/0.55 (step @p74 false :rule eq_resolve :premises (@p73 @p22)) % 0.30/0.55 ) % 0.30/0.55 % SZS output end Proof % 0.30/0.55 % cvc5 exiting %------------------------------------------------------------------------------