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