TSTP Solution File: DAT087_1 by cvc5---1.0.5

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cvc5---1.0.5
% Problem  : DAT087_1 : TPTP v8.2.0. Released v6.1.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : do_cvc5 %s %d

% Computer : n026.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 May 29 16:43:00 EDT 2024

% Result   : Theorem 15.41s 15.60s
% Output   : Proof 15.41s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.11/0.13  % Problem    : DAT087_1 : TPTP v8.2.0. Released v6.1.0.
% 0.11/0.14  % Command    : do_cvc5 %s %d
% 0.14/0.35  % Computer : n026.cluster.edu
% 0.14/0.35  % Model    : x86_64 x86_64
% 0.14/0.35  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.35  % Memory   : 8042.1875MB
% 0.14/0.35  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.35  % CPULimit   : 300
% 0.14/0.35  % WCLimit    : 300
% 0.14/0.35  % DateTime   : Mon May 27 17:16:24 EDT 2024
% 0.14/0.35  % CPUTime    : 
% 0.20/0.50  %----Proving TF0_ARI
% 15.41/15.60  --- Run --finite-model-find --decision=internal at 15...
% 15.41/15.60  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 15...
% 15.41/15.60  % SZS status Theorem for /export/starexec/sandbox2/tmp/tmp.vxgFCAmk5l/cvc5---1.0.5_10011.smt2
% 15.41/15.60  % SZS output start Proof for /export/starexec/sandbox2/tmp/tmp.vxgFCAmk5l/cvc5---1.0.5_10011.smt2
% 15.41/15.60  (assume a0 (forall ((K Int) (L tptp.list)) (= (tptp.head (tptp.cons K L)) K)))
% 15.41/15.60  (assume a1 (forall ((K Int) (L tptp.list)) (= (tptp.tail (tptp.cons K L)) L)))
% 15.41/15.60  (assume a2 (forall ((L tptp.list)) (or (= L tptp.nil) (= L (tptp.cons (tptp.head L) (tptp.tail L))))))
% 15.41/15.60  (assume a3 (forall ((K Int) (L tptp.list)) (not (= (tptp.cons K L) tptp.nil))))
% 15.41/15.60  (assume a4 (forall ((X Int) (L tptp.list)) (= (tptp.in X L) (or (exists ((H Int) (T tptp.list)) (and (= L (tptp.cons H T)) (= X H))) (exists ((H Int) (T tptp.list)) (and (= L (tptp.cons H T)) (tptp.in X T)))))))
% 15.41/15.60  (assume a5 (forall ((N Int) (L tptp.list)) (= (tptp.inRange N L) (or (= L tptp.nil) (exists ((K Int) (T tptp.list)) (and (= L (tptp.cons K T)) (<= 0 K) (< K N) (tptp.inRange N T)))))))
% 15.41/15.60  (assume a6 (= (tptp.length tptp.nil) 0))
% 15.41/15.60  (assume a7 (forall ((H Int) (T tptp.list)) (= (tptp.length (tptp.cons H T)) (+ 1 (tptp.length T)))))
% 15.41/15.60  (assume a8 (forall ((K Int)) (= (tptp.count K tptp.nil) 0)))
% 15.41/15.60  (assume a9 (forall ((K Int) (H Int) (T tptp.list) (N Int)) (=> (not (= K H)) (= (tptp.count K (tptp.cons H T)) (tptp.count K T)))))
% 15.41/15.60  (assume a10 (forall ((K Int) (H Int) (T tptp.list) (N Int)) (=> (= K H) (= (tptp.count K (tptp.cons H T)) (+ (tptp.count K T) 1)))))
% 15.41/15.60  (assume a11 (forall ((L tptp.list)) (= (tptp.append tptp.nil L) L)))
% 15.41/15.60  (assume a12 (forall ((I Int) (K tptp.list) (L tptp.list)) (= (tptp.append (tptp.cons I K) L) (tptp.cons I (tptp.append K L)))))
% 15.41/15.60  (assume a13 (forall ((N Int) (L tptp.list)) (= (tptp.in N L) (> (tptp.count N L) 0))))
% 15.41/15.60  (assume a14 (not (not (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))))))
% 15.41/15.60  (assume a15 true)
% 15.41/15.60  (step t1 (cl (=> (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) false) (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) :rule implies_neg1)
% 15.41/15.60  (anchor :step t2)
% 15.41/15.60  (assume t2.a0 (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))))
% 15.41/15.60  (assume t2.a1 (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))
% 15.41/15.60  (step t2.t1 (cl (not (= (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0))) (not (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0)) :rule equiv_pos2)
% 15.41/15.60  (step t2.t2 (cl (= (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))))) :rule all_simplify)
% 15.41/15.60  (step t2.t3 (cl (= (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0))) :rule symm :premises (t2.t2))
% 15.41/15.60  (step t2.t4 (cl (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0)) :rule resolution :premises (t2.t1 t2.t3 t2.a0))
% 15.41/15.60  (step t2.t5 (cl (=> (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0) false) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0)) :rule implies_neg1)
% 15.41/15.60  (anchor :step t2.t6)
% 15.41/15.60  (assume t2.t6.a0 (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0))
% 15.41/15.60  (step t2.t6.t1 (cl (not (= (<= (+ (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) (+ (* (- 1.0) 0) (* 1.0 (- 1)))) false)) (not (<= (+ (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) (+ (* (- 1.0) 0) (* 1.0 (- 1))))) false) :rule equiv_pos2)
% 15.41/15.60  (step t2.t6.t2 (cl (= (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (to_real (+ (* (- 1) (tptp.count 1 tptp.nil)) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) :rule all_simplify)
% 15.41/15.60  (step t2.t6.t3 (cl (= (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (to_real (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))))) :rule all_simplify)
% 15.41/15.60  (step t2.t6.t4 (cl (= (+ (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) (+ (to_real (+ (* (- 1) (tptp.count 1 tptp.nil)) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (to_real (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))))) :rule cong :premises (t2.t6.t2 t2.t6.t3))
% 15.41/15.60  (step t2.t6.t5 (cl (= (+ (to_real (+ (* (- 1) (tptp.count 1 tptp.nil)) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (to_real (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) 0.0)) :rule all_simplify)
% 15.41/15.60  (step t2.t6.t6 (cl (= (+ (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) 0.0)) :rule trans :premises (t2.t6.t4 t2.t6.t5))
% 15.41/15.60  (step t2.t6.t7 (cl (= (* (- 1.0) 0) 0.0)) :rule all_simplify)
% 15.41/15.60  (step t2.t6.t8 (cl (= (* 1.0 (- 1)) (- 1.0))) :rule all_simplify)
% 15.41/15.60  (step t2.t6.t9 (cl (= (+ (* (- 1.0) 0) (* 1.0 (- 1))) (+ 0.0 (- 1.0)))) :rule cong :premises (t2.t6.t7 t2.t6.t8))
% 15.41/15.60  (step t2.t6.t10 (cl (= (+ 0.0 (- 1.0)) (- 1.0))) :rule all_simplify)
% 15.41/15.60  (step t2.t6.t11 (cl (= (+ (* (- 1.0) 0) (* 1.0 (- 1))) (- 1.0))) :rule trans :premises (t2.t6.t9 t2.t6.t10))
% 15.41/15.60  (step t2.t6.t12 (cl (= (<= (+ (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) (+ (* (- 1.0) 0) (* 1.0 (- 1)))) (<= 0.0 (- 1.0)))) :rule cong :premises (t2.t6.t6 t2.t6.t11))
% 15.41/15.60  (step t2.t6.t13 (cl (= (<= 0.0 (- 1.0)) false)) :rule all_simplify)
% 15.41/15.60  (step t2.t6.t14 (cl (= (<= (+ (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) (+ (* (- 1.0) 0) (* 1.0 (- 1)))) false)) :rule trans :premises (t2.t6.t12 t2.t6.t13))
% 15.41/15.60  (step t2.t6.t15 (cl (not (= (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* (- 1.0) 0))) (not (= (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (- 1)))) (<= (+ (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) (+ (* (- 1.0) 0) (* 1.0 (- 1))))) :rule la_generic :args ((- 1) (- 1) 1))
% 15.41/15.60  (step t2.t6.t16 (cl (=> (and (< (- 1.0) 0) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0)) (= (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* (- 1.0) 0)))) :rule la_mult_neg)
% 15.41/15.60  (step t2.t6.t17 (cl (not (and (< (- 1.0) 0) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0))) (= (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* (- 1.0) 0))) :rule implies :premises (t2.t6.t16))
% 15.41/15.60  (step t2.t6.t18 (cl (and (< (- 1.0) 0) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0)) (not (< (- 1.0) 0)) (not (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0))) :rule and_neg)
% 15.41/15.60  (step t2.t6.t19 (cl (= (= (< (- 1.0) 0) true) (< (- 1.0) 0))) :rule equiv_simplify)
% 15.41/15.60  (step t2.t6.t20 (cl (not (= (< (- 1.0) 0) true)) (< (- 1.0) 0)) :rule equiv1 :premises (t2.t6.t19))
% 15.41/15.60  (step t2.t6.t21 (cl (= (< (- 1.0) 0) true)) :rule hole :args ((< (- 1.0) 0)))
% 15.41/15.60  (step t2.t6.t22 (cl (< (- 1.0) 0)) :rule resolution :premises (t2.t6.t20 t2.t6.t21))
% 15.41/15.60  (step t2.t6.t23 (cl (and (< (- 1.0) 0) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0))) :rule resolution :premises (t2.t6.t18 t2.t6.t22 t2.t6.a0))
% 15.41/15.60  (step t2.t6.t24 (cl (= (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* (- 1.0) 0))) :rule resolution :premises (t2.t6.t17 t2.t6.t23))
% 15.41/15.60  (step t2.t6.t25 (cl (=> (and (> 1.0 0) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (- 1))) (= (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (- 1))))) :rule la_mult_pos)
% 15.41/15.60  (step t2.t6.t26 (cl (not (and (> 1.0 0) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (- 1)))) (= (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (- 1)))) :rule implies :premises (t2.t6.t25))
% 15.41/15.60  (step t2.t6.t27 (cl (and (> 1.0 0) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (- 1))) (not (> 1.0 0)) (not (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (- 1)))) :rule and_neg)
% 15.41/15.60  (step t2.t6.t28 (cl (= (= (> 1.0 0) true) (> 1.0 0))) :rule equiv_simplify)
% 15.41/15.60  (step t2.t6.t29 (cl (not (= (> 1.0 0) true)) (> 1.0 0)) :rule equiv1 :premises (t2.t6.t28))
% 15.41/15.60  (step t2.t6.t30 (cl (= (> 1.0 0) true)) :rule hole :args ((> 1.0 0)))
% 15.41/15.60  (step t2.t6.t31 (cl (> 1.0 0)) :rule resolution :premises (t2.t6.t29 t2.t6.t30))
% 15.41/15.60  (step t2.t6.t32 (cl (not (= (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (- 1)))) (not (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (- 1))) :rule equiv_pos2)
% 15.41/15.60  (step t2.t6.t33 (cl (= (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (- 1)) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) :rule all_simplify)
% 15.41/15.60  (step t2.t6.t34 (cl (= (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (- 1)))) :rule symm :premises (t2.t6.t33))
% 15.41/15.60  (step t2.t6.t35 (cl (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (- 1))) :rule resolution :premises (t2.t6.t32 t2.t6.t34 t2.a1))
% 15.41/15.60  (step t2.t6.t36 (cl (and (> 1.0 0) (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (- 1)))) :rule resolution :premises (t2.t6.t27 t2.t6.t31 t2.t6.t35))
% 15.41/15.60  (step t2.t6.t37 (cl (= (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (- 1)))) :rule resolution :premises (t2.t6.t26 t2.t6.t36))
% 15.41/15.60  (step t2.t6.t38 (cl (<= (+ (* (- 1.0) (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (* 1.0 (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) (+ (* (- 1.0) 0) (* 1.0 (- 1))))) :rule resolution :premises (t2.t6.t15 t2.t6.t24 t2.t6.t37))
% 15.41/15.60  (step t2.t6.t39 (cl false) :rule resolution :premises (t2.t6.t1 t2.t6.t14 t2.t6.t38))
% 15.41/15.60  (step t2.t6 (cl (not (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0)) false) :rule subproof :discharge (t2.t6.a0))
% 15.41/15.60  (step t2.t7 (cl (=> (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0) false) false) :rule resolution :premises (t2.t5 t2.t6))
% 15.41/15.60  (step t2.t8 (cl (=> (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0) false) (not false)) :rule implies_neg2)
% 15.41/15.60  (step t2.t9 (cl (=> (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0) false) (=> (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0) false)) :rule resolution :premises (t2.t7 t2.t8))
% 15.41/15.60  (step t2.t10 (cl (=> (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0) false)) :rule contraction :premises (t2.t9))
% 15.41/15.60  (step t2.t11 (cl (= (=> (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0) false) (not (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0)))) :rule implies_simplify)
% 15.41/15.60  (step t2.t12 (cl (not (=> (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0) false)) (not (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0))) :rule equiv1 :premises (t2.t11))
% 15.41/15.60  (step t2.t13 (cl (not (= (+ (tptp.count 1 tptp.nil) (* (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))) 0))) :rule resolution :premises (t2.t10 t2.t12))
% 15.41/15.60  (step t2.t14 (cl) :rule resolution :premises (t2.t4 t2.t13))
% 15.41/15.60  (step t2 (cl (not (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (not (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) false) :rule subproof :discharge (t2.a0 t2.a1))
% 15.41/15.60  (step t3 (cl (not (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) :rule and_pos)
% 15.41/15.60  (step t4 (cl (not (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) :rule and_pos)
% 15.41/15.60  (step t5 (cl false (not (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) (not (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))))) :rule resolution :premises (t2 t3 t4))
% 15.41/15.60  (step t6 (cl (not (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) (not (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) false) :rule reordering :premises (t5))
% 15.41/15.60  (step t7 (cl (not (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) false) :rule contraction :premises (t6))
% 15.41/15.60  (step t8 (cl (=> (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) false) false) :rule resolution :premises (t1 t7))
% 15.41/15.60  (step t9 (cl (=> (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) false) (not false)) :rule implies_neg2)
% 15.41/15.60  (step t10 (cl (=> (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) false) (=> (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) false)) :rule resolution :premises (t8 t9))
% 15.41/15.60  (step t11 (cl (=> (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) false)) :rule contraction :premises (t10))
% 15.41/15.60  (step t12 (cl (= (=> (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) false) (not (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))))) :rule implies_simplify)
% 15.41/15.60  (step t13 (cl (not (=> (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) false)) (not (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))))) :rule equiv1 :premises (t12))
% 15.41/15.60  (step t14 (cl (not (and (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))))) :rule resolution :premises (t11 t13))
% 15.41/15.60  (step t15 (cl (not (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (not (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) :rule not_and :premises (t14))
% 15.41/15.60  (step t16 (cl (not (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) (not (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))))) :rule reordering :premises (t15))
% 15.41/15.60  (step t17 (cl (=> (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L))))) :rule implies_neg1)
% 15.41/15.60  (anchor :step t18)
% 15.41/15.60  (assume t18.a0 (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))))
% 15.41/15.60  (step t18.t1 (cl (or (not (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L))))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))))) :rule forall_inst :args ((:= N 1) (:= L tptp.nil)))
% 15.41/15.60  (step t18.t2 (cl (not (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L))))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) :rule or :premises (t18.t1))
% 15.41/15.60  (step t18.t3 (cl (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) :rule resolution :premises (t18.t2 t18.a0))
% 15.41/15.60  (step t18 (cl (not (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L))))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) :rule subproof :discharge (t18.a0))
% 15.41/15.60  (step t19 (cl (=> (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) :rule resolution :premises (t17 t18))
% 15.41/15.60  (step t20 (cl (=> (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (not (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))))) :rule implies_neg2)
% 15.41/15.60  (step t21 (cl (=> (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) (=> (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))))) :rule resolution :premises (t19 t20))
% 15.41/15.60  (step t22 (cl (=> (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil))))) :rule contraction :premises (t21))
% 15.41/15.60  (step t23 (cl (not (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L))))) (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) :rule implies :premises (t22))
% 15.41/15.60  (step t24 (cl (not (= (not (not (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))))) (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))))) (not (not (not (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L))))))) (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L))))) :rule equiv_pos2)
% 15.41/15.60  (step t25 (cl (= (not (not (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))))) (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L)))))) :rule all_simplify)
% 15.41/15.60  (step t26 (cl (forall ((N Int) (L tptp.list)) (= (tptp.count N L) (tptp.count N (tptp.cons 1 L))))) :rule resolution :premises (t24 t25 a14))
% 15.41/15.60  (step t27 (cl (= (tptp.count 1 tptp.nil) (tptp.count 1 (tptp.cons 1 tptp.nil)))) :rule resolution :premises (t23 t26))
% 15.41/15.60  (step t28 (cl (not (= (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil)))) (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))))) (not (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil))))) (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) :rule equiv_pos2)
% 15.41/15.60  (step t29 (cl (= (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))))) :rule refl)
% 15.41/15.60  (step t30 (cl (= (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) :rule all_simplify)
% 15.41/15.60  (step t31 (cl (= (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil)))) (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))))) :rule cong :premises (t29 t30))
% 15.41/15.60  (step t32 (cl (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil)))) (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))) :rule implies_neg1)
% 15.41/15.60  (anchor :step t33)
% 15.41/15.60  (assume t33.a0 (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))))
% 15.41/15.60  (step t33.t1 (cl (or (not (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil))))) :rule forall_inst :args ((:= H 1) (:= T tptp.nil)))
% 15.41/15.60  (step t33.t2 (cl (not (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil)))) :rule or :premises (t33.t1))
% 15.41/15.60  (step t33.t3 (cl (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil)))) :rule resolution :premises (t33.t2 t33.a0))
% 15.41/15.60  (step t33 (cl (not (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil)))) :rule subproof :discharge (t33.a0))
% 15.41/15.60  (step t34 (cl (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil)))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil)))) :rule resolution :premises (t32 t33))
% 15.41/15.60  (step t35 (cl (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil)))) (not (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil))))) :rule implies_neg2)
% 15.41/15.60  (step t36 (cl (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil)))) (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil))))) :rule resolution :premises (t34 t35))
% 15.41/15.60  (step t37 (cl (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 (tptp.cons 1 tptp.nil)) (+ 1 (tptp.count 1 tptp.nil))))) :rule contraction :premises (t36))
% 15.41/15.60  (step t38 (cl (=> (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil)))))) :rule resolution :premises (t28 t31 t37))
% 15.41/15.60  (step t39 (cl (not (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))) (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) :rule implies :premises (t38))
% 15.41/15.60  (step t40 (cl (not (= (forall ((K Int) (H Int) (T tptp.list) (N Int)) (=> (= K H) (= (tptp.count K (tptp.cons H T)) (+ (tptp.count K T) 1)))) (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))))) (not (forall ((K Int) (H Int) (T tptp.list) (N Int)) (=> (= K H) (= (tptp.count K (tptp.cons H T)) (+ (tptp.count K T) 1))))) (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))) :rule equiv_pos2)
% 15.41/15.60  (anchor :step t41 :args ((K Int) (:= K K) (H Int) (:= H H) (T tptp.list) (:= T T) (N Int) (:= N N)))
% 15.41/15.60  (step t41.t1 (cl (= K K)) :rule refl)
% 15.41/15.60  (step t41.t2 (cl (= H H)) :rule refl)
% 15.41/15.60  (step t41.t3 (cl (= T T)) :rule refl)
% 15.41/15.60  (step t41.t4 (cl (= N N)) :rule refl)
% 15.41/15.60  (step t41.t5 (cl (= (= K H) (= K H))) :rule refl)
% 15.41/15.60  (step t41.t6 (cl (= (tptp.count K (tptp.cons H T)) (tptp.count K (tptp.cons H T)))) :rule refl)
% 15.41/15.60  (step t41.t7 (cl (= (+ (tptp.count K T) 1) (+ 1 (tptp.count K T)))) :rule all_simplify)
% 15.41/15.60  (step t41.t8 (cl (= (= (tptp.count K (tptp.cons H T)) (+ (tptp.count K T) 1)) (= (tptp.count K (tptp.cons H T)) (+ 1 (tptp.count K T))))) :rule cong :premises (t41.t6 t41.t7))
% 15.41/15.60  (step t41.t9 (cl (= (=> (= K H) (= (tptp.count K (tptp.cons H T)) (+ (tptp.count K T) 1))) (=> (= K H) (= (tptp.count K (tptp.cons H T)) (+ 1 (tptp.count K T)))))) :rule cong :premises (t41.t5 t41.t8))
% 15.41/15.60  (step t41 (cl (= (forall ((K Int) (H Int) (T tptp.list) (N Int)) (=> (= K H) (= (tptp.count K (tptp.cons H T)) (+ (tptp.count K T) 1)))) (forall ((K Int) (H Int) (T tptp.list) (N Int)) (=> (= K H) (= (tptp.count K (tptp.cons H T)) (+ 1 (tptp.count K T))))))) :rule bind)
% 15.41/15.60  (step t42 (cl (= (forall ((K Int) (H Int) (T tptp.list) (N Int)) (=> (= K H) (= (tptp.count K (tptp.cons H T)) (+ 1 (tptp.count K T))))) (forall ((K Int) (H Int) (T tptp.list) (N Int)) (or (not (= K H)) (= (tptp.count K (tptp.cons H T)) (+ 1 (tptp.count K T))))))) :rule all_simplify)
% 15.41/15.60  (step t43 (cl (= (forall ((K Int) (H Int) (T tptp.list) (N Int)) (or (not (= K H)) (= (tptp.count K (tptp.cons H T)) (+ 1 (tptp.count K T))))) (forall ((K Int) (H Int) (T tptp.list)) (or (not (= K H)) (= (tptp.count K (tptp.cons H T)) (+ 1 (tptp.count K T))))))) :rule all_simplify)
% 15.41/15.60  (step t44 (cl (= (forall ((K Int) (H Int) (T tptp.list)) (or (not (= K H)) (= (tptp.count K (tptp.cons H T)) (+ 1 (tptp.count K T))))) (forall ((H Int) (T tptp.list)) (or (not (= H H)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))))) :rule all_simplify)
% 15.41/15.60  (anchor :step t45 :args ((H Int) (:= H H) (T tptp.list) (:= T T)))
% 15.41/15.60  (step t45.t1 (cl (= H H)) :rule refl)
% 15.41/15.60  (step t45.t2 (cl (= T T)) :rule refl)
% 15.41/15.60  (step t45.t3 (cl (= (= H H) true)) :rule all_simplify)
% 15.41/15.60  (step t45.t4 (cl (= (not (= H H)) (not true))) :rule cong :premises (t45.t3))
% 15.41/15.60  (step t45.t5 (cl (= (not true) false)) :rule all_simplify)
% 15.41/15.60  (step t45.t6 (cl (= (not (= H H)) false)) :rule trans :premises (t45.t4 t45.t5))
% 15.41/15.60  (step t45.t7 (cl (= (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))) :rule refl)
% 15.41/15.60  (step t45.t8 (cl (= (or (not (= H H)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (or false (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))))) :rule cong :premises (t45.t6 t45.t7))
% 15.41/15.60  (step t45.t9 (cl (= (or false (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))) :rule all_simplify)
% 15.41/15.60  (step t45.t10 (cl (= (or (not (= H H)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))) :rule trans :premises (t45.t8 t45.t9))
% 15.41/15.60  (step t45 (cl (= (forall ((H Int) (T tptp.list)) (or (not (= H H)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))) (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))))) :rule bind)
% 15.41/15.60  (step t46 (cl (= (forall ((K Int) (H Int) (T tptp.list)) (or (not (= K H)) (= (tptp.count K (tptp.cons H T)) (+ 1 (tptp.count K T))))) (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))))) :rule trans :premises (t44 t45))
% 15.41/15.60  (step t47 (cl (= (forall ((K Int) (H Int) (T tptp.list) (N Int)) (or (not (= K H)) (= (tptp.count K (tptp.cons H T)) (+ 1 (tptp.count K T))))) (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))))) :rule trans :premises (t43 t46))
% 15.41/15.60  (step t48 (cl (= (forall ((K Int) (H Int) (T tptp.list) (N Int)) (=> (= K H) (= (tptp.count K (tptp.cons H T)) (+ 1 (tptp.count K T))))) (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))))) :rule trans :premises (t42 t47))
% 15.41/15.60  (step t49 (cl (= (forall ((K Int) (H Int) (T tptp.list) (N Int)) (=> (= K H) (= (tptp.count K (tptp.cons H T)) (+ (tptp.count K T) 1)))) (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T)))))) :rule trans :premises (t41 t48))
% 15.41/15.60  (step t50 (cl (forall ((H Int) (T tptp.list)) (= (tptp.count H (tptp.cons H T)) (+ 1 (tptp.count H T))))) :rule resolution :premises (t40 t49 a10))
% 15.41/15.60  (step t51 (cl (= (tptp.count 1 tptp.nil) (+ (- 1) (tptp.count 1 (tptp.cons 1 tptp.nil))))) :rule resolution :premises (t39 t50))
% 15.41/15.60  (step t52 (cl) :rule resolution :premises (t16 t27 t51))
% 15.41/15.60  
% 15.41/15.60  % SZS output end Proof for /export/starexec/sandbox2/tmp/tmp.vxgFCAmk5l/cvc5---1.0.5_10011.smt2
% 15.41/15.60  % cvc5---1.0.5 exiting
% 15.41/15.60  % cvc5---1.0.5 exiting
%------------------------------------------------------------------------------