TSTP Solution File: SEU550^2 by cocATP---0.2.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : SEU550^2 : TPTP v6.1.0. Bugfixed v5.2.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p

% Computer : n183.star.cs.uiowa.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2609 0 2.40GHz
% Memory   : 32286.75MB
% OS       : Linux 2.6.32-431.20.3.el6.x86_64
% CPULimit : 300s
% DateTime : Thu Jul 17 13:32:26 EDT 2014

% Result   : Timeout 300.04s
% Output   : None 
% Verified : 
% SZS Type : None (Parsing solution fails)
% Syntax   : Number of formulae    : 0

% Comments : 
%------------------------------------------------------------------------------
%----NO SOLUTION OUTPUT BY SYSTEM
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % Problem  : SEU550^2 : TPTP v6.1.0. Bugfixed v5.2.0.
% % Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% % Computer : n183.star.cs.uiowa.edu
% % Model    : x86_64 x86_64
% % CPU      : Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz
% % Memory   : 32286.75MB
% % OS       : Linux 2.6.32-431.20.3.el6.x86_64
% % CPULimit : 300
% % DateTime : Thu Jul 17 10:39:26 CDT 2014
% % CPUTime  : 300.04 
% Python 2.7.5
% Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox/benchmark/', '/export/starexec/sandbox/benchmark/']
% FOF formula (<kernel.Constant object at 0xab7998>, <kernel.DependentProduct object at 0xab7ab8>) of role type named exu_type
% Using role type
% Declaring exu:((fofType->Prop)->Prop)
% FOF formula (((eq ((fofType->Prop)->Prop)) exu) (fun (Xphi:(fofType->Prop))=> ((ex fofType) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))))) of role definition named exu_def
% A new definition: (((eq ((fofType->Prop)->Prop)) exu) (fun (Xphi:(fofType->Prop))=> ((ex fofType) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))))
% Defined: exu:=(fun (Xphi:(fofType->Prop))=> ((ex fofType) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))))
% FOF formula (forall (Xphi:(fofType->Prop)) (Xpsi:(fofType->Prop)), ((forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((iff (Xphi Xx)) (Xpsi Xy))))->((iff (exu (fun (Xx:fofType)=> (Xphi Xx)))) (exu (fun (Xx:fofType)=> (Xpsi Xx)))))) of role conjecture named exu__Cong
% Conjecture to prove = (forall (Xphi:(fofType->Prop)) (Xpsi:(fofType->Prop)), ((forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((iff (Xphi Xx)) (Xpsi Xy))))->((iff (exu (fun (Xx:fofType)=> (Xphi Xx)))) (exu (fun (Xx:fofType)=> (Xpsi Xx)))))):Prop
% Parameter fofType_DUMMY:fofType.
% We need to prove ['(forall (Xphi:(fofType->Prop)) (Xpsi:(fofType->Prop)), ((forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((iff (Xphi Xx)) (Xpsi Xy))))->((iff (exu (fun (Xx:fofType)=> (Xphi Xx)))) (exu (fun (Xx:fofType)=> (Xpsi Xx))))))']
% Parameter fofType:Type.
% Definition exu:=(fun (Xphi:(fofType->Prop))=> ((ex fofType) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))):((fofType->Prop)->Prop).
% Trying to prove (forall (Xphi:(fofType->Prop)) (Xpsi:(fofType->Prop)), ((forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((iff (Xphi Xx)) (Xpsi Xy))))->((iff (exu (fun (Xx:fofType)=> (Xphi Xx)))) (exu (fun (Xx:fofType)=> (Xpsi Xx))))))
% Found eq_ref00:=(eq_ref0 ((exu Xpsi)->(exu Xphi))):(((eq Prop) ((exu Xpsi)->(exu Xphi))) ((exu Xpsi)->(exu Xphi)))
% Found (eq_ref0 ((exu Xpsi)->(exu Xphi))) as proof of (((eq Prop) ((exu Xpsi)->(exu Xphi))) b)
% Found ((eq_ref Prop) ((exu Xpsi)->(exu Xphi))) as proof of (((eq Prop) ((exu Xpsi)->(exu Xphi))) b)
% Found ((eq_ref Prop) ((exu Xpsi)->(exu Xphi))) as proof of (((eq Prop) ((exu Xpsi)->(exu Xphi))) b)
% Found ((eq_ref Prop) ((exu Xpsi)->(exu Xphi))) as proof of (((eq Prop) ((exu Xpsi)->(exu Xphi))) b)
% Found eq_ref00:=(eq_ref0 ((exu Xphi)->(exu Xpsi))):(((eq Prop) ((exu Xphi)->(exu Xpsi))) ((exu Xphi)->(exu Xpsi)))
% Found (eq_ref0 ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b)
% Found ((eq_ref Prop) ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b)
% Found ((eq_ref Prop) ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b)
% Found ((eq_ref Prop) ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b)
% Found eq_ref00:=(eq_ref0 ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx))))):(((eq Prop) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx))))) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx)))))
% Found (eq_ref0 ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx))))) b)
% Found ((eq_ref Prop) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx))))) b)
% Found ((eq_ref Prop) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx))))) b)
% Found ((eq_ref Prop) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx))))) b)
% Found eq_ref00:=(eq_ref0 ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))):(((eq Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx)))))
% Found (eq_ref0 ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) b)
% Found ((eq_ref Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) b)
% Found ((eq_ref Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) b)
% Found ((eq_ref Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) b)
% Found conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (A->(B->((and A) B)))):Prop
% Found conj as proof of b
% Found eq_ref00:=(eq_ref0 a):(((eq Prop) a) a)
% Found (eq_ref0 a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((exu Xpsi)->(exu Xphi)))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu Xpsi)->(exu Xphi)))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu Xpsi)->(exu Xphi)))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu Xpsi)->(exu Xphi)))
% Found eq_ref00:=(eq_ref0 ((exu Xphi)->(exu Xpsi))):(((eq Prop) ((exu Xphi)->(exu Xpsi))) ((exu Xphi)->(exu Xpsi)))
% Found (eq_ref0 ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b)
% Found ((eq_ref Prop) ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b)
% Found ((eq_ref Prop) ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b)
% Found ((eq_ref Prop) ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b)
% Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% Found iff_sym as proof of b
% Found eq_ref00:=(eq_ref0 a):(((eq Prop) a) a)
% Found (eq_ref0 a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((exu Xphi)->(exu Xpsi)))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu Xphi)->(exu Xpsi)))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu Xphi)->(exu Xpsi)))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu Xphi)->(exu Xpsi)))
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 a):(((eq Prop) a) a)
% Found (eq_ref0 a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx)))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx)))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx)))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu (fun (Xx:fofType)=> (Xpsi Xx)))->(exu (fun (Xx:fofType)=> (Xphi Xx)))))
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eq_ref00:=(eq_ref0 a):(((eq Prop) a) a)
% Found (eq_ref0 a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx)))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx)))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx)))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx)))))
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (A->(B->((and A) B)))):Prop
% Found conj as proof of b
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% Found iff_sym as proof of b
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found x4:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x4:(P x1))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of (((eq fofType) x1) Xy)
% Found x4:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x4:(P x1))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% Instantiate: a:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% Found iff_sym as proof of a
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))):(((eq Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx)))))
% Found (eq_ref0 ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) b)
% Found ((eq_ref Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) b)
% Found ((eq_ref Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) b)
% Found ((eq_ref Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) as proof of (((eq Prop) ((exu (fun (Xx:fofType)=> (Xphi Xx)))->(exu (fun (Xx:fofType)=> (Xpsi Xx))))) b)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))->(((eq fofType) x1) Xy))
% Found (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (forall (x:fofType), (((and (Xpsi x)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x) Xy0))))->(((eq fofType) x1) Xy)))
% Found (ex_ind00 (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found ((ex_ind0 (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))->(((eq fofType) x1) Xy))
% Found (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (forall (x:fofType), (((and (Xphi x)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x) Xy0))))->(((eq fofType) x1) Xy)))
% Found (ex_ind00 (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found ((ex_ind0 (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found x4:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x4:(P x1))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x4:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x4:(P x1))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% Instantiate: a:=(forall (P:Prop), ((iff P) P)):Prop
% Found iff_refl as proof of a
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% Instantiate: b:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% Found iff_sym as proof of b
% Found eq_ref00:=(eq_ref0 a):(((eq Prop) a) a)
% Found (eq_ref0 a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((exu Xphi)->(exu Xpsi)))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu Xphi)->(exu Xpsi)))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu Xphi)->(exu Xpsi)))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((exu Xphi)->(exu Xpsi)))
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion_dep0 (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion_dep0 (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))->(((eq fofType) x1) Xy))
% Found (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (forall (x:fofType), (((and (Xpsi x)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x) Xy0))))->(((eq fofType) x1) Xy)))
% Found (ex_ind00 (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found ((ex_ind0 (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))->(((eq fofType) x1) Xy))
% Found (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (forall (x:fofType), (((and (Xphi x)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x) Xy0))))->(((eq fofType) x1) Xy)))
% Found (ex_ind00 (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found ((ex_ind0 (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion_dep0 (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion_dep0 (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x6:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x6:(P x3))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x6:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x6:(P x3))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of (((eq fofType) x3) Xy)
% Found x6:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x6:(P x1))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x1))=> x6) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x1))=> x6) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x6:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x6:(P x1))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x1))=> x6) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x1))=> x6) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x6:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x6:(P x3))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of (((eq fofType) x3) Xy)
% Found x6:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x6:(P x3))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy))
% Found (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((Xphi x1)->((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy)))
% Found (and_rect00 (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found ((and_rect0 (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (((fun (P:Type) (x4:((Xphi x1)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> (((fun (P:Type) (x4:((Xphi x1)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy))
% Found (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((Xpsi x1)->((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy)))
% Found (and_rect00 (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found ((and_rect0 (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (((fun (P:Type) (x4:((Xpsi x1)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> (((fun (P:Type) (x4:((Xpsi x1)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of ((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))->(((eq fofType) x1) Xy))
% Found (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of ((Xphi x2)->((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))->(((eq fofType) x1) Xy)))
% Found (and_rect00 (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found ((and_rect0 (((eq fofType) x1) Xy)) (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (((fun (P:Type) (x4:((Xphi x2)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x2) Xy)))->P)))=> (((((and_rect (Xphi x2)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x2) Xy)))) P) x4) x3)) (((eq fofType) x1) Xy)) (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> (((fun (P:Type) (x4:((Xphi x2)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x2) Xy)))->P)))=> (((((and_rect (Xphi x2)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x2) Xy)))) P) x4) x3)) (((eq fofType) x1) Xy)) (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of ((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))->(((eq fofType) x1) Xy))
% Found (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of ((Xpsi x2)->((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))->(((eq fofType) x1) Xy)))
% Found (and_rect00 (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found ((and_rect0 (((eq fofType) x1) Xy)) (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (((fun (P:Type) (x4:((Xpsi x2)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x2) Xy)))->P)))=> (((((and_rect (Xpsi x2)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x2) Xy)))) P) x4) x3)) (((eq fofType) x1) Xy)) (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> (((fun (P:Type) (x4:((Xpsi x2)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x2) Xy)))->P)))=> (((((and_rect (Xpsi x2)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x2) Xy)))) P) x4) x3)) (((eq fofType) x1) Xy)) (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy))
% Found (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((Xpsi x1)->((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy)))
% Found (and_rect00 (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found ((and_rect0 (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (((fun (P:Type) (x4:((Xpsi x1)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> (((fun (P:Type) (x4:((Xpsi x1)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy))
% Found (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((Xphi x1)->((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy)))
% Found (and_rect00 (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found ((and_rect0 (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (((fun (P:Type) (x4:((Xphi x1)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> (((fun (P:Type) (x4:((Xphi x1)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion_dep0 (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion_dep0 (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found x6:(P x5)
% Instantiate: x5:=Xy:fofType
% Found (fun (x6:(P x5))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x5))=> x6) as proof of (((eq fofType) x5) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x5)->(P x5))
% Found (eq_ref00 P) as proof of ((P x5)->(P Xy))
% Found ((eq_ref0 x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (((eq_ref fofType) x5) P) as proof of ((P x5)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of ((P x5)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x5) P)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found x6:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x6:(P x3))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of (((eq fofType) x3) Xy)
% Found x6:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x6:(P x3))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x6:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x6:(P x1))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x1))=> x6) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x1))=> x6) as proof of (((eq fofType) x1) Xy)
% Found x6:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x6:(P x1))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x1))=> x6) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x1))=> x6) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x6:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x6:(P x3))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x6:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x6:(P x3))=> x6) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x6:(P x3))=> x6) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) b0)
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) b0)
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) b0)
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) b0)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x1)):(((eq Prop) (f x1)) (f x1))
% Found (eq_ref0 (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found ((eq_ref Prop) (f x1)) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (((eq Prop) (f x1)) ((and (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))))
% Found (fun (x1:fofType)=> ((eq_ref Prop) (f x1))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 ((exu Xpsi)->(exu Xphi))):(((eq Prop) ((exu Xpsi)->(exu Xphi))) ((exu Xpsi)->(exu Xphi)))
% Found (eq_ref0 ((exu Xpsi)->(exu Xphi))) as proof of (((eq Prop) ((exu Xpsi)->(exu Xphi))) b0)
% Found ((eq_ref Prop) ((exu Xpsi)->(exu Xphi))) as proof of (((eq Prop) ((exu Xpsi)->(exu Xphi))) b0)
% Found ((eq_ref Prop) ((exu Xpsi)->(exu Xphi))) as proof of (((eq Prop) ((exu Xpsi)->(exu Xphi))) b0)
% Found ((eq_ref Prop) ((exu Xpsi)->(exu Xphi))) as proof of (((eq Prop) ((exu Xpsi)->(exu Xphi))) b0)
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xpsi x5)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and (Xphi x5)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x5) Xy)))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% Instantiate: a:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% Found iff_sym as proof of a
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found x4:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x4:(P x1))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x4:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x4:(P x1))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy))
% Found (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((Xphi x1)->((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy)))
% Found (and_rect00 (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found ((and_rect0 (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (((fun (P:Type) (x4:((Xphi x1)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> (((fun (P:Type) (x4:((Xphi x1)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy))
% Found (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((Xpsi x1)->((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy)))
% Found (and_rect00 (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found ((and_rect0 (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (((fun (P:Type) (x4:((Xpsi x1)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> (((fun (P:Type) (x4:((Xpsi x1)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of ((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))->(((eq fofType) x1) Xy))
% Found (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of ((Xpsi x2)->((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))->(((eq fofType) x1) Xy)))
% Found (and_rect00 (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found ((and_rect0 (((eq fofType) x1) Xy)) (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (((fun (P:Type) (x4:((Xpsi x2)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x2) Xy)))->P)))=> (((((and_rect (Xpsi x2)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x2) Xy)))) P) x4) x3)) (((eq fofType) x1) Xy)) (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> (((fun (P:Type) (x4:((Xpsi x2)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x2) Xy)))->P)))=> (((((and_rect (Xpsi x2)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x2) Xy)))) P) x4) x3)) (((eq fofType) x1) Xy)) (fun (x4:(Xpsi x2)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of ((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))->(((eq fofType) x1) Xy))
% Found (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)) as proof of ((Xphi x2)->((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))->(((eq fofType) x1) Xy)))
% Found (and_rect00 (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found ((and_rect0 (((eq fofType) x1) Xy)) (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (((fun (P:Type) (x4:((Xphi x2)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x2) Xy)))->P)))=> (((((and_rect (Xphi x2)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x2) Xy)))) P) x4) x3)) (((eq fofType) x1) Xy)) (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> (((fun (P:Type) (x4:((Xphi x2)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x2) Xy)))->P)))=> (((((and_rect (Xphi x2)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x2) Xy)))) P) x4) x3)) (((eq fofType) x1) Xy)) (fun (x4:(Xphi x2)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))=> ((eq_ref fofType) x1)))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy))
% Found (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((Xpsi x1)->((forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy)))
% Found (and_rect00 (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found ((and_rect0 (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (((fun (P:Type) (x4:((Xpsi x1)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> (((fun (P:Type) (x4:((Xpsi x1)->((forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xpsi x1)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xpsi x1)) (x5:(forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy))
% Found (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)) as proof of ((Xphi x1)->((forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0)))->(((eq fofType) x3) Xy)))
% Found (and_rect00 (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found ((and_rect0 (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (((fun (P:Type) (x4:((Xphi x1)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3))) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> (((fun (P:Type) (x4:((Xphi x1)->((forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))->P)))=> (((((and_rect (Xphi x1)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x1) Xy)))) P) x4) x2)) (((eq fofType) x3) Xy)) (fun (x4:(Xphi x1)) (x5:(forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x1) Xy0))))=> ((eq_ref fofType) x3)))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: a:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P a)
% Found x0:(exu Xpsi)
% Instantiate: a:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P a)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((eq_sym00 x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (((eq_sym0 Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((eq_sym00 x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (((eq_sym0 Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found ((eq_ref fofType) x3) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) b0)
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) b0)
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) b0)
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) b0)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((eq_sym00 x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (((eq_sym0 Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((eq_sym00 x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (((eq_sym0 Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((eq_sym00 x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (((eq_sym0 Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x5)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((eq_sym00 x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (((eq_sym0 Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x5) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x5) Xy)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a):(((eq (fofType->Prop)) a) (fun (x:fofType)=> (a x)))
% Found (eta_expansion_dep00 a) as proof of (((eq (fofType->Prop)) a) b)
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b):(((eq (fofType->Prop)) b) (fun (x:fofType)=> (b x)))
% Found (eta_expansion_dep00 b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found eta_expansion000:=(eta_expansion00 b):(((eq (fofType->Prop)) b) (fun (x:fofType)=> (b x)))
% Found (eta_expansion00 b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found ((eta_expansion0 Prop) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion fofType) Prop) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion fofType) Prop) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion fofType) Prop) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found eta_expansion000:=(eta_expansion00 a):(((eq (fofType->Prop)) a) (fun (x:fofType)=> (a x)))
% Found (eta_expansion00 a) as proof of (((eq (fofType->Prop)) a) b)
% Found ((eta_expansion0 Prop) a) as proof of (((eq (fofType->Prop)) a) b)
% Found (((eta_expansion fofType) Prop) a) as proof of (((eq (fofType->Prop)) a) b)
% Found (((eta_expansion fofType) Prop) a) as proof of (((eq (fofType->Prop)) a) b)
% Found (((eta_expansion fofType) Prop) a) as proof of (((eq (fofType->Prop)) a) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b):(((eq (fofType->Prop)) b) (fun (x:fofType)=> (b x)))
% Found (eta_expansion_dep00 b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found eta_expansion000:=(eta_expansion00 b):(((eq (fofType->Prop)) b) (fun (x:fofType)=> (b x)))
% Found (eta_expansion00 b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found ((eta_expansion0 Prop) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion fofType) Prop) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion fofType) Prop) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found (((eta_expansion fofType) Prop) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))))
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym0000 ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found (eq_sym0000 ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found ((fun (x2:(((eq fofType) Xy) x1))=> ((eq_sym000 x2) P)) ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found ((fun (x2:(((eq fofType) Xy) x1))=> (((eq_sym00 x1) x2) P)) ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found ((fun (x2:(((eq fofType) Xy) x1))=> ((((eq_sym0 Xy) x1) x2) P)) ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found ((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) P)) ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> ((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) P)) ((eq_ref fofType) Xy))) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> ((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) P)) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym0000 ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found (eq_sym0000 ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found ((fun (x2:(((eq fofType) Xy) x1))=> ((eq_sym000 x2) P)) ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found ((fun (x2:(((eq fofType) Xy) x1))=> (((eq_sym00 x1) x2) P)) ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found ((fun (x2:(((eq fofType) Xy) x1))=> ((((eq_sym0 Xy) x1) x2) P)) ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found ((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) P)) ((eq_ref fofType) Xy)) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> ((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) P)) ((eq_ref fofType) Xy))) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> ((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) P)) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xpsi x3)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 (f x3)):(((eq Prop) (f x3)) (f x3))
% Found (eq_ref0 (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found ((eq_ref Prop) (f x3)) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (((eq Prop) (f x3)) ((and (Xphi x3)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x3) Xy)))))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f x3))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found eq_ref00:=(eq_ref0 ((exu Xphi)->(exu Xpsi))):(((eq Prop) ((exu Xphi)->(exu Xpsi))) ((exu Xphi)->(exu Xpsi)))
% Found (eq_ref0 ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b0)
% Found ((eq_ref Prop) ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b0)
% Found ((eq_ref Prop) ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b0)
% Found ((eq_ref Prop) ((exu Xphi)->(exu Xpsi))) as proof of (((eq Prop) ((exu Xphi)->(exu Xpsi))) b0)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) b)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) b)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) b)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) b)
% Found ((eq_trans0000 ((eq_ref fofType) x1)) ((eq_ref fofType) b)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_trans000 Xy) ((eq_ref fofType) x1)) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((fun (b:fofType)=> ((eq_trans00 b) Xy)) Xy) ((eq_ref fofType) x1)) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((fun (b:fofType)=> (((eq_trans0 x1) b) Xy)) Xy) ((eq_ref fofType) x1)) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((fun (b:fofType)=> ((((eq_trans fofType) x1) b) Xy)) Xy) ((eq_ref fofType) x1)) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((fun (b:fofType)=> ((((eq_trans fofType) x1) b) Xy)) Xy) ((eq_ref fofType) x1)) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) b)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) b)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) b)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) b)
% Found ((eq_trans0000 ((eq_ref fofType) x1)) ((eq_ref fofType) b)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_trans000 Xy) ((eq_ref fofType) x1)) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((fun (b:fofType)=> ((eq_trans00 b) Xy)) Xy) ((eq_ref fofType) x1)) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((fun (b:fofType)=> (((eq_trans0 x1) b) Xy)) Xy) ((eq_ref fofType) x1)) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((fun (b:fofType)=> ((((eq_trans fofType) x1) b) Xy)) Xy) ((eq_ref fofType) x1)) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((fun (b:fofType)=> ((((eq_trans fofType) x1) b) Xy)) Xy) ((eq_ref fofType) x1)) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x3)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((eq_sym00 x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (((eq_sym0 Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x3) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x3) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of (P0 x1)
% Found ((eq_ref0 x1) P) as proof of (P0 x1)
% Found (((eq_ref fofType) x1) P) as proof of (P0 x1)
% Found (((eq_ref fofType) x1) P) as proof of (P0 x1)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_sym0000 ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found ((eq_sym0000 ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (((fun (x2:(((eq fofType) Xy) x1))=> ((eq_sym000 x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (((fun (x2:(((eq fofType) Xy) x1))=> (((eq_sym00 x1) x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (((fun (x2:(((eq fofType) Xy) x1))=> ((((eq_sym0 Xy) x1) x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P))) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of (P0 x1)
% Found ((eq_ref0 x1) P) as proof of (P0 x1)
% Found (((eq_ref fofType) x1) P) as proof of (P0 x1)
% Found (((eq_ref fofType) x1) P) as proof of (P0 x1)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_sym0000 ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found ((eq_sym0000 ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (((fun (x2:(((eq fofType) Xy) x1))=> ((eq_sym000 x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (((fun (x2:(((eq fofType) Xy) x1))=> (((eq_sym00 x1) x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (((fun (x2:(((eq fofType) Xy) x1))=> ((((eq_sym0 Xy) x1) x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P))) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((fun (x2:(((eq fofType) Xy) x1))=> (((((eq_sym fofType) Xy) x1) x2) (fun (x4:fofType)=> ((P x1)->(P x4))))) ((eq_ref fofType) Xy)) (((eq_ref fofType) x1) P))) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x2:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x2:(P x1))=> x2) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x2:(P x1))=> x2) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% Instantiate: a:=(forall (P:Prop), ((iff P) P)):Prop
% Found iff_refl as proof of a
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0))))->(((eq fofType) x1) Xy))
% Found (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (forall (x:fofType), (((and (Xphi x)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x) Xy0))))->(((eq fofType) x1) Xy)))
% Found (ex_ind00 (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found ((ex_ind0 (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xphi x2)) (forall (Xy0:fofType), ((Xphi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found ((eq_ref fofType) x1) as proof of (((eq fofType) x1) Xy)
% Found (fun (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0))))->(((eq fofType) x1) Xy))
% Found (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)) as proof of (forall (x:fofType), (((and (Xpsi x)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x) Xy0))))->(((eq fofType) x1) Xy)))
% Found (ex_ind00 (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found ((ex_ind0 (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1))) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> (((fun (P:Prop) (x2:(forall (x:fofType), (((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))->P)))=> (((((ex_ind fofType) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) P) x2) x0)) (((eq fofType) x1) Xy)) (fun (x2:fofType) (x3:((and (Xpsi x2)) (forall (Xy0:fofType), ((Xpsi Xy0)->(((eq fofType) x2) Xy0)))))=> ((eq_ref fofType) x1)))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x3):(((eq fofType) x3) x3)
% Found (eq_ref0 x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found ((eq_ref fofType) x3) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x3)) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu Xpsi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu Xphi)
% Instantiate: b:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: b:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))))
% Found (eq_ref0 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xpsi x)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion00 (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion0 Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))):(((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) (fun (x:fofType)=> ((and (Xphi x)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) x) Xy))))))
% Found (eta_expansion_dep00 (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found ((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) as proof of (((eq (fofType->Prop)) (fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 x1):(((eq fofType) x1) x1)
% Found (eq_ref0 x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found ((eq_ref fofType) x1) as proof of (forall (P:(fofType->Prop)), ((P x1)->(P Xy)))
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x1)) as proof of (((eq fofType) x1) Xy)
% Found x4:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x4:(P x1))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of (((eq fofType) x1) Xy)
% Found x4:(P x1)
% Instantiate: x1:=Xy:fofType
% Found (fun (x4:(P x1))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x1))=> x4) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x1)->(P x1))
% Found (eq_ref00 P) as proof of ((P x1)->(P Xy))
% Found ((eq_ref0 x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (((eq_ref fofType) x1) P) as proof of ((P x1)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of ((P x1)->(P Xy))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x1) P)) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu Xpsi)
% Instantiate: a:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P a)
% Found x0:(exu Xphi)
% Instantiate: a:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P a)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) x1)
% Found (eq_sym000 ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((eq_sym00 x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (((eq_sym0 Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy)) as proof of (((eq fofType) x1) Xy)
% Found (fun (x00:(Xphi Xy))=> ((((eq_sym fofType) Xy) x1) ((eq_ref fofType) Xy))) as proof of (((eq fofType) x1) Xy)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xpsi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found eq_ref00:=(eq_ref0 x5):(((eq fofType) x5) x5)
% Found (eq_ref0 x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found ((eq_ref fofType) x5) as proof of (((eq fofType) x5) Xy)
% Found (fun (x00:(Xphi Xy))=> ((eq_ref fofType) x5)) as proof of (((eq fofType) x5) Xy)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xpsi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xpsi Xx)) (forall (Xy:fofType), ((Xpsi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu Xphi)
% Instantiate: f:=(fun (Xx:fofType)=> ((and (Xphi Xx)) (forall (Xy:fofType), ((Xphi Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found (fun (x00:(Xphi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found x0:(exu (fun (Xx:fofType)=> (Xphi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xphi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xphi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof of ((P x3)->(P Xy))
% Found ((eq_ref0 x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (((eq_ref fofType) x3) P) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop))=> (((eq_ref fofType) x3) P)) as proof of (((eq fofType) x3) Xy)
% Found x4:(P x3)
% Instantiate: x3:=Xy:fofType
% Found (fun (x4:(P x3))=> x4) as proof of (P Xy)
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of ((P x3)->(P Xy))
% Found (fun (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (forall (P:(fofType->Prop)), ((P x3)->(P Xy)))
% Found (fun (x00:(Xpsi Xy)) (P:(fofType->Prop)) (x4:(P x3))=> x4) as proof of (((eq fofType) x3) Xy)
% Found x0:(exu (fun (Xx:fofType)=> (Xpsi Xx)))
% Instantiate: f:=(fun (Xx:fofType)=> ((and ((fun (Xx:fofType)=> (Xpsi Xx)) Xx)) (forall (Xy:fofType), (((fun (Xx:fofType)=> (Xpsi Xx)) Xy)->(((eq fofType) Xx) Xy))))):(fofType->Prop)
% Found x0 as proof of (P f)
% Found eq_ref000:=(eq_ref00 P):((P x3)->(P x3))
% Found (eq_ref00 P) as proof o
% EOF
%------------------------------------------------------------------------------