TSTP Solution File: SEU907^5 by cocATP---0.2.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : SEU907^5 : TPTP v6.1.0. Released v4.0.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:33:21 EDT 2014

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

% Comments : 
%------------------------------------------------------------------------------
%----NO SOLUTION OUTPUT BY SYSTEM
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % Problem  : SEU907^5 : TPTP v6.1.0. Released v4.0.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 11:42:11 CDT 2014
% % CPUTime  : 300.07 
% Python 2.7.5
% Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox/benchmark/', '/export/starexec/sandbox/benchmark/']
% FOF formula (forall (Xf:(fofType->fofType)), (((ex (fofType->fofType)) (fun (Xg:(fofType->fofType))=> ((and (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp Xg)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (Xg Xx)) Xx))) ((fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) Xx) Xy)) Xy)))))))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))))) of role conjecture named cTHM15_pme
% Conjecture to prove = (forall (Xf:(fofType->fofType)), (((ex (fofType->fofType)) (fun (Xg:(fofType->fofType))=> ((and (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp Xg)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (Xg Xx)) Xx))) ((fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) Xx) Xy)) Xy)))))))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))))):Prop
% Parameter fofType_DUMMY:fofType.
% We need to prove ['(forall (Xf:(fofType->fofType)), (((ex (fofType->fofType)) (fun (Xg:(fofType->fofType))=> ((and (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp Xg)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (Xg Xx)) Xx))) ((fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) Xx) Xy)) Xy)))))))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))']
% Parameter fofType:Type.
% Trying to prove (forall (Xf:(fofType->fofType)), (((ex (fofType->fofType)) (fun (Xg:(fofType->fofType))=> ((and (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp Xg)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (Xg Xx)) Xx))) ((fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) Xx) Xy)) Xy)))))))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->((ex fofType) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x) Xy0))))))
% Found (eta_expansion_dep000 (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found eta_expansion0000:=(eta_expansion000 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->((ex fofType) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x) Xy0))))))
% Found (eta_expansion000 (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((eta_expansion00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found (((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found eta_expansion0000:=(eta_expansion000 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->((ex fofType) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x) Xy0))))))
% Found (eta_expansion000 (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((eta_expansion00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found (((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->((ex fofType) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) x)))))
% Found (eta_expansion_dep000 (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found eta_expansion0000:=(eta_expansion000 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->((ex fofType) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) x)))))
% Found (eta_expansion000 (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found ((eta_expansion00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found (((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found eta_expansion0000:=(eta_expansion000 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->((ex fofType) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) x)))))
% Found (eta_expansion000 (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found ((eta_expansion00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found (((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) (fun (x:fofType)=> (((eq fofType) (Xf x)) x)))
% Found (eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eta_expansion_dep0 (fun (x1:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion_dep fofType) (fun (x1:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion_dep fofType) (fun (x1:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion_dep fofType) (fun (x1:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) (fun (x:fofType)=> (((eq fofType) (Xf x)) x)))
% Found (eta_expansion00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found eq_ref00:=(eq_ref0 (f x0)):(((eq Prop) (f x0)) (f x0))
% Found (eq_ref0 (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found (fun (x0:fofType)=> ((eq_ref Prop) (f x0))) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found (fun (x0:fofType)=> ((eq_ref Prop) (f x0))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eq_ref00:=(eq_ref0 (f x0)):(((eq Prop) (f x0)) (f x0))
% Found (eq_ref0 (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found (fun (x0:fofType)=> ((eq_ref Prop) (f x0))) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found (fun (x0:fofType)=> ((eq_ref Prop) (f x0))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eq_ref00:=(eq_ref0 (f x0)):(((eq Prop) (f x0)) (f x0))
% Found (eq_ref0 (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found (fun (x0:fofType)=> ((eq_ref Prop) (f x0))) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found (fun (x0:fofType)=> ((eq_ref Prop) (f x0))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eq_ref00:=(eq_ref0 (f x0)):(((eq Prop) (f x0)) (f x0))
% Found (eq_ref0 (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found ((eq_ref Prop) (f x0)) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found (fun (x0:fofType)=> ((eq_ref Prop) (f x0))) as proof of (((eq Prop) (f x0)) (((eq fofType) (Xf x0)) x0))
% Found (fun (x0:fofType)=> ((eq_ref Prop) (f x0))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) (fun (x:fofType)=> (((eq fofType) (Xf x)) x)))
% Found (eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found eq_ref00:=(eq_ref0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (eq_ref0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Instantiate: b:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))):(fofType->Prop)
% Found x3 as proof of (P b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) (fun (x:fofType)=> (((eq fofType) (Xf x)) x)))
% Found (eta_expansion00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found eta_expansion0000:=(eta_expansion000 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->((ex fofType) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x) Xy0))))))
% Found (eta_expansion000 (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b))
% Found ((eta_expansion00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b))
% Found (((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P b)
% Found ((and_rect0 (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P b)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P b)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P b)
% Found eq_ref000:=(eq_ref00 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))))
% Found (eq_ref00 (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b))
% Found ((eq_ref0 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P b)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P b)
% Found ((and_rect0 (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P b)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P b)
% Found (fun (x1:((and (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))))=> (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))))) as proof of (P b)
% Found eq_ref00:=(eq_ref0 (Xf x0)):(((eq fofType) (Xf x0)) (Xf x0))
% Found (eq_ref0 (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Instantiate: f:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))):(fofType->Prop)
% Found x3 as proof of (P f)
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found (fun (x4:fofType)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found (fun (x4:fofType)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Instantiate: f:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))):(fofType->Prop)
% Found x3 as proof of (P f)
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found (fun (x4:fofType)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found (fun (x4:fofType)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq Prop) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found ((eq_ref Prop) (f x2)) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) (f x2))) as proof of (((eq Prop) (f x2)) (((eq fofType) (Xf x2)) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) (f x2))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->((ex fofType) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x) Xy0))))))
% Found (eta_expansion_dep000 (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found ((and_rect0 (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found eq_ref000:=(eq_ref00 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))))
% Found (eq_ref00 (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found ((eq_ref0 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found ((and_rect0 (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Instantiate: b:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))):(fofType->Prop)
% Found x3 as proof of (P b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) (fun (x:fofType)=> (((eq fofType) (Xf x)) x)))
% Found (eta_expansion00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found eq_ref000:=(eq_ref00 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))))
% Found (eq_ref00 (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found ((eq_ref0 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found ((and_rect0 (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found (fun (x1:((and (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))))=> (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))))) as proof of (P f)
% Found eta_expansion_dep0000:=(eta_expansion_dep000 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->((ex fofType) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x) Xy0))))))
% Found (eta_expansion_dep000 (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->(P f)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found ((and_rect0 (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)))) as proof of (P f)
% Found (fun (x1:((and (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))))=> (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType))))) as proof of (P f)
% Found eq_ref000:=(eq_ref00 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))->((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))))
% Found (eq_ref00 (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((eq_ref0 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found eq_ref00:=(eq_ref0 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found (eq_ref0 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eta_expansion000:=(eta_expansion00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x) Xy0)))))
% Found (eta_expansion00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) b)
% Found ((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eq_ref00:=(eq_ref0 (Xf x0)):(((eq fofType) (Xf x0)) (Xf x0))
% Found (eq_ref0 (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Instantiate: b:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))):(fofType->Prop)
% Found (fun (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3) as proof of (P b)
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P b))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P b)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3)) as proof of (P b)
% Found ((and_rect0 (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3)) as proof of (P b)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3)) as proof of (P b)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3)) as proof of (P b)
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Instantiate: b:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))):(fofType->Prop)
% Found (fun (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3) as proof of (P b)
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P b))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P b)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3)) as proof of (P b)
% Found ((and_rect0 (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3)) as proof of (P b)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3)) as proof of (P b)
% Found (fun (x1:((and (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))))=> (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P b)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3))) as proof of (P b)
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Instantiate: f:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))):(fofType->Prop)
% Found x3 as proof of (P f)
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found (fun (x4:fofType)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found (fun (x4:fofType)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Instantiate: f:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))):(fofType->Prop)
% Found x3 as proof of (P f)
% Found eq_ref00:=(eq_ref0 (f x4)):(((eq Prop) (f x4)) (f x4))
% Found (eq_ref0 (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found ((eq_ref Prop) (f x4)) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found (fun (x4:fofType)=> ((eq_ref Prop) (f x4))) as proof of (((eq Prop) (f x4)) (((eq fofType) (Xf x4)) x4))
% Found (fun (x4:fofType)=> ((eq_ref Prop) (f x4))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eta_expansion0000:=(eta_expansion000 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->((ex fofType) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) x)))))
% Found (eta_expansion000 (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found ((eta_expansion00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found (((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType))) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType))) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)))) as proof of (P f)
% Found ((and_rect0 (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)))) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)))) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)))) as proof of (P f)
% Found eta_expansion0000:=(eta_expansion000 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->((ex fofType) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) x)))))
% Found (eta_expansion000 (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found ((eta_expansion00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found (((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType))) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType))) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)))) as proof of (P f)
% Found ((and_rect0 (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)))) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)))) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> ((((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)))) as proof of (P f)
% Found eq_ref000:=(eq_ref00 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))
% Found (eq_ref00 (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found ((eq_ref0 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType))) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType))) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)))) as proof of (P f)
% Found ((and_rect0 (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)))) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)))) as proof of (P f)
% Found (fun (x1:((and (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))))=> (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0))))=> (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType))))) as proof of (P f)
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Instantiate: f:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))):(fofType->Prop)
% Found (fun (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3) as proof of (P f)
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3) as proof of (((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f))
% Found (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3) as proof of ((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->(P f)))
% Found (and_rect00 (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3)) as proof of (P f)
% Found ((and_rect0 (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3)) as proof of (P f)
% Found (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3)) as proof of (P f)
% Found (fun (x1:((and (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))))=> (((fun (P0:Type) (x2:((forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))->(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->P0)))=> (((((and_rect (forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) ((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))) P0) x2) x1)) (P f)) (fun (x2:(forall (Xp:((fofType->fofType)->Prop)), (((and (Xp Xf)) (forall (Xj:(fofType->fofType)), ((Xp Xj)->(Xp (fun (Xx:fofType)=> (Xf (Xj Xx)))))))->(Xp x0)))) (x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))=> x3))) as proof of (P f)
% Found eq_ref000:=(eq_ref00 (ex fofType)):(((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))->((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))))
% Found (eq_ref00 (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found ((eq_ref0 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found (((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (ex fofType)) as proof of (P (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found eq_ref00:=(eq_ref0 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Found (eq_ref0 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) (fun (x:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) x))))
% Found (eta_expansion_dep00 (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) b)
% Found ((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy)))) 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 (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eq_ref00:=(eq_ref0 ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))):(((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))))))
% Found (eq_ref0 ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found ((eq_ref Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found ((eq_ref Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found ((eq_ref Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 (Xf x2)):(((eq fofType) (Xf x2)) (Xf x2))
% Found (eq_ref0 (Xf x2)) as proof of (((eq fofType) (Xf x2)) b)
% Found ((eq_ref fofType) (Xf x2)) as proof of (((eq fofType) (Xf x2)) b)
% Found ((eq_ref fofType) (Xf x2)) as proof of (((eq fofType) (Xf x2)) b)
% Found ((eq_ref fofType) (Xf x2)) as proof of (((eq fofType) (Xf x2)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) x2)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x2)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x2)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x2)
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Instantiate: b:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))):(fofType->Prop)
% Found x3 as proof of (P b)
% Found eq_ref00:=(eq_ref0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (eq_ref0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found eq_ref00:=(eq_ref0 (Xf x0)):(((eq fofType) (Xf x0)) (Xf x0))
% Found (eq_ref0 (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (Xf x0))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (Xf x0))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (Xf x0))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (Xf x0))
% Found eq_ref00:=(eq_ref0 x0):(((eq fofType) x0) x0)
% Found (eq_ref0 x0) as proof of (((eq fofType) x0) b)
% Found ((eq_ref fofType) x0) as proof of (((eq fofType) x0) b)
% Found ((eq_ref fofType) x0) as proof of (((eq fofType) x0) b)
% Found ((eq_ref fofType) x0) as proof of (((eq fofType) x0) b)
% Found eq_ref00:=(eq_ref0 ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))):(((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))))))
% Found (eq_ref0 ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found ((eq_ref Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found ((eq_ref Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found ((eq_ref Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Instantiate: f:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))):(fofType->Prop)
% Found x3 as proof of (P f)
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Instantiate: f:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))):(fofType->Prop)
% Found x3 as proof of (P f)
% Found eq_ref00:=(eq_ref0 (Xf x2)):(((eq fofType) (Xf x2)) (Xf x2))
% Found (eq_ref0 (Xf x2)) as proof of (((eq fofType) (Xf x2)) b)
% Found ((eq_ref fofType) (Xf x2)) as proof of (((eq fofType) (Xf x2)) b)
% Found ((eq_ref fofType) (Xf x2)) as proof of (((eq fofType) (Xf x2)) b)
% Found ((eq_ref fofType) (Xf x2)) as proof of (((eq fofType) (Xf x2)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) x2)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x2)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x2)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x2)
% Found eq_ref00:=(eq_ref0 (f x6)):(((eq Prop) (f x6)) (f x6))
% Found (eq_ref0 (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found ((eq_ref Prop) (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found ((eq_ref Prop) (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found (fun (x6:fofType)=> ((eq_ref Prop) (f x6))) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found (fun (x6:fofType)=> ((eq_ref Prop) (f x6))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eq_ref00:=(eq_ref0 (f x6)):(((eq Prop) (f x6)) (f x6))
% Found (eq_ref0 (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found ((eq_ref Prop) (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found ((eq_ref Prop) (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found (fun (x6:fofType)=> ((eq_ref Prop) (f x6))) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found (fun (x6:fofType)=> ((eq_ref Prop) (f x6))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Instantiate: b:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))):(fofType->Prop)
% Found x3 as proof of (P b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) (fun (x:fofType)=> (((eq fofType) (Xf x)) x)))
% Found (eta_expansion00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P0):((P0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->(P0 (fun (x:fofType)=> (((eq fofType) (Xf x)) x))))
% Found (eta_expansion_dep000 P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P0):((P0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->(P0 (fun (x:fofType)=> (((eq fofType) (Xf x)) x))))
% Found (eta_expansion_dep000 P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eq_ref00:=(eq_ref0 (Xf x0)):(((eq fofType) (Xf x0)) (Xf x0))
% Found (eq_ref0 (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found ((eq_ref fofType) (Xf x0)) as proof of (((eq fofType) (Xf x0)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x0)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (Xf x0))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (Xf x0))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (Xf x0))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (Xf x0))
% Found eq_ref00:=(eq_ref0 x0):(((eq fofType) x0) x0)
% Found (eq_ref0 x0) as proof of (((eq fofType) x0) b)
% Found ((eq_ref fofType) x0) as proof of (((eq fofType) x0) b)
% Found ((eq_ref fofType) x0) as proof of (((eq fofType) x0) b)
% Found ((eq_ref fofType) x0) as proof of (((eq fofType) x0) b)
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Instantiate: f:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))):(fofType->Prop)
% Found x3 as proof of (P f)
% Found x3:((ex fofType) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))))
% Instantiate: f:=(fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) ((eq fofType) Xy))):(fofType->Prop)
% Found x3 as proof of (P f)
% Found eq_ref00:=(eq_ref0 (f x6)):(((eq Prop) (f x6)) (f x6))
% Found (eq_ref0 (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found ((eq_ref Prop) (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found ((eq_ref Prop) (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found (fun (x6:fofType)=> ((eq_ref Prop) (f x6))) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found (fun (x6:fofType)=> ((eq_ref Prop) (f x6))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eq_ref00:=(eq_ref0 (f x6)):(((eq Prop) (f x6)) (f x6))
% Found (eq_ref0 (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found ((eq_ref Prop) (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found ((eq_ref Prop) (f x6)) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found (fun (x6:fofType)=> ((eq_ref Prop) (f x6))) as proof of (((eq Prop) (f x6)) (((eq fofType) (Xf x6)) x6))
% Found (fun (x6:fofType)=> ((eq_ref Prop) (f x6))) as proof of (forall (x:fofType), (((eq Prop) (f x)) (((eq fofType) (Xf x)) x)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found eq_ref00:=(eq_ref0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (eq_ref0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eq_ref (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))):(((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) (fun (x:fofType)=> (((eq fofType) (Xf x)) x)))
% Found (eta_expansion00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found ((eta_expansion0 Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) b)
% Found (((eta_expansion fofType) Prop) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) as proof of (((eq (fofType->Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) 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 (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found ((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xy:fofType)=> (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) Xy) Xy0)))))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P0):((P0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->(P0 (fun (x:fofType)=> (((eq fofType) (Xf x)) x))))
% Found (eta_expansion_dep000 P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P0):((P0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->(P0 (fun (x:fofType)=> (((eq fofType) (Xf x)) x))))
% Found (eta_expansion_dep000 P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P0):((P0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->(P0 (fun (x:fofType)=> (((eq fofType) (Xf x)) x))))
% Found (eta_expansion_dep000 P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P0):((P0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->(P0 (fun (x:fofType)=> (((eq fofType) (Xf x)) x))))
% Found (eta_expansion_dep000 P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P0):((P0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->(P0 (fun (x:fofType)=> (((eq fofType) (Xf x)) x))))
% Found (eta_expansion_dep000 P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P0):((P0 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->(P0 (fun (x:fofType)=> (((eq fofType) (Xf x)) x))))
% Found (eta_expansion_dep000 P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((eta_expansion_dep00 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found (((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found ((((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))) P0) as proof of (P1 (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))
% Found eq_ref00:=(eq_ref0 (Xf x4)):(((eq fofType) (Xf x4)) (Xf x4))
% Found (eq_ref0 (Xf x4)) as proof of (((eq fofType) (Xf x4)) b)
% Found ((eq_ref fofType) (Xf x4)) as proof of (((eq fofType) (Xf x4)) b)
% Found ((eq_ref fofType) (Xf x4)) as proof of (((eq fofType) (Xf x4)) b)
% Found ((eq_ref fofType) (Xf x4)) as proof of (((eq fofType) (Xf x4)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) x4)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x4)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x4)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) x4)
% Found eq_ref00:=(eq_ref0 ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))):(((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy))))))
% Found (eq_ref0 ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found ((eq_ref Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found ((eq_ref Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found ((eq_ref Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) as proof of (((eq Prop) ((fofType->fofType)->(((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))->((ex fofType) (fun (Xy:fofType)=> (((eq fofType) (Xf Xy)) Xy)))))) b)
% Found eq_ref000:=(eq_ref00 P0):((P0 (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x3) Xy0))))->(P0 (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x3) Xy0)))))
% Found (eq_ref00 P0) as proof of (P1 (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x3) Xy0))))
% Found ((eq_ref0 (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x3) Xy0)))) P0) as proof of (P1 (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x3) Xy0))))
% Found (((eq_ref Prop) (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x3) Xy0)))) P0) as proof of (P1 (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x3) Xy0))))
% Found (((eq_ref Prop) (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x3) Xy0)))) P0) as proof of (P1 (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x3) Xy0))))
% Found eq_ref000:=(eq_ref00 P0):((P0 (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> (((eq fofType) x3) Xy0))))->(P0 (((eq (fofType->Prop)) (fun (Xx:fofType)=> (((eq fofType) (x0 Xx)) Xx))) (fun (Xy0:fofType)=> 
% EOF
%------------------------------------------------------------------------------