↑ Up

cvc5---1.3.4.THM-Prf.s

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

% Computer : n015.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:28 AM UTC 2026

% Result   : Theorem 0.42s 0.63s
% Output   : Proof 0.42s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : DAT077_1 : TPTP v9.2.1. Released v6.1.0.
% 0.11/0.13  % Command  : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM
% 0.17/0.34  % Computer : n015.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:04 EDT 2026
% 0.17/0.34  % CPUTime  : 
% 0.30/0.49  %----Proving TF0_ARI
% 0.42/0.63  --- Run --finite-model-find --decision=internal at 45...
% 0.42/0.63  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 60...
% 0.42/0.63  % SZS status Theorem
% 0.42/0.63  % SZS output start Proof
% 0.42/0.63  (
% 0.42/0.63  (declare-sort tptp.array 0)
% 0.42/0.63  (declare-const tptp.rev (-> tptp.array Int tptp.array))
% 0.42/0.63  (declare-const tptp.distinct (-> tptp.array Int Bool))
% 0.42/0.63  (declare-const tptp.sorted (-> tptp.array Int Bool))
% 0.42/0.63  (declare-const tptp.max (-> tptp.array Int Int))
% 0.42/0.63  (declare-const tptp.init (-> Int tptp.array))
% 0.42/0.63  (declare-const tptp.inRange (-> tptp.array Int Int Bool))
% 0.42/0.63  (declare-const tptp.read (-> tptp.array Int Int))
% 0.42/0.63  (declare-const tptp.write (-> tptp.array Int Int tptp.array))
% 0.42/0.63  (define @t1 () (@var "V" Int))
% 0.42/0.63  (define @t2 () (@var "I" Int))
% 0.42/0.63  (define @t3 () (@var "A" tptp.array))
% 0.42/0.63  (define @t4 () (tptp.write @t3 @t2 @t1))
% 0.42/0.63  (define @t5 () (@var "J" Int))
% 0.42/0.63  (define @t6 () (tptp.read @t3 @t5))
% 0.42/0.63  (define @t7 () (= @t2 @t5))
% 0.42/0.63  (define @t8 () (@var "B" tptp.array))
% 0.42/0.63  (define @t9 () (tptp.read @t8 @t2))
% 0.42/0.63  (define @t10 () (tptp.read @t3 @t2))
% 0.42/0.63  (define @t11 () (@list @t2))
% 0.42/0.63  (define @t12 () (@var "W" Int))
% 0.42/0.63  (define @t13 () (@var "N" Int))
% 0.42/0.63  (define @t14 () (>= @t2 0))
% 0.42/0.63  (define @t15 () (> @t13 @t2))
% 0.42/0.63  (define @t16 () (and @t15 @t14))
% 0.42/0.63  (define @t17 () (and (<= 0 @t2) (< @t2 @t13) (< @t2 @t5) (< @t5 @t13)))
% 0.42/0.63  (define @t18 () (=> @t17 (<= @t10 @t6)))
% 0.42/0.63  (define @t19 () (@list @t2 @t5))
% 0.42/0.63  (define @t20 () (forall @t19 @t18))
% 0.42/0.63  (define @t21 () (tptp.sorted @t3 @t13))
% 0.42/0.63  (define @t22 () (= @t21 @t20))
% 0.42/0.63  (define @t23 () (@list @t3 @t13))
% 0.42/0.63  (define @t24 () (forall @t23 @t22))
% 0.42/0.63  (define @t25 () (@var "R" Int))
% 0.42/0.63  (define @t26 () (>= @t5 0))
% 0.42/0.63  (define @t27 () (>= @t2 @t13))
% 0.42/0.63  (define @t28 () (@var "M" Int))
% 0.42/0.63  (define @t29 () (tptp.init @t13))
% 0.42/0.63  (define @t30 () (tptp.sorted (tptp.rev @t29 @t28) @t28))
% 0.42/0.63  (define @t31 () (not @t30))
% 0.42/0.63  (define @t32 () (@list @t13))
% 0.42/0.63  (define @t33 () (exists @t32 @t31))
% 0.42/0.63  (define @t34 () (forall (@list @t28) @t33))
% 0.42/0.63  (define @t35 () (+ @t6 (* -1 @t10)))
% 0.42/0.63  (define @t36 () (>= @t35 0))
% 0.42/0.63  (define @t37 () (* -1 @t13))
% 0.42/0.63  (define @t38 () (+ @t5 @t37))
% 0.42/0.63  (define @t39 () (>= @t38 0))
% 0.42/0.63  (define @t40 () (+ @t2 (* -1 @t5)))
% 0.42/0.63  (define @t41 () (>= @t40 0))
% 0.42/0.63  (define @t42 () (+ @t2 @t37))
% 0.42/0.63  (define @t43 () (>= @t42 0))
% 0.42/0.63  (define @t44 () (not @t14))
% 0.42/0.63  (define @t45 () (or @t44 @t43 @t41 @t39 @t36))
% 0.42/0.63  (define @t46 () (not @t39))
% 0.42/0.63  (define @t47 () (not @t46))
% 0.42/0.63  (define @t48 () (not @t41))
% 0.42/0.63  (define @t49 () (not @t48))
% 0.42/0.63  (define @t50 () (not @t43))
% 0.42/0.63  (define @t51 () (not @t50))
% 0.42/0.63  (define @t52 () (or @t44 @t51 @t49 @t47))
% 0.42/0.63  (define @t53 () (and @t14 @t50 @t48 @t46))
% 0.42/0.63  (define @t54 () (>= @t5 @t13))
% 0.42/0.63  (define @t55 () (>= @t2 @t5))
% 0.42/0.63  (define @t56 () (forall @t32 (not @t31)))
% 0.42/0.63  (define @t57 () (not @t56))
% 0.42/0.63  (define @t58 () (tptp.rev (tptp.init (@quantifiers_skolemize (forall @t32 (tptp.sorted (tptp.rev @t29 0) 0)) 0)) 0))
% 0.42/0.63  (define @t59 () (tptp.sorted @t58 0))
% 0.42/0.63  (define @t60 () (>= (+ (tptp.read @t58 @t5) (* -1 (tptp.read @t58 @t2))) 0))
% 0.42/0.63  (define @t61 () (* -1 0))
% 0.42/0.63  (define @t62 () (+ @t5 @t61))
% 0.42/0.63  (define @t63 () (>= @t62 0))
% 0.42/0.63  (define @t64 () (+ @t2 @t61))
% 0.42/0.63  (define @t65 () (>= @t64 0))
% 0.42/0.63  (define @t66 () (or @t44 @t65 @t41 @t63 @t60))
% 0.42/0.63  (define @t67 () (forall @t19 @t66))
% 0.42/0.63  (define @t68 () (= @t59 @t67))
% 0.42/0.63  (define @t69 () (forall @t23 (= @t21 (forall @t19 @t45))))
% 0.42/0.63  (assume @p1 (forall (@list @t3 @t2 @t1) (= (tptp.read @t4 @t2) @t1)))
% 0.42/0.63  (assume @p2 (forall (@list @t3 @t2 @t5 @t1) (or @t7 (= (tptp.read @t4 @t5) @t6))))
% 0.42/0.63  (assume @p3 (forall (@list @t3 @t8) (=> (forall @t11 (= @t10 @t9)) (= @t3 @t8))))
% 0.42/0.63  (assume @p4 (forall (@list @t1 @t2) (= (tptp.read (tptp.init @t1) @t2) @t1)))
% 0.42/0.63  (assume @p5 (forall (@list @t3 @t13 @t12) (=> (and (forall @t11 (=> @t16 (<= @t10 @t12))) (exists @t11 (and @t15 @t14 (= @t10 @t12)))) (= (tptp.max @t3 @t13) @t12))))
% 0.42/0.63  (assume @p6 @t24)
% 0.42/0.63  (assume @p7 (forall (@list @t3 @t25 @t13) (= (tptp.inRange @t3 @t25 @t13) (forall @t11 (=> @t16 (and (>= @t25 @t10) (>= @t10 0)))))))
% 0.42/0.63  (assume @p8 (forall @t23 (= (tptp.distinct @t3 @t13) (forall @t19 (=> (and @t15 (> @t13 @t5) @t26 @t14) (=> (= @t10 @t6) @t7))))))
% 0.42/0.63  (assume @p9 (forall (@list @t3 @t8 @t13) (=> (forall @t11 (or (and @t14 @t15 (= @t9 (tptp.read @t3 (- @t13 (+ @t2 1))))) (and (or (> 0 @t2) @t27) (= @t9 @t10)))) (= (tptp.rev @t3 @t13) @t8))))
% 0.42/0.63  (assume @p10 (not (not @t34)))
% 0.42/0.63  (assume @p11 true)
% 0.42/0.63  (step @p12 :rule aci_norm :args ((= (or (or @t44 @t43 @t41 @t39) @t36) @t45)))
% 0.42/0.63  (step @p13 :rule refl :args (@t36))
% 0.42/0.63  (step @p14 :rule bool-double-not-elim :args (@t39))
% 0.42/0.63  (step @p15 :rule bool-double-not-elim :args (@t41))
% 0.42/0.63  (step @p16 :rule bool-double-not-elim :args (@t43))
% 0.42/0.63  (step @p17 :rule refl :args (@t44))
% 0.42/0.63  (step @p18 :rule nary_cong :premises (@p17 @p16 @p15 @p14) :args (@t52))
% 0.42/0.63  (step @p19 :rule aci_norm :args ((= (or @t44 (or @t51 (or @t49 @t47))) @t52)))
% 0.42/0.63  (step @p20 :rule trans :premises (@p19 @p18))
% 0.42/0.63  (step @p21 :rule bool-and-de-morgan :args (@t48 @t46 true))
% 0.42/0.63  (step @p22 :rule refl :args (@t51))
% 0.42/0.63  (step @p23 :rule nary_cong :premises (@p22 @p21) :args ((or @t51 (not (and @t48 @t46)))))
% 0.42/0.63  (step @p24 :rule bool-and-de-morgan :args (@t50 @t48 (and @t46)))
% 0.42/0.63  (step @p25 :rule trans :premises (@p24 @p23))
% 0.42/0.63  (step @p26 :rule nary_cong :premises (@p17 @p25) :args ((or @t44 (not (and @t50 @t48 @t46)))))
% 0.42/0.63  (step @p27 :rule bool-and-de-morgan :args (@t14 @t50 (and @t48 @t46)))
% 0.42/0.63  (step @p28 :rule trans :premises (@p27 @p26))
% 0.42/0.63  (step @p29 :rule trans :premises (@p28 @p20))
% 0.42/0.63  (step @p30 :rule nary_cong :premises (@p29 @p13) :args ((or (not @t53) @t36)))
% 0.42/0.63  (step @p31 :rule trans :premises (@p30 @p12))
% 0.42/0.63  (step @p32 :rule bool-impl-elim :args (@t53 @t36))
% 0.42/0.63  (step @p33 :rule trans :premises (@p32 @p31))
% 0.42/0.63  (step @p34 :rule cong :premises (@p33) :args ((forall @t19 (=> @t53 @t36))))
% 0.42/0.63  (step @p35 :rule arith_poly_norm :args ((= (* 1 (- @t6 @t10)) (* 1 (- @t35 0)))))
% 0.42/0.63  (step @p36 :rule arith_poly_norm_rel :premises (@p35) :args ((= (>= @t6 @t10) @t36)))
% 0.42/0.63  (step @p37 :rule arith-elim-leq :args (@t10 @t6))
% 0.42/0.63  (step @p38 :rule trans :premises (@p37 @p36))
% 0.42/0.63  (step @p39 :rule arith_poly_norm :args ((= (* 1 (- @t5 @t13)) (* 1 (- @t38 0)))))
% 0.42/0.63  (step @p40 :rule arith_poly_norm_rel :premises (@p39) :args ((= @t54 @t39)))
% 0.42/0.63  (step @p41 :rule cong :premises (@p40) :args ((not @t54)))
% 0.42/0.63  (step @p42 :rule arith-elim-lt :args (@t5 @t13))
% 0.42/0.63  (step @p43 :rule trans :premises (@p42 @p41))
% 0.42/0.63  (step @p44 :rule arith_poly_norm :args ((= (* 1 (- @t2 @t5)) (* 1 (- @t40 0)))))
% 0.42/0.63  (step @p45 :rule arith_poly_norm_rel :premises (@p44) :args ((= @t55 @t41)))
% 0.42/0.63  (step @p46 :rule cong :premises (@p45) :args ((not @t55)))
% 0.42/0.63  (step @p47 :rule arith-elim-lt :args (@t2 @t5))
% 0.42/0.63  (step @p48 :rule trans :premises (@p47 @p46))
% 0.42/0.63  (step @p49 :rule arith_poly_norm :args ((= (* 1 (- @t2 @t13)) (* 1 (- @t42 0)))))
% 0.42/0.63  (step @p50 :rule arith_poly_norm_rel :premises (@p49) :args ((= @t27 @t43)))
% 0.42/0.63  (step @p51 :rule cong :premises (@p50) :args ((not @t27)))
% 0.42/0.63  (step @p52 :rule arith-elim-lt :args (@t2 @t13))
% 0.42/0.63  (step @p53 :rule trans :premises (@p52 @p51))
% 0.42/0.63  (step @p54 :rule arith-elim-leq :args (0 @t2))
% 0.42/0.63  (step @p55 :rule nary_cong :premises (@p54 @p53 @p48 @p43) :args (@t17))
% 0.42/0.63  (step @p56 :rule cong :premises (@p55 @p38) :args (@t18))
% 0.42/0.63  (step @p57 :rule cong :premises (@p56) :args (@t20))
% 0.42/0.63  (step @p58 :rule trans :premises (@p57 @p34))
% 0.42/0.63  (step @p59 :rule refl :args (@t21))
% 0.42/0.63  (step @p60 :rule cong :premises (@p59 @p58) :args (@t22))
% 0.42/0.63  (step @p61 :rule cong :premises (@p60) :args (@t24))
% 0.42/0.63  (step @p62 :rule eq_resolve :premises (@p6 @p61))
% 0.42/0.63  (step @p63 :rule bool-double-not-elim :args (@t30))
% 0.42/0.63  (step @p64 :rule cong :premises (@p63) :args (@t56))
% 0.42/0.63  (step @p65 :rule cong :premises (@p64) :args (@t57))
% 0.42/0.63  (step @p66 :rule exists-elim :args ((= @t33 @t57)))
% 0.42/0.63  (step @p67 :rule trans :premises (@p66 @p65))
% 0.42/0.63  (step @p68 :rule cong :premises (@p67) :args (@t34))
% 0.42/0.63  (step @p69 :rule bool-double-not-elim :args (@t34))
% 0.42/0.63  (step @p70 :rule trans :premises (@p69 @p68))
% 0.42/0.63  (step @p71 :rule eq_resolve :premises (@p10 @p70))
% 0.42/0.63  (step @p72 :rule instantiate :premises (@p71) :args ((@list 0)))
% 0.42/0.63  (step @p73 :rule skolemize :premises (@p72))
% 0.42/0.63  (step @p74 :rule bool-eq-true :args (@t59))
% 0.42/0.63  (step @p75 :rule quant-unused-vars :args ((= (forall @t19 true) true)))
% 0.42/0.63  (step @p76 :rule bool-or-taut2 :args (false @t14 false (or @t41 @t26 @t60)))
% 0.42/0.63  (step @p77 :rule cong :premises (@p76) :args ((forall @t19 (or @t44 @t14 @t41 @t26 @t60))))
% 0.42/0.63  (step @p78 :rule trans :premises (@p77 @p75))
% 0.42/0.63  (step @p79 :rule refl :args (@t60))
% 0.42/0.63  (step @p80 :rule refl :args (0))
% 0.42/0.63  (step @p81 :rule arith_poly_norm :args ((= (+ @t5 0) @t5)))
% 0.42/0.64  (step @p82 :rule evaluate :args (@t61))
% 0.42/0.64  (step @p83 :rule refl :args (@t5))
% 0.42/0.64  (step @p84 :rule nary_cong :premises (@p83 @p82) :args (@t62))
% 0.42/0.64  (step @p85 :rule trans :premises (@p84 @p81))
% 0.42/0.64  (step @p86 :rule cong :premises (@p85 @p80) :args (@t63))
% 0.42/0.64  (step @p87 :rule refl :args (@t41))
% 0.42/0.64  (step @p88 :rule arith_poly_norm :args ((= (+ @t2 0) @t2)))
% 0.42/0.64  (step @p89 :rule refl :args (@t2))
% 0.42/0.64  (step @p90 :rule nary_cong :premises (@p89 @p82) :args (@t64))
% 0.42/0.64  (step @p91 :rule trans :premises (@p90 @p88))
% 0.42/0.64  (step @p92 :rule cong :premises (@p91 @p80) :args (@t65))
% 0.42/0.64  (step @p93 :rule refl :args (@t44))
% 0.42/0.64  (step @p94 :rule nary_cong :premises (@p93 @p92 @p87 @p86 @p79) :args (@t66))
% 0.42/0.64  (step @p95 :rule cong :premises (@p94) :args (@t67))
% 0.42/0.64  (step @p96 :rule trans :premises (@p95 @p78))
% 0.42/0.64  (step @p97 :rule refl :args (@t59))
% 0.42/0.64  (step @p98 :rule cong :premises (@p97 @p96) :args (@t68))
% 0.42/0.64  (step @p99 :rule trans :premises (@p98 @p74))
% 0.42/0.64  (step @p100 :rule refl :args (@t69))
% 0.42/0.64  (step @p101 :rule cong :premises (@p100 @p99) :args ((=> @t69 @t68)))
% 0.42/0.64  (assume-push @p109 @t69)
% 0.42/0.64  (step @p103 :rule instantiate :premises (@p62) :args ((@list @t58 0)))
% 0.42/0.64  (step-pop @p110 :rule scope :premises (@p103))
% 0.42/0.64  (step @p104 :rule process_scope :premises (@p110) :args (@t68))
% 0.42/0.64  (step @p106 :rule eq_resolve :premises (@p104 @p101))
% 0.42/0.64  (step @p107 :rule implies_elim :premises (@p106))
% 0.42/0.64  (step @p108 false :rule chain_m_resolution :premises (@p107 @p73 @p62) :args (false (@list true false) (@list @t59 @t69)))
% 0.42/0.64  )
% 0.42/0.64  % SZS output end Proof
% 0.42/0.64  % cvc5 exiting
%------------------------------------------------------------------------------