TSTP Solution File: SYN075-1 by cvc5---1.0.5

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cvc5---1.0.5
% Problem  : SYN075-1 : TPTP v8.2.0. Released v1.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : do_cvc5 %s %d

% 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 May 29 18:24:27 EDT 2024

% Result   : Unsatisfiable 0.38s 0.57s
% Output   : Proof 0.38s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.14  % Problem    : SYN075-1 : TPTP v8.2.0. Released v1.0.0.
% 0.07/0.15  % Command    : do_cvc5 %s %d
% 0.16/0.36  % Computer : n006.cluster.edu
% 0.16/0.36  % Model    : x86_64 x86_64
% 0.16/0.36  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.16/0.36  % Memory   : 8042.1875MB
% 0.16/0.36  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.16/0.37  % CPULimit   : 300
% 0.16/0.37  % WCLimit    : 300
% 0.16/0.37  % DateTime   : Tue May 28 13:54:54 EDT 2024
% 0.16/0.37  % CPUTime    : 
% 0.36/0.53  %----Proving TF0_NAR, FOF, or CNF
% 0.36/0.54  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 10...
% 0.38/0.57  % SZS status Unsatisfiable for /export/starexec/sandbox2/tmp/tmp.Cn0UoJ7pdu/cvc5---1.0.5_5695.smt2
% 0.38/0.57  % SZS output start Proof for /export/starexec/sandbox2/tmp/tmp.Cn0UoJ7pdu/cvc5---1.0.5_5695.smt2
% 0.38/0.59  (assume a0 (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= X tptp.a))))
% 0.38/0.59  (assume a1 (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= Y tptp.b))))
% 0.38/0.59  (assume a2 (forall ((X $$unsorted) (Y $$unsorted)) (or (not (= X tptp.a)) (not (= Y tptp.b)) (tptp.big_f X Y))))
% 0.38/0.59  (assume a3 (forall ((Y $$unsorted) (X $$unsorted)) (or (not (tptp.big_f Y (tptp.f X))) (not (= Y (tptp.g X))) (= (tptp.f X) X))))
% 0.38/0.59  (assume a4 (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (tptp.big_f Y (tptp.f X))) (= Y (tptp.g X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))
% 0.38/0.59  (assume a5 (forall ((Y $$unsorted) (X $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (= (tptp.f X) X))))
% 0.38/0.59  (assume a6 (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= (tptp.h X Z) Z))))
% 0.38/0.59  (assume a7 (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (not (= (tptp.h X Z) Z)) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))
% 0.38/0.59  (assume a8 (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.f X) X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= (tptp.h X Z) Z))))
% 0.38/0.59  (assume a9 (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.f X) X)) (not (= (tptp.h X Z) Z)) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))
% 0.38/0.59  (step t1 (cl (not (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a)))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a))) :rule or_pos)
% 0.38/0.59  (step t2 (cl (= tptp.a (tptp.h tptp.b tptp.a)) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (not (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule reordering :premises (t1))
% 0.38/0.59  (step t3 (cl (not (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))) :rule or_pos)
% 0.38/0.59  (step t4 (cl (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (not (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))))) :rule reordering :premises (t3))
% 0.38/0.59  (step t5 (cl (not (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)))) (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b))) :rule or_pos)
% 0.38/0.59  (step t6 (cl (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)) (not (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b))))) :rule reordering :premises (t5))
% 0.38/0.59  (step t7 (cl (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f tptp.a tptp.b)) (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a)))) :rule and_neg)
% 0.38/0.59  (step t8 (cl (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule implies_neg1)
% 0.38/0.59  (anchor :step t9)
% 0.38/0.59  (assume t9.a0 (tptp.big_f tptp.a tptp.b))
% 0.38/0.59  (assume t9.a1 (= tptp.b (tptp.f tptp.b)))
% 0.38/0.59  (assume t9.a2 (= tptp.a (tptp.h tptp.b tptp.a)))
% 0.38/0.59  (step t9.t1 (cl (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) :rule implies_neg1)
% 0.38/0.59  (anchor :step t9.t2)
% 0.38/0.59  (assume t9.t2.a0 (tptp.big_f tptp.a tptp.b))
% 0.38/0.59  (assume t9.t2.a1 (= tptp.a (tptp.h tptp.b tptp.a)))
% 0.38/0.59  (assume t9.t2.a2 (= tptp.b (tptp.f tptp.b)))
% 0.38/0.59  (step t9.t2.t1 (cl (= (= (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) true) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))) :rule equiv_simplify)
% 0.38/0.59  (step t9.t2.t2 (cl (not (= (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) true)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule equiv1 :premises (t9.t2.t1))
% 0.38/0.59  (step t9.t2.t3 (cl (= (tptp.h tptp.b tptp.a) tptp.a)) :rule symm :premises (t9.t2.a1))
% 0.38/0.59  (step t9.t2.t4 (cl (= (tptp.f tptp.b) tptp.b)) :rule symm :premises (t9.t2.a2))
% 0.38/0.59  (step t9.t2.t5 (cl (= (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (tptp.big_f tptp.a tptp.b))) :rule cong :premises (t9.t2.t3 t9.t2.t4))
% 0.38/0.59  (step t9.t2.t6 (cl (= (= (tptp.big_f tptp.a tptp.b) true) (tptp.big_f tptp.a tptp.b))) :rule equiv_simplify)
% 0.38/0.59  (step t9.t2.t7 (cl (= (tptp.big_f tptp.a tptp.b) true) (not (tptp.big_f tptp.a tptp.b))) :rule equiv2 :premises (t9.t2.t6))
% 0.38/0.59  (step t9.t2.t8 (cl (= (tptp.big_f tptp.a tptp.b) true)) :rule resolution :premises (t9.t2.t7 t9.t2.a0))
% 0.38/0.59  (step t9.t2.t9 (cl (= (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) true)) :rule trans :premises (t9.t2.t5 t9.t2.t8))
% 0.38/0.59  (step t9.t2.t10 (cl (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule resolution :premises (t9.t2.t2 t9.t2.t9))
% 0.38/0.59  (step t9.t2 (cl (not (tptp.big_f tptp.a tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule subproof :discharge (t9.t2.a0 t9.t2.a1 t9.t2.a2))
% 0.38/0.59  (step t9.t3 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) (tptp.big_f tptp.a tptp.b)) :rule and_pos)
% 0.38/0.59  (step t9.t4 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) (= tptp.a (tptp.h tptp.b tptp.a))) :rule and_pos)
% 0.38/0.59  (step t9.t5 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) (= tptp.b (tptp.f tptp.b))) :rule and_pos)
% 0.38/0.59  (step t9.t6 (cl (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (not (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) (not (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) (not (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b))))) :rule resolution :premises (t9.t2 t9.t3 t9.t4 t9.t5))
% 0.38/0.59  (step t9.t7 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) (not (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) (not (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule reordering :premises (t9.t6))
% 0.38/0.59  (step t9.t8 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule contraction :premises (t9.t7))
% 0.38/0.59  (step t9.t9 (cl (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule resolution :premises (t9.t1 t9.t8))
% 0.38/0.59  (step t9.t10 (cl (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))) :rule implies_neg2)
% 0.38/0.59  (step t9.t11 (cl (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))) :rule resolution :premises (t9.t9 t9.t10))
% 0.38/0.59  (step t9.t12 (cl (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))) :rule contraction :premises (t9.t11))
% 0.38/0.59  (step t9.t13 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule implies :premises (t9.t12))
% 0.38/0.59  (step t9.t14 (cl (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b))) (not (tptp.big_f tptp.a tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (= tptp.b (tptp.f tptp.b)))) :rule and_neg)
% 0.38/0.59  (step t9.t15 (cl (and (tptp.big_f tptp.a tptp.b) (= tptp.a (tptp.h tptp.b tptp.a)) (= tptp.b (tptp.f tptp.b)))) :rule resolution :premises (t9.t14 t9.a0 t9.a2 t9.a1))
% 0.38/0.59  (step t9.t16 (cl (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule resolution :premises (t9.t13 t9.t15))
% 0.38/0.59  (step t9 (cl (not (tptp.big_f tptp.a tptp.b)) (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule subproof :discharge (t9.a0 t9.a1 t9.a2))
% 0.38/0.59  (step t10 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (tptp.big_f tptp.a tptp.b)) :rule and_pos)
% 0.38/0.59  (step t11 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (= tptp.b (tptp.f tptp.b))) :rule and_pos)
% 0.38/0.59  (step t12 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (= tptp.a (tptp.h tptp.b tptp.a))) :rule and_pos)
% 0.38/0.59  (step t13 (cl (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (not (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (not (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (not (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule resolution :premises (t9 t10 t11 t12))
% 0.38/0.59  (step t14 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (not (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (not (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule reordering :premises (t13))
% 0.38/0.59  (step t15 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule contraction :premises (t14))
% 0.38/0.59  (step t16 (cl (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule resolution :premises (t8 t15))
% 0.38/0.59  (step t17 (cl (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))) :rule implies_neg2)
% 0.38/0.59  (step t18 (cl (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))) :rule resolution :premises (t16 t17))
% 0.38/0.59  (step t19 (cl (=> (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))) :rule contraction :premises (t18))
% 0.38/0.59  (step t20 (cl (not (and (tptp.big_f tptp.a tptp.b) (= tptp.b (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule implies :premises (t19))
% 0.38/0.59  (step t21 (cl (not (tptp.big_f tptp.a tptp.b)) (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule resolution :premises (t7 t20))
% 0.38/0.59  (step t22 (cl (not (tptp.big_f tptp.a tptp.b)) (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a)))) :rule reordering :premises (t21))
% 0.38/0.59  (step t23 (cl (not (= (forall ((X $$unsorted) (Y $$unsorted)) (or (not (= X tptp.a)) (not (= Y tptp.b)) (tptp.big_f X Y))) (tptp.big_f tptp.a tptp.b))) (not (forall ((X $$unsorted) (Y $$unsorted)) (or (not (= X tptp.a)) (not (= Y tptp.b)) (tptp.big_f X Y)))) (tptp.big_f tptp.a tptp.b)) :rule equiv_pos2)
% 0.38/0.59  (anchor :step t24 :args ((X $$unsorted) (:= X X) (Y $$unsorted) (:= Y Y)))
% 0.38/0.59  (step t24.t1 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t24.t2 (cl (= Y Y)) :rule refl)
% 0.38/0.59  (step t24.t3 (cl (= (= X tptp.a) (= tptp.a X))) :rule all_simplify)
% 0.38/0.59  (step t24.t4 (cl (= (not (= X tptp.a)) (not (= tptp.a X)))) :rule cong :premises (t24.t3))
% 0.38/0.59  (step t24.t5 (cl (= (= Y tptp.b) (= tptp.b Y))) :rule all_simplify)
% 0.38/0.59  (step t24.t6 (cl (= (not (= Y tptp.b)) (not (= tptp.b Y)))) :rule cong :premises (t24.t5))
% 0.38/0.59  (step t24.t7 (cl (= (tptp.big_f X Y) (tptp.big_f X Y))) :rule refl)
% 0.38/0.59  (step t24.t8 (cl (= (or (not (= X tptp.a)) (not (= Y tptp.b)) (tptp.big_f X Y)) (or (not (= tptp.a X)) (not (= tptp.b Y)) (tptp.big_f X Y)))) :rule cong :premises (t24.t4 t24.t6 t24.t7))
% 0.38/0.59  (step t24 (cl (= (forall ((X $$unsorted) (Y $$unsorted)) (or (not (= X tptp.a)) (not (= Y tptp.b)) (tptp.big_f X Y))) (forall ((X $$unsorted) (Y $$unsorted)) (or (not (= tptp.a X)) (not (= tptp.b Y)) (tptp.big_f X Y))))) :rule bind)
% 0.38/0.59  (step t25 (cl (= (forall ((X $$unsorted) (Y $$unsorted)) (or (not (= tptp.a X)) (not (= tptp.b Y)) (tptp.big_f X Y))) (or (not (= tptp.a tptp.a)) (not (= tptp.b tptp.b)) (tptp.big_f tptp.a tptp.b)))) :rule all_simplify)
% 0.38/0.59  (step t26 (cl (= (= tptp.a tptp.a) true)) :rule all_simplify)
% 0.38/0.59  (step t27 (cl (= (not (= tptp.a tptp.a)) (not true))) :rule cong :premises (t26))
% 0.38/0.59  (step t28 (cl (= (not true) false)) :rule all_simplify)
% 0.38/0.59  (step t29 (cl (= (not (= tptp.a tptp.a)) false)) :rule trans :premises (t27 t28))
% 0.38/0.59  (step t30 (cl (= (= tptp.b tptp.b) true)) :rule all_simplify)
% 0.38/0.59  (step t31 (cl (= (not (= tptp.b tptp.b)) (not true))) :rule cong :premises (t30))
% 0.38/0.59  (step t32 (cl (= (not (= tptp.b tptp.b)) false)) :rule trans :premises (t31 t28))
% 0.38/0.59  (step t33 (cl (= (tptp.big_f tptp.a tptp.b) (tptp.big_f tptp.a tptp.b))) :rule refl)
% 0.38/0.59  (step t34 (cl (= (or (not (= tptp.a tptp.a)) (not (= tptp.b tptp.b)) (tptp.big_f tptp.a tptp.b)) (or false false (tptp.big_f tptp.a tptp.b)))) :rule cong :premises (t29 t32 t33))
% 0.38/0.59  (step t35 (cl (= (or false false (tptp.big_f tptp.a tptp.b)) (tptp.big_f tptp.a tptp.b))) :rule all_simplify)
% 0.38/0.59  (step t36 (cl (= (or (not (= tptp.a tptp.a)) (not (= tptp.b tptp.b)) (tptp.big_f tptp.a tptp.b)) (tptp.big_f tptp.a tptp.b))) :rule trans :premises (t34 t35))
% 0.38/0.59  (step t37 (cl (= (forall ((X $$unsorted) (Y $$unsorted)) (or (not (= tptp.a X)) (not (= tptp.b Y)) (tptp.big_f X Y))) (tptp.big_f tptp.a tptp.b))) :rule trans :premises (t25 t36))
% 0.38/0.59  (step t38 (cl (= (forall ((X $$unsorted) (Y $$unsorted)) (or (not (= X tptp.a)) (not (= Y tptp.b)) (tptp.big_f X Y))) (tptp.big_f tptp.a tptp.b))) :rule trans :premises (t24 t37))
% 0.38/0.59  (step t39 (cl (tptp.big_f tptp.a tptp.b)) :rule resolution :premises (t23 t38 a2))
% 0.38/0.59  (step t40 (cl (not (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))) :rule or_pos)
% 0.38/0.59  (step t41 (cl (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (not (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))))) :rule reordering :premises (t40))
% 0.38/0.59  (step t42 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) :rule implies_neg1)
% 0.38/0.59  (anchor :step t43)
% 0.38/0.59  (assume t43.a0 (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))
% 0.38/0.59  (step t43.t1 (cl (or (not (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))))) :rule forall_inst :args ((:= X tptp.b) (:= Z tptp.a)))
% 0.38/0.59  (step t43.t2 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule or :premises (t43.t1))
% 0.38/0.59  (step t43.t3 (cl (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule resolution :premises (t43.t2 t43.a0))
% 0.38/0.59  (step t43 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule subproof :discharge (t43.a0))
% 0.38/0.59  (step t44 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule resolution :premises (t42 t43))
% 0.38/0.59  (step t45 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) (not (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))))) :rule implies_neg2)
% 0.38/0.59  (step t46 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))))) :rule resolution :premises (t44 t45))
% 0.38/0.59  (step t47 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))))) :rule contraction :premises (t46))
% 0.38/0.59  (step t48 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule implies :premises (t47))
% 0.38/0.59  (step t49 (cl (not (= (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (not (= (tptp.h X Z) Z)) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))) (not (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (not (= (tptp.h X Z) Z)) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) :rule equiv_pos2)
% 0.38/0.59  (anchor :step t50 :args ((Y $$unsorted) (:= Y Y) (X $$unsorted) (:= X X) (Z $$unsorted) (:= Z Z)))
% 0.38/0.59  (step t50.t1 (cl (= Y Y)) :rule refl)
% 0.38/0.59  (step t50.t2 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t50.t3 (cl (= Z Z)) :rule refl)
% 0.38/0.59  (step t50.t4 (cl (= (not (= Y (tptp.g X))) (not (= Y (tptp.g X))))) :rule refl)
% 0.38/0.59  (step t50.t5 (cl (= (tptp.big_f Y (tptp.f X)) (tptp.big_f Y (tptp.f X)))) :rule refl)
% 0.38/0.59  (step t50.t6 (cl (= (= (tptp.h X Z) Z) (= Z (tptp.h X Z)))) :rule all_simplify)
% 0.38/0.59  (step t50.t7 (cl (= (not (= (tptp.h X Z) Z)) (not (= Z (tptp.h X Z))))) :rule cong :premises (t50.t6))
% 0.38/0.59  (step t50.t8 (cl (= (not (tptp.big_f (tptp.h X Z) (tptp.f X))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) :rule refl)
% 0.38/0.59  (step t50.t9 (cl (= (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (not (= (tptp.h X Z) Z)) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) :rule cong :premises (t50.t4 t50.t5 t50.t7 t50.t8))
% 0.38/0.59  (step t50 (cl (= (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (not (= (tptp.h X Z) Z)) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))) :rule bind)
% 0.38/0.59  (step t51 (cl (= (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))) :rule all_simplify)
% 0.38/0.59  (anchor :step t52 :args ((X $$unsorted) (:= X X) (Z $$unsorted) (:= Z Z)))
% 0.38/0.59  (step t52.t1 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t52.t2 (cl (= Z Z)) :rule refl)
% 0.38/0.59  (step t52.t3 (cl (= (= (tptp.g X) (tptp.g X)) true)) :rule all_simplify)
% 0.38/0.59  (step t52.t4 (cl (= (not (= (tptp.g X) (tptp.g X))) (not true))) :rule cong :premises (t52.t3))
% 0.38/0.59  (step t52.t5 (cl (= (not (= (tptp.g X) (tptp.g X))) false)) :rule trans :premises (t52.t4 t28))
% 0.38/0.59  (step t52.t6 (cl (= (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.g X) (tptp.f X)))) :rule refl)
% 0.38/0.59  (step t52.t7 (cl (= (not (= Z (tptp.h X Z))) (not (= Z (tptp.h X Z))))) :rule refl)
% 0.38/0.59  (step t52.t8 (cl (= (not (tptp.big_f (tptp.h X Z) (tptp.f X))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) :rule refl)
% 0.38/0.59  (step t52.t9 (cl (= (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))) (or false (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) :rule cong :premises (t52.t5 t52.t6 t52.t7 t52.t8))
% 0.38/0.59  (step t52.t10 (cl (= (or false (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) :rule all_simplify)
% 0.38/0.59  (step t52.t11 (cl (= (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) :rule trans :premises (t52.t9 t52.t10))
% 0.38/0.59  (step t52 (cl (= (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))) :rule bind)
% 0.38/0.59  (step t53 (cl (= (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))) :rule trans :premises (t51 t52))
% 0.38/0.59  (step t54 (cl (= (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (not (= (tptp.h X Z) Z)) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))) :rule trans :premises (t50 t53))
% 0.38/0.59  (step t55 (cl (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) :rule resolution :premises (t49 t54 a7))
% 0.38/0.59  (step t56 (cl (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule resolution :premises (t48 t55))
% 0.38/0.59  (step t57 (cl (not (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)))) (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b))) :rule or_pos)
% 0.38/0.59  (step t58 (cl (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)) (not (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b))))) :rule reordering :premises (t57))
% 0.38/0.59  (step t59 (cl (=> (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)))) (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))))) :rule implies_neg1)
% 0.38/0.59  (anchor :step t60)
% 0.38/0.59  (assume t60.a0 (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))))
% 0.38/0.59  (step t60.t1 (cl (or (not (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b))))) :rule forall_inst :args ((:= X tptp.b)))
% 0.38/0.59  (step t60.t2 (cl (not (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)))) :rule or :premises (t60.t1))
% 0.38/0.59  (step t60.t3 (cl (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)))) :rule resolution :premises (t60.t2 t60.a0))
% 0.38/0.59  (step t60 (cl (not (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)))) :rule subproof :discharge (t60.a0))
% 0.38/0.59  (step t61 (cl (=> (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)))) :rule resolution :premises (t59 t60))
% 0.38/0.59  (step t62 (cl (=> (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)))) (not (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b))))) :rule implies_neg2)
% 0.38/0.59  (step t63 (cl (=> (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)))) (=> (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b))))) :rule resolution :premises (t61 t62))
% 0.38/0.59  (step t64 (cl (=> (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b))))) :rule contraction :premises (t63))
% 0.38/0.59  (step t65 (cl (not (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)))) :rule implies :premises (t64))
% 0.38/0.59  (step t66 (cl (not (= (forall ((Y $$unsorted) (X $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (= (tptp.f X) X))) (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))))) (not (forall ((Y $$unsorted) (X $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (= (tptp.f X) X)))) (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))))) :rule equiv_pos2)
% 0.38/0.59  (anchor :step t67 :args ((Y $$unsorted) (:= Y Y) (X $$unsorted) (:= X X)))
% 0.38/0.59  (step t67.t1 (cl (= Y Y)) :rule refl)
% 0.38/0.59  (step t67.t2 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t67.t3 (cl (= (not (= Y (tptp.g X))) (not (= Y (tptp.g X))))) :rule refl)
% 0.38/0.59  (step t67.t4 (cl (= (tptp.big_f Y (tptp.f X)) (tptp.big_f Y (tptp.f X)))) :rule refl)
% 0.38/0.59  (step t67.t5 (cl (= (= (tptp.f X) X) (= X (tptp.f X)))) :rule all_simplify)
% 0.38/0.59  (step t67.t6 (cl (= (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (= (tptp.f X) X)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (= X (tptp.f X))))) :rule cong :premises (t67.t3 t67.t4 t67.t5))
% 0.38/0.59  (step t67 (cl (= (forall ((Y $$unsorted) (X $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (= (tptp.f X) X))) (forall ((Y $$unsorted) (X $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (= X (tptp.f X)))))) :rule bind)
% 0.38/0.59  (step t68 (cl (= (forall ((Y $$unsorted) (X $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (= X (tptp.f X)))) (forall ((X $$unsorted)) (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))))) :rule all_simplify)
% 0.38/0.59  (anchor :step t69 :args ((X $$unsorted) (:= X X)))
% 0.38/0.59  (step t69.t1 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t69.t2 (cl (= (= (tptp.g X) (tptp.g X)) true)) :rule all_simplify)
% 0.38/0.59  (step t69.t3 (cl (= (not (= (tptp.g X) (tptp.g X))) (not true))) :rule cong :premises (t69.t2))
% 0.38/0.59  (step t69.t4 (cl (= (not (= (tptp.g X) (tptp.g X))) false)) :rule trans :premises (t69.t3 t28))
% 0.38/0.59  (step t69.t5 (cl (= (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.g X) (tptp.f X)))) :rule refl)
% 0.38/0.59  (step t69.t6 (cl (= (= X (tptp.f X)) (= X (tptp.f X)))) :rule refl)
% 0.38/0.59  (step t69.t7 (cl (= (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))) (or false (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))))) :rule cong :premises (t69.t4 t69.t5 t69.t6))
% 0.38/0.59  (step t69.t8 (cl (= (or false (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))))) :rule all_simplify)
% 0.38/0.59  (step t69.t9 (cl (= (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))))) :rule trans :premises (t69.t7 t69.t8))
% 0.38/0.59  (step t69 (cl (= (forall ((X $$unsorted)) (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))) (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))))) :rule bind)
% 0.38/0.59  (step t70 (cl (= (forall ((Y $$unsorted) (X $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (= X (tptp.f X)))) (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))))) :rule trans :premises (t68 t69))
% 0.38/0.59  (step t71 (cl (= (forall ((Y $$unsorted) (X $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (= (tptp.f X) X))) (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X)))))) :rule trans :premises (t67 t70))
% 0.38/0.59  (step t72 (cl (forall ((X $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (= X (tptp.f X))))) :rule resolution :premises (t66 t71 a5))
% 0.38/0.59  (step t73 (cl (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.b (tptp.f tptp.b)))) :rule resolution :premises (t65 t72))
% 0.38/0.59  (step t74 (cl (not (= tptp.a (tptp.h tptp.b tptp.a))) (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (not (= tptp.a (tptp.h tptp.b tptp.a))) (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) :rule resolution :premises (t22 t39 t41 t56 t58 t73))
% 0.38/0.59  (step t75 (cl (not (= tptp.a (tptp.h tptp.b tptp.a))) (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) :rule contraction :premises (t74))
% 0.38/0.59  (step t76 (cl (=> (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X))) (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a)))) (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X)))) :rule implies_neg1)
% 0.38/0.59  (anchor :step t77)
% 0.38/0.59  (assume t77.a0 (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X))))
% 0.38/0.59  (step t77.t1 (cl (or (not (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X)))) (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule forall_inst :args ((:= X (tptp.h tptp.b tptp.a)) (:= Y (tptp.f tptp.b))))
% 0.38/0.59  (step t77.t2 (cl (not (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X)))) (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule or :premises (t77.t1))
% 0.38/0.59  (step t77.t3 (cl (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule resolution :premises (t77.t2 t77.a0))
% 0.38/0.59  (step t77 (cl (not (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X)))) (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule subproof :discharge (t77.a0))
% 0.38/0.59  (step t78 (cl (=> (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X))) (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a)))) (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule resolution :premises (t76 t77))
% 0.38/0.59  (step t79 (cl (=> (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X))) (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a)))) (not (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule implies_neg2)
% 0.38/0.59  (step t80 (cl (=> (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X))) (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a)))) (=> (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X))) (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule resolution :premises (t78 t79))
% 0.38/0.59  (step t81 (cl (=> (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X))) (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule contraction :premises (t80))
% 0.38/0.59  (step t82 (cl (not (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X)))) (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule implies :premises (t81))
% 0.38/0.59  (step t83 (cl (not (= (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= X tptp.a))) (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X))))) (not (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= X tptp.a)))) (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X)))) :rule equiv_pos2)
% 0.38/0.59  (anchor :step t84 :args ((X $$unsorted) (:= X X) (Y $$unsorted) (:= Y Y)))
% 0.38/0.59  (step t84.t1 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t84.t2 (cl (= Y Y)) :rule refl)
% 0.38/0.59  (step t84.t3 (cl (= (not (tptp.big_f X Y)) (not (tptp.big_f X Y)))) :rule refl)
% 0.38/0.59  (step t84.t4 (cl (= (= X tptp.a) (= tptp.a X))) :rule all_simplify)
% 0.38/0.59  (step t84.t5 (cl (= (or (not (tptp.big_f X Y)) (= X tptp.a)) (or (not (tptp.big_f X Y)) (= tptp.a X)))) :rule cong :premises (t84.t3 t84.t4))
% 0.38/0.59  (step t84 (cl (= (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= X tptp.a))) (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X))))) :rule bind)
% 0.38/0.59  (step t85 (cl (forall ((X $$unsorted) (Y $$unsorted)) (or (not (tptp.big_f X Y)) (= tptp.a X)))) :rule resolution :premises (t83 t84 a0))
% 0.38/0.59  (step t86 (cl (or (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule resolution :premises (t82 t85))
% 0.38/0.59  (step t87 (cl (not (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))) :rule or_pos)
% 0.38/0.59  (step t88 (cl (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)) (not (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule reordering :premises (t87))
% 0.38/0.59  (step t89 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) :rule implies_neg1)
% 0.38/0.59  (anchor :step t90)
% 0.38/0.59  (assume t90.a0 (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))))
% 0.38/0.59  (step t90.t1 (cl (or (not (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule forall_inst :args ((:= X tptp.b) (:= Z tptp.a)))
% 0.38/0.59  (step t90.t2 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule or :premises (t90.t1))
% 0.38/0.59  (step t90.t3 (cl (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule resolution :premises (t90.t2 t90.a0))
% 0.38/0.59  (step t90 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule subproof :discharge (t90.a0))
% 0.38/0.59  (step t91 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule resolution :premises (t89 t90))
% 0.38/0.59  (step t92 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (not (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule implies_neg2)
% 0.38/0.59  (step t93 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule resolution :premises (t91 t92))
% 0.38/0.59  (step t94 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule contraction :premises (t93))
% 0.38/0.59  (step t95 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule implies :premises (t94))
% 0.38/0.59  (step t96 (cl (not (= (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= (tptp.h X Z) Z))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))))) (not (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= (tptp.h X Z) Z)))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) :rule equiv_pos2)
% 0.38/0.59  (anchor :step t97 :args ((Y $$unsorted) (:= Y Y) (X $$unsorted) (:= X X) (Z $$unsorted) (:= Z Z)))
% 0.38/0.59  (step t97.t1 (cl (= Y Y)) :rule refl)
% 0.38/0.59  (step t97.t2 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t97.t3 (cl (= Z Z)) :rule refl)
% 0.38/0.59  (step t97.t4 (cl (= (not (= Y (tptp.g X))) (not (= Y (tptp.g X))))) :rule refl)
% 0.38/0.59  (step t97.t5 (cl (= (tptp.big_f Y (tptp.f X)) (tptp.big_f Y (tptp.f X)))) :rule refl)
% 0.38/0.59  (step t97.t6 (cl (= (tptp.big_f (tptp.h X Z) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)))) :rule refl)
% 0.38/0.59  (step t97.t7 (cl (= (= (tptp.h X Z) Z) (= Z (tptp.h X Z)))) :rule all_simplify)
% 0.38/0.59  (step t97.t8 (cl (= (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= (tptp.h X Z) Z)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) :rule cong :premises (t97.t4 t97.t5 t97.t6 t97.t7))
% 0.38/0.59  (step t97 (cl (= (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= (tptp.h X Z) Z))) (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))))) :rule bind)
% 0.38/0.59  (step t98 (cl (= (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))))) :rule all_simplify)
% 0.38/0.59  (anchor :step t99 :args ((X $$unsorted) (:= X X) (Z $$unsorted) (:= Z Z)))
% 0.38/0.59  (step t99.t1 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t99.t2 (cl (= Z Z)) :rule refl)
% 0.38/0.59  (step t99.t3 (cl (= (= (tptp.g X) (tptp.g X)) true)) :rule all_simplify)
% 0.38/0.59  (step t99.t4 (cl (= (not (= (tptp.g X) (tptp.g X))) (not true))) :rule cong :premises (t99.t3))
% 0.38/0.59  (step t99.t5 (cl (= (not (= (tptp.g X) (tptp.g X))) false)) :rule trans :premises (t99.t4 t28))
% 0.38/0.59  (step t99.t6 (cl (= (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.g X) (tptp.f X)))) :rule refl)
% 0.38/0.59  (step t99.t7 (cl (= (tptp.big_f (tptp.h X Z) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)))) :rule refl)
% 0.38/0.59  (step t99.t8 (cl (= (= Z (tptp.h X Z)) (= Z (tptp.h X Z)))) :rule refl)
% 0.38/0.59  (step t99.t9 (cl (= (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))) (or false (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) :rule cong :premises (t99.t5 t99.t6 t99.t7 t99.t8))
% 0.38/0.59  (step t99.t10 (cl (= (or false (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) :rule all_simplify)
% 0.38/0.59  (step t99.t11 (cl (= (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) :rule trans :premises (t99.t9 t99.t10))
% 0.38/0.59  (step t99 (cl (= (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.g X) (tptp.g X))) (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))))) :rule bind)
% 0.38/0.59  (step t100 (cl (= (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))))) :rule trans :premises (t98 t99))
% 0.38/0.59  (step t101 (cl (= (forall ((Y $$unsorted) (X $$unsorted) (Z $$unsorted)) (or (not (= Y (tptp.g X))) (tptp.big_f Y (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= (tptp.h X Z) Z))) (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))))) :rule trans :premises (t97 t100))
% 0.38/0.59  (step t102 (cl (forall ((X $$unsorted) (Z $$unsorted)) (or (tptp.big_f (tptp.g X) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) :rule resolution :premises (t96 t101 a6))
% 0.38/0.59  (step t103 (cl (or (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule resolution :premises (t95 t102))
% 0.38/0.59  (step t104 (cl (= tptp.a (tptp.h tptp.b tptp.a)) (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))) :rule resolution :premises (t2 t86 t88 t103))
% 0.38/0.59  (step t105 (cl (= tptp.a (tptp.h tptp.b tptp.a)) (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) :rule contraction :premises (t104))
% 0.38/0.59  (step t106 (cl (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))) :rule reordering :premises (t105))
% 0.38/0.59  (step t107 (cl (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b)) (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) :rule resolution :premises (t75 t106))
% 0.38/0.59  (step t108 (cl (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) :rule contraction :premises (t107))
% 0.38/0.59  (step t109 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X)))) (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)))) (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X))))) :rule implies_neg1)
% 0.38/0.59  (anchor :step t110)
% 0.38/0.59  (assume t110.a0 (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X)))))
% 0.38/0.59  (step t110.t1 (cl (or (not (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X))))) (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b))))) :rule forall_inst :args ((:= X tptp.b)))
% 0.38/0.59  (step t110.t2 (cl (not (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X))))) (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)))) :rule or :premises (t110.t1))
% 0.38/0.59  (step t110.t3 (cl (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)))) :rule resolution :premises (t110.t2 t110.a0))
% 0.38/0.59  (step t110 (cl (not (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X))))) (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)))) :rule subproof :discharge (t110.a0))
% 0.38/0.59  (step t111 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X)))) (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)))) (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)))) :rule resolution :premises (t109 t110))
% 0.38/0.59  (step t112 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X)))) (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)))) (not (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b))))) :rule implies_neg2)
% 0.38/0.59  (step t113 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X)))) (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)))) (=> (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X)))) (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b))))) :rule resolution :premises (t111 t112))
% 0.38/0.59  (step t114 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X)))) (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b))))) :rule contraction :premises (t113))
% 0.38/0.59  (step t115 (cl (not (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X))))) (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)))) :rule implies :premises (t114))
% 0.38/0.59  (step t116 (cl (not (= (forall ((Y $$unsorted) (X $$unsorted)) (or (not (tptp.big_f Y (tptp.f X))) (not (= Y (tptp.g X))) (= (tptp.f X) X))) (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X)))))) (not (forall ((Y $$unsorted) (X $$unsorted)) (or (not (tptp.big_f Y (tptp.f X))) (not (= Y (tptp.g X))) (= (tptp.f X) X)))) (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X))))) :rule equiv_pos2)
% 0.38/0.59  (anchor :step t117 :args ((Y $$unsorted) (:= Y Y) (X $$unsorted) (:= X X)))
% 0.38/0.59  (step t117.t1 (cl (= Y Y)) :rule refl)
% 0.38/0.59  (step t117.t2 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t117.t3 (cl (= (not (tptp.big_f Y (tptp.f X))) (not (tptp.big_f Y (tptp.f X))))) :rule refl)
% 0.38/0.59  (step t117.t4 (cl (= (not (= Y (tptp.g X))) (not (= Y (tptp.g X))))) :rule refl)
% 0.38/0.59  (step t117.t5 (cl (= (= (tptp.f X) X) (= X (tptp.f X)))) :rule all_simplify)
% 0.38/0.59  (step t117.t6 (cl (= (or (not (tptp.big_f Y (tptp.f X))) (not (= Y (tptp.g X))) (= (tptp.f X) X)) (or (not (tptp.big_f Y (tptp.f X))) (not (= Y (tptp.g X))) (= X (tptp.f X))))) :rule cong :premises (t117.t3 t117.t4 t117.t5))
% 0.38/0.59  (step t117 (cl (= (forall ((Y $$unsorted) (X $$unsorted)) (or (not (tptp.big_f Y (tptp.f X))) (not (= Y (tptp.g X))) (= (tptp.f X) X))) (forall ((Y $$unsorted) (X $$unsorted)) (or (not (tptp.big_f Y (tptp.f X))) (not (= Y (tptp.g X))) (= X (tptp.f X)))))) :rule bind)
% 0.38/0.59  (step t118 (cl (= (forall ((Y $$unsorted) (X $$unsorted)) (or (not (tptp.big_f Y (tptp.f X))) (not (= Y (tptp.g X))) (= X (tptp.f X)))) (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (not (= (tptp.g X) (tptp.g X))) (= X (tptp.f X)))))) :rule all_simplify)
% 0.38/0.59  (anchor :step t119 :args ((X $$unsorted) (:= X X)))
% 0.38/0.59  (step t119.t1 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t119.t2 (cl (= (not (tptp.big_f (tptp.g X) (tptp.f X))) (not (tptp.big_f (tptp.g X) (tptp.f X))))) :rule refl)
% 0.38/0.59  (step t119.t3 (cl (= (= (tptp.g X) (tptp.g X)) true)) :rule all_simplify)
% 0.38/0.59  (step t119.t4 (cl (= (not (= (tptp.g X) (tptp.g X))) (not true))) :rule cong :premises (t119.t3))
% 0.38/0.59  (step t119.t5 (cl (= (not (= (tptp.g X) (tptp.g X))) false)) :rule trans :premises (t119.t4 t28))
% 0.38/0.59  (step t119.t6 (cl (= (= X (tptp.f X)) (= X (tptp.f X)))) :rule refl)
% 0.38/0.59  (step t119.t7 (cl (= (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (not (= (tptp.g X) (tptp.g X))) (= X (tptp.f X))) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) false (= X (tptp.f X))))) :rule cong :premises (t119.t2 t119.t5 t119.t6))
% 0.38/0.59  (step t119.t8 (cl (= (or (not (tptp.big_f (tptp.g X) (tptp.f X))) false (= X (tptp.f X))) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X))))) :rule all_simplify)
% 0.38/0.59  (step t119.t9 (cl (= (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (not (= (tptp.g X) (tptp.g X))) (= X (tptp.f X))) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X))))) :rule trans :premises (t119.t7 t119.t8))
% 0.38/0.59  (step t119 (cl (= (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (not (= (tptp.g X) (tptp.g X))) (= X (tptp.f X)))) (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X)))))) :rule bind)
% 0.38/0.59  (step t120 (cl (= (forall ((Y $$unsorted) (X $$unsorted)) (or (not (tptp.big_f Y (tptp.f X))) (not (= Y (tptp.g X))) (= X (tptp.f X)))) (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X)))))) :rule trans :premises (t118 t119))
% 0.38/0.59  (step t121 (cl (= (forall ((Y $$unsorted) (X $$unsorted)) (or (not (tptp.big_f Y (tptp.f X))) (not (= Y (tptp.g X))) (= (tptp.f X) X))) (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X)))))) :rule trans :premises (t117 t120))
% 0.38/0.59  (step t122 (cl (forall ((X $$unsorted)) (or (not (tptp.big_f (tptp.g X) (tptp.f X))) (= X (tptp.f X))))) :rule resolution :premises (t116 t121 a3))
% 0.38/0.59  (step t123 (cl (or (not (tptp.big_f (tptp.g tptp.b) (tptp.f tptp.b))) (= tptp.b (tptp.f tptp.b)))) :rule resolution :premises (t115 t122))
% 0.38/0.59  (step t124 (cl (= tptp.b (tptp.f tptp.b))) :rule resolution :premises (t6 t108 t123))
% 0.38/0.59  (step t125 (cl (not (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))) :rule or_pos)
% 0.38/0.59  (step t126 (cl (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)) (not (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule reordering :premises (t125))
% 0.38/0.59  (step t127 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) :rule implies_neg1)
% 0.38/0.59  (anchor :step t128)
% 0.38/0.59  (assume t128.a0 (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))))
% 0.38/0.59  (step t128.t1 (cl (or (not (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule forall_inst :args ((:= X tptp.b) (:= Z tptp.a)))
% 0.38/0.59  (step t128.t2 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule or :premises (t128.t1))
% 0.38/0.59  (step t128.t3 (cl (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule resolution :premises (t128.t2 t128.a0))
% 0.38/0.59  (step t128 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule subproof :discharge (t128.a0))
% 0.38/0.59  (step t129 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule resolution :premises (t127 t128))
% 0.38/0.59  (step t130 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (not (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule implies_neg2)
% 0.38/0.59  (step t131 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule resolution :premises (t129 t130))
% 0.38/0.59  (step t132 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))) (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a))))) :rule contraction :premises (t131))
% 0.38/0.59  (step t133 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule implies :premises (t132))
% 0.38/0.59  (step t134 (cl (not (= (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.f X) X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= (tptp.h X Z) Z))) (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))))) (not (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.f X) X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= (tptp.h X Z) Z)))) (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) :rule equiv_pos2)
% 0.38/0.59  (anchor :step t135 :args ((X $$unsorted) (:= X X) (Z $$unsorted) (:= Z Z)))
% 0.38/0.59  (step t135.t1 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t135.t2 (cl (= Z Z)) :rule refl)
% 0.38/0.59  (step t135.t3 (cl (= (= (tptp.f X) X) (= X (tptp.f X)))) :rule all_simplify)
% 0.38/0.59  (step t135.t4 (cl (= (not (= (tptp.f X) X)) (not (= X (tptp.f X))))) :rule cong :premises (t135.t3))
% 0.38/0.59  (step t135.t5 (cl (= (tptp.big_f (tptp.h X Z) (tptp.f X)) (tptp.big_f (tptp.h X Z) (tptp.f X)))) :rule refl)
% 0.38/0.59  (step t135.t6 (cl (= (= (tptp.h X Z) Z) (= Z (tptp.h X Z)))) :rule all_simplify)
% 0.38/0.59  (step t135.t7 (cl (= (or (not (= (tptp.f X) X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= (tptp.h X Z) Z)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) :rule cong :premises (t135.t4 t135.t5 t135.t6))
% 0.38/0.59  (step t135 (cl (= (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.f X) X)) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= (tptp.h X Z) Z))) (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z)))))) :rule bind)
% 0.38/0.59  (step t136 (cl (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (tptp.big_f (tptp.h X Z) (tptp.f X)) (= Z (tptp.h X Z))))) :rule resolution :premises (t134 t135 a8))
% 0.38/0.59  (step t137 (cl (or (not (= tptp.b (tptp.f tptp.b))) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (= tptp.a (tptp.h tptp.b tptp.a)))) :rule resolution :premises (t133 t136))
% 0.38/0.59  (step t138 (cl (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)) (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule resolution :premises (t22 t124 t39 t126 t137 t124))
% 0.38/0.59  (step t139 (cl (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))) :rule contraction :premises (t138))
% 0.38/0.59  (step t140 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) :rule implies_neg1)
% 0.38/0.59  (anchor :step t141)
% 0.38/0.59  (assume t141.a0 (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))
% 0.38/0.59  (step t141.t1 (cl (or (not (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))))) :rule forall_inst :args ((:= X tptp.b) (:= Z tptp.a)))
% 0.38/0.59  (step t141.t2 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule or :premises (t141.t1))
% 0.38/0.59  (step t141.t3 (cl (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule resolution :premises (t141.t2 t141.a0))
% 0.38/0.59  (step t141 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule subproof :discharge (t141.a0))
% 0.38/0.59  (step t142 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule resolution :premises (t140 t141))
% 0.38/0.59  (step t143 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) (not (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))))) :rule implies_neg2)
% 0.38/0.59  (step t144 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))))) :rule resolution :premises (t142 t143))
% 0.38/0.59  (step t145 (cl (=> (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b)))))) :rule contraction :premises (t144))
% 0.38/0.59  (step t146 (cl (not (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule implies :premises (t145))
% 0.38/0.59  (step t147 (cl (not (= (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.f X) X)) (not (= (tptp.h X Z) Z)) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))) (not (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.f X) X)) (not (= (tptp.h X Z) Z)) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) :rule equiv_pos2)
% 0.38/0.59  (anchor :step t148 :args ((X $$unsorted) (:= X X) (Z $$unsorted) (:= Z Z)))
% 0.38/0.59  (step t148.t1 (cl (= X X)) :rule refl)
% 0.38/0.59  (step t148.t2 (cl (= Z Z)) :rule refl)
% 0.38/0.59  (step t148.t3 (cl (= (= (tptp.f X) X) (= X (tptp.f X)))) :rule all_simplify)
% 0.38/0.59  (step t148.t4 (cl (= (not (= (tptp.f X) X)) (not (= X (tptp.f X))))) :rule cong :premises (t148.t3))
% 0.38/0.59  (step t148.t5 (cl (= (= (tptp.h X Z) Z) (= Z (tptp.h X Z)))) :rule all_simplify)
% 0.38/0.59  (step t148.t6 (cl (= (not (= (tptp.h X Z) Z)) (not (= Z (tptp.h X Z))))) :rule cong :premises (t148.t5))
% 0.38/0.59  (step t148.t7 (cl (= (not (tptp.big_f (tptp.h X Z) (tptp.f X))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) :rule refl)
% 0.38/0.59  (step t148.t8 (cl (= (or (not (= (tptp.f X) X)) (not (= (tptp.h X Z) Z)) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) :rule cong :premises (t148.t4 t148.t6 t148.t7))
% 0.38/0.59  (step t148 (cl (= (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= (tptp.f X) X)) (not (= (tptp.h X Z) Z)) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))) (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X))))))) :rule bind)
% 0.38/0.59  (step t149 (cl (forall ((X $$unsorted) (Z $$unsorted)) (or (not (= X (tptp.f X))) (not (= Z (tptp.h X Z))) (not (tptp.big_f (tptp.h X Z) (tptp.f X)))))) :rule resolution :premises (t147 t148 a9))
% 0.38/0.59  (step t150 (cl (or (not (= tptp.b (tptp.f tptp.b))) (not (= tptp.a (tptp.h tptp.b tptp.a))) (not (tptp.big_f (tptp.h tptp.b tptp.a) (tptp.f tptp.b))))) :rule resolution :premises (t146 t149))
% 0.38/0.59  (step t151 (cl (not (= tptp.a (tptp.h tptp.b tptp.a)))) :rule resolution :premises (t4 t124 t139 t150))
% 0.38/0.59  (step t152 (cl) :rule resolution :premises (t2 t151 t139 t86))
% 0.38/0.59  
% 0.38/0.59  % SZS output end Proof for /export/starexec/sandbox2/tmp/tmp.Cn0UoJ7pdu/cvc5---1.0.5_5695.smt2
% 0.38/0.59  % cvc5---1.0.5 exiting
% 0.38/0.59  % cvc5---1.0.5 exiting
%------------------------------------------------------------------------------