%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : DAT102_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 : n006.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:31 AM UTC 2026 % Result : Theorem 36.34s 36.52s % Output : Proof 36.34s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : DAT102_1 : TPTP v9.2.1. Released v6.1.0. % 0.00/0.13 % Command : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM % 0.17/0.34 % Computer : n006.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:34 EDT 2026 % 0.17/0.34 % CPUTime : % 0.31/0.49 %----Proving TF0_ARI % 36.34/36.52 --- Run --finite-model-find --decision=internal at 45... % 36.34/36.52 --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 60... % 36.34/36.52 % SZS status Theorem % 36.34/36.52 % SZS output start Proof % 36.34/36.52 ( % 36.34/36.52 (declare-sort tptp.list 0) % 36.34/36.52 (declare-const tptp.inRange (-> Int tptp.list Bool)) % 36.34/36.52 (declare-const tptp.nil tptp.list) % 36.34/36.52 (declare-const tptp.tail (-> tptp.list tptp.list)) % 36.34/36.52 (declare-const tptp.head (-> tptp.list Int)) % 36.34/36.52 (declare-const tptp.cons (-> Int tptp.list tptp.list)) % 36.34/36.52 (define @t1 () (@var "K" Int)) % 36.34/36.52 (define @t2 () (@var "L" tptp.list)) % 36.34/36.52 (define @t3 () (tptp.cons @t1 @t2)) % 36.34/36.52 (define @t4 () (@list @t1 @t2)) % 36.34/36.52 (define @t5 () (tptp.tail @t3)) % 36.34/36.52 (define @t6 () (forall @t4 (= @t5 @t2))) % 36.34/36.52 (define @t7 () (tptp.tail @t2)) % 36.34/36.52 (define @t8 () (= @t2 tptp.nil)) % 36.34/36.52 (define @t9 () (not (= @t3 tptp.nil))) % 36.34/36.52 (define @t10 () (forall @t4 @t9)) % 36.34/36.52 (define @t11 () (@var "T" tptp.list)) % 36.34/36.52 (define @t12 () (@var "N" Int)) % 36.34/36.52 (define @t13 () (tptp.inRange @t12 @t11)) % 36.34/36.52 (define @t14 () (tptp.cons @t1 @t11)) % 36.34/36.52 (define @t15 () (= @t2 @t14)) % 36.34/36.52 (define @t16 () (and @t15 (<= 0 @t1) (< @t1 @t12) @t13)) % 36.34/36.52 (define @t17 () (@list @t1 @t11)) % 36.34/36.52 (define @t18 () (exists @t17 @t16)) % 36.34/36.52 (define @t19 () (or @t8 @t18)) % 36.34/36.52 (define @t20 () (tptp.inRange @t12 @t2)) % 36.34/36.52 (define @t21 () (= @t20 @t19)) % 36.34/36.52 (define @t22 () (@list @t12 @t2)) % 36.34/36.52 (define @t23 () (forall @t22 @t21)) % 36.34/36.52 (define @t24 () (tptp.inRange @t12 @t7)) % 36.34/36.52 (define @t25 () (forall (@list @t2 @t12) (=> @t24 @t20))) % 36.34/36.52 (define @t26 () (not @t13)) % 36.34/36.52 (define @t27 () (+ @t1 (* -1 @t12))) % 36.34/36.52 (define @t28 () (>= @t27 0)) % 36.34/36.52 (define @t29 () (>= @t1 0)) % 36.34/36.52 (define @t30 () (not @t29)) % 36.34/36.52 (define @t31 () (not @t15)) % 36.34/36.52 (define @t32 () (not @t28)) % 36.34/36.52 (define @t33 () (not @t32)) % 36.34/36.52 (define @t34 () (or @t31 @t30 @t33 @t26)) % 36.34/36.52 (define @t35 () (and @t15 @t29 @t32 @t13)) % 36.34/36.52 (define @t36 () (forall @t17 (not @t35))) % 36.34/36.52 (define @t37 () (not @t36)) % 36.34/36.52 (define @t38 () (>= @t1 @t12)) % 36.34/36.52 (define @t39 () (tptp.cons 0 tptp.nil)) % 36.34/36.52 (define @t40 () (tptp.inRange 0 tptp.nil)) % 36.34/36.52 (define @t41 () (not (= tptp.nil @t14))) % 36.34/36.52 (define @t42 () (not (tptp.inRange 0 @t11))) % 36.34/36.52 (define @t43 () (* -1 0)) % 36.34/36.52 (define @t44 () (+ @t1 @t43)) % 36.34/36.52 (define @t45 () (>= @t44 0)) % 36.34/36.52 (define @t46 () (or @t41 @t30 @t45 @t42)) % 36.34/36.52 (define @t47 () (forall @t17 @t46)) % 36.34/36.52 (define @t48 () (not @t47)) % 36.34/36.52 (define @t49 () (or (= tptp.nil tptp.nil) @t48)) % 36.34/36.52 (define @t50 () (= @t40 @t49)) % 36.34/36.52 (define @t51 () (forall @t22 (= @t20 (or (= tptp.nil @t2) (not (forall @t17 (or @t31 @t30 @t28 @t26))))))) % 36.34/36.52 (define @t52 () (@list 0 tptp.nil)) % 36.34/36.52 (define @t53 () (tptp.inRange 0 (tptp.tail @t39))) % 36.34/36.52 (define @t54 () (tptp.inRange 0 @t39)) % 36.34/36.52 (define @t55 () (not @t53)) % 36.34/36.52 (define @t56 () (or @t55 @t54)) % 36.34/36.52 (define @t57 () (= tptp.nil @t39)) % 36.34/36.52 (define @t58 () (= @t57 @t54)) % 36.34/36.52 (define @t59 () (not @t58)) % 36.34/36.52 (define @t60 () (@list true false)) % 36.34/36.52 (define @t61 () (not (= @t14 @t39))) % 36.34/36.52 (define @t62 () (not (= @t39 @t14))) % 36.34/36.52 (define @t63 () (or @t62 @t30 @t45 @t42)) % 36.34/36.52 (define @t64 () (forall @t17 @t63)) % 36.34/36.52 (define @t65 () (not @t64)) % 36.34/36.52 (define @t66 () (or @t57 @t65)) % 36.34/36.52 (define @t67 () (= @t54 @t66)) % 36.34/36.52 (assume @p1 (forall @t4 (= (tptp.head @t3) @t1))) % 36.34/36.52 (assume @p2 @t6) % 36.34/36.52 (assume @p3 (forall (@list @t2) (or @t8 (= @t2 (tptp.cons (tptp.head @t2) @t7))))) % 36.34/36.52 (assume @p4 @t10) % 36.34/36.52 (assume @p5 @t23) % 36.34/36.52 (assume @p6 (not (not @t25))) % 36.34/36.52 (assume @p7 true) % 36.34/36.52 (step @p8 :rule refl :args (@t26)) % 36.34/36.52 (step @p9 :rule bool-double-not-elim :args (@t28)) % 36.34/36.52 (step @p10 :rule refl :args (@t30)) % 36.34/36.52 (step @p11 :rule refl :args (@t31)) % 36.34/36.52 (step @p12 :rule nary_cong :premises (@p11 @p10 @p9 @p8) :args (@t34)) % 36.34/36.52 (step @p13 :rule aci_norm :args ((= (or @t31 (or @t30 (or @t33 @t26))) @t34))) % 36.34/36.52 (step @p14 :rule trans :premises (@p13 @p12)) % 36.34/36.52 (step @p15 :rule bool-and-de-morgan :args (@t32 @t13 true)) % 36.34/36.52 (step @p16 :rule nary_cong :premises (@p10 @p15) :args ((or @t30 (not (and @t32 @t13))))) % 36.34/36.52 (step @p17 :rule bool-and-de-morgan :args (@t29 @t32 (and @t13))) % 36.34/36.52 (step @p18 :rule trans :premises (@p17 @p16)) % 36.34/36.52 (step @p19 :rule nary_cong :premises (@p11 @p18) :args ((or @t31 (not (and @t29 @t32 @t13))))) % 36.34/36.52 (step @p20 :rule bool-and-de-morgan :args (@t15 @t29 (and @t32 @t13))) % 36.34/36.52 (step @p21 :rule trans :premises (@p20 @p19)) % 36.34/36.52 (step @p22 :rule trans :premises (@p21 @p14)) % 36.34/36.52 (step @p23 :rule cong :premises (@p22) :args (@t36)) % 36.34/36.52 (step @p24 :rule cong :premises (@p23) :args (@t37)) % 36.34/36.52 (step @p25 :rule exists-elim :args ((= (exists @t17 @t35) @t37))) % 36.34/36.52 (step @p26 :rule trans :premises (@p25 @p24)) % 36.34/36.52 (step @p27 :rule refl :args (@t13)) % 36.34/36.52 (step @p28 :rule arith_poly_norm :args ((= (* 1 (- @t1 @t12)) (* 1 (- @t27 0))))) % 36.34/36.52 (step @p29 :rule arith_poly_norm_rel :premises (@p28) :args ((= @t38 @t28))) % 36.34/36.52 (step @p30 :rule cong :premises (@p29) :args ((not @t38))) % 36.34/36.52 (step @p31 :rule arith-elim-lt :args (@t1 @t12)) % 36.34/36.52 (step @p32 :rule trans :premises (@p31 @p30)) % 36.34/36.52 (step @p33 :rule arith-elim-leq :args (0 @t1)) % 36.34/36.52 (step @p34 :rule refl :args (@t15)) % 36.34/36.52 (step @p35 :rule nary_cong :premises (@p34 @p33 @p32 @p27) :args (@t16)) % 36.34/36.52 (step @p36 :rule cong :premises (@p35) :args (@t18)) % 36.34/36.52 (step @p37 :rule trans :premises (@p36 @p26)) % 36.34/36.52 (step @p38 :rule eq-symm :args (@t2 tptp.nil)) % 36.34/36.52 (step @p39 :rule nary_cong :premises (@p38 @p37) :args (@t19)) % 36.34/36.52 (step @p40 :rule refl :args (@t20)) % 36.34/36.52 (step @p41 :rule cong :premises (@p40 @p39) :args (@t21)) % 36.34/36.52 (step @p42 :rule cong :premises (@p41) :args (@t23)) % 36.34/36.52 (step @p43 :rule eq_resolve :premises (@p5 @p42)) % 36.34/36.52 (step @p44 :rule bool-impl-elim :args (@t24 @t20)) % 36.34/36.52 (step @p45 :rule cong :premises (@p44) :args (@t25)) % 36.34/36.52 (step @p46 :rule bool-double-not-elim :args (@t25)) % 36.34/36.52 (step @p47 :rule trans :premises (@p46 @p45)) % 36.34/36.52 (step @p48 :rule eq_resolve :premises (@p6 @p47)) % 36.34/36.52 (step @p49 :rule instantiate :premises (@p48) :args ((@list @t39 0))) % 36.34/36.52 (step @p50 :rule bool-eq-true :args (@t40)) % 36.34/36.52 (step @p51 :rule evaluate :args ((or true false))) % 36.34/36.52 (step @p52 :rule evaluate :args ((not true))) % 36.34/36.52 (step @p53 :rule quant-unused-vars :args ((= (forall @t17 true) true))) % 36.34/36.52 (step @p54 :rule bool-or-taut2 :args ((or @t41) @t29 false (or @t42))) % 36.34/36.52 (step @p55 :rule cong :premises (@p54) :args ((forall @t17 (or @t41 @t30 @t29 @t42)))) % 36.34/36.52 (step @p56 :rule trans :premises (@p55 @p53)) % 36.34/36.52 (step @p57 :rule refl :args (@t42)) % 36.34/36.52 (step @p58 :rule refl :args (0)) % 36.34/36.52 (step @p59 :rule arith_poly_norm :args ((= (+ @t1 0) @t1))) % 36.34/36.52 (step @p60 :rule evaluate :args (@t43)) % 36.34/36.52 (step @p61 :rule refl :args (@t1)) % 36.34/36.52 (step @p62 :rule nary_cong :premises (@p61 @p60) :args (@t44)) % 36.34/36.52 (step @p63 :rule trans :premises (@p62 @p59)) % 36.34/36.52 (step @p64 :rule cong :premises (@p63 @p58) :args (@t45)) % 36.34/36.52 (step @p65 :rule refl :args (@t30)) % 36.34/36.52 (step @p66 :rule refl :args (@t41)) % 36.34/36.52 (step @p67 :rule nary_cong :premises (@p66 @p65 @p64 @p57) :args (@t46)) % 36.34/36.52 (step @p68 :rule cong :premises (@p67) :args (@t47)) % 36.34/36.52 (step @p69 :rule trans :premises (@p68 @p56)) % 36.34/36.52 (step @p70 :rule cong :premises (@p69) :args (@t48)) % 36.34/36.52 (step @p71 :rule trans :premises (@p70 @p52)) % 36.34/36.52 (step @p72 :rule eq-refl :args (tptp.nil)) % 36.34/36.52 (step @p73 :rule nary_cong :premises (@p72 @p71) :args (@t49)) % 36.34/36.52 (step @p74 :rule trans :premises (@p73 @p51)) % 36.34/36.52 (step @p75 :rule refl :args (@t40)) % 36.34/36.52 (step @p76 :rule cong :premises (@p75 @p74) :args (@t50)) % 36.34/36.52 (step @p77 :rule trans :premises (@p76 @p50)) % 36.34/36.52 (step @p78 :rule refl :args (@t51)) % 36.34/36.52 (step @p79 :rule cong :premises (@p78 @p77) :args ((=> @t51 @t50))) % 36.34/36.52 (assume-push @p133 @t51) % 36.34/36.52 (step @p81 :rule instantiate :premises (@p43) :args (@t52)) % 36.34/36.52 (step-pop @p134 :rule scope :premises (@p81)) % 36.34/36.52 (step @p82 :rule process_scope :premises (@p134) :args (@t50)) % 36.34/36.52 (step @p84 :rule eq_resolve :premises (@p82 @p79)) % 36.34/36.52 (step @p85 :rule implies_elim :premises (@p84)) % 36.34/36.52 (step @p86 :rule chain_m_resolution :premises (@p85 @p43) :args (@t40 (@list false) (@list @t51))) % 36.34/36.52 (step @p87 :rule true_intro :premises (@p86)) % 36.34/36.52 (step @p88 :rule eq-symm :args (@t5 @t2)) % 36.34/36.52 (step @p89 :rule cong :premises (@p88) :args (@t6)) % 36.34/36.52 (step @p90 :rule eq_resolve :premises (@p2 @p89)) % 36.34/36.52 (step @p91 :rule instantiate :premises (@p90) :args (@t52)) % 36.34/36.52 (step @p92 :rule symm :premises (@p91)) % 36.34/36.52 (step @p93 :rule cong :premises (@p58 @p92) :args (@t53)) % 36.34/36.52 (step @p94 :rule trans :premises (@p93 @p87)) % 36.34/36.52 (step @p95 :rule true_elim :premises (@p94)) % 36.34/36.52 (step @p96 :rule cnf_or_pos :args (@t56)) % 36.34/36.52 (step @p97 :rule reordering :premises (@p96) :args ((or @t55 @t54 (not @t56)))) % 36.34/36.52 (step @p98 :rule chain_m_resolution :premises (@p97 @p95 @p49) :args (@t54 (@list false false) (@list @t53 @t56))) % 36.34/36.52 (step @p99 :rule eq-symm :args (@t3 tptp.nil)) % 36.34/36.52 (step @p100 :rule cong :premises (@p99) :args (@t9)) % 36.34/36.52 (step @p101 :rule cong :premises (@p100) :args (@t10)) % 36.34/36.55 (step @p102 :rule eq_resolve :premises (@p4 @p101)) % 36.34/36.55 (step @p103 :rule instantiate :premises (@p102) :args (@t52)) % 36.34/36.55 (step @p104 :rule cnf_equiv_pos2 :args (@t58)) % 36.34/36.55 (step @p105 :rule reordering :premises (@p104) :args ((or @t57 (not @t54) @t59))) % 36.34/36.55 (step @p106 :rule chain_m_resolution :premises (@p105 @p103 @p98) :args (@t59 @t60 (@list @t57 @t54))) % 36.34/36.55 (step @p107 :rule eq-symm :args (@t54 @t57)) % 36.34/36.55 (step @p108 :rule aci_norm :args ((= (or @t57 false) @t57))) % 36.34/36.55 (step @p109 :rule bool-or-taut2 :args ((or @t61) @t29 false (or @t42))) % 36.34/36.55 (step @p110 :rule cong :premises (@p109) :args ((forall @t17 (or @t61 @t30 @t29 @t42)))) % 36.34/36.55 (step @p111 :rule trans :premises (@p110 @p53)) % 36.34/36.55 (step @p112 :rule eq-symm :args (@t39 @t14)) % 36.34/36.55 (step @p113 :rule cong :premises (@p112) :args (@t62)) % 36.34/36.55 (step @p114 :rule nary_cong :premises (@p113 @p65 @p64 @p57) :args (@t63)) % 36.34/36.55 (step @p115 :rule cong :premises (@p114) :args (@t64)) % 36.34/36.55 (step @p116 :rule trans :premises (@p115 @p111)) % 36.34/36.55 (step @p117 :rule cong :premises (@p116) :args (@t65)) % 36.34/36.55 (step @p118 :rule trans :premises (@p117 @p52)) % 36.34/36.55 (step @p119 :rule refl :args (@t57)) % 36.34/36.55 (step @p120 :rule nary_cong :premises (@p119 @p118) :args (@t66)) % 36.34/36.55 (step @p121 :rule trans :premises (@p120 @p108)) % 36.34/36.55 (step @p122 :rule refl :args (@t54)) % 36.34/36.55 (step @p123 :rule cong :premises (@p122 @p121) :args (@t67)) % 36.34/36.55 (step @p124 :rule trans :premises (@p123 @p107)) % 36.34/36.55 (step @p125 :rule cong :premises (@p78 @p124) :args ((=> @t51 @t67))) % 36.34/36.55 (assume-push @p135 @t51) % 36.34/36.55 (step @p127 :rule instantiate :premises (@p43) :args ((@list 0 @t39))) % 36.34/36.55 (step-pop @p136 :rule scope :premises (@p127)) % 36.34/36.55 (step @p128 :rule process_scope :premises (@p136) :args (@t67)) % 36.34/36.55 (step @p130 :rule eq_resolve :premises (@p128 @p125)) % 36.34/36.55 (step @p131 :rule implies_elim :premises (@p130)) % 36.34/36.55 (step @p132 false :rule chain_m_resolution :premises (@p131 @p106 @p43) :args (false @t60 (@list @t58 @t51))) % 36.34/36.55 ) % 36.34/36.55 % SZS output end Proof % 36.34/36.55 % cvc5 exiting %------------------------------------------------------------------------------